Schwachstelle im VFS-Kernel von Linux ermöglicht das Erhöhen von Privilegien

Im Filesystem Context API, das vom Linux-Kernel bereitgestellt wird, wurde eine Schwachstelle (CVE-2022-0185) entdeckt, die es einem lokalen Benutzer ermöglicht, root-Rechte im System zu erlangen. Der Forscher, der das Problem identifiziert hat, veröffentlichte eine Demonstration eines Exploits, der es erlaubt, Code mit root-Rechten auf Ubuntu 20.04 in der Standardkonfiguration auszuführen. Der Code des Exploits wird innerhalb einer Woche auf GitHub hochgeladen, nachdem die Distributionen ein Update mit einem Patch für die Schwachstelle veröffentlicht haben.

Die Schwachstelle befindet sich in der Funktion legacy_parse_param() in VFS und wird durch das Fehlen einer ordnungsgemäßen Überprüfung der maximalen Größe der Parameter verursacht, die von Dateisystemen bereitgestellt werden, die die API Filesystem Context nicht unterstützen. Wenn ein zu großer Parameter übergeben wird, kann es zu einem Überlauf einer Ganzzahl-Variable kommen, die zur Berechnung der Größe der zu schreibenden Daten verwendet wird – im Code gibt es eine Überprüfung auf einen Pufferüberlauf „if (len > PAGE_SIZE - 2 - size)“, die nicht greift, wenn der Wert von size größer als 4094 ist, aufgrund eines Ganzzahlüberlaufs (integer underflow; bei der Umwandlung von 4096 - 2 - 4095 in unsigned int ergibt sich 2147483648).

Der angegebene Fehler ermöglicht es, bei der Zugriff auf ein speziell konfiguriertes Image des Dateisystems einen Bufferüberlauf auszulösen und die darauf folgenden Kerndaten zu überschreiben. Um die Schwachstelle auszunutzen, sind Berechtigungen mit CAP_SYS_ADMIN erforderlich, d.h. Administratorrechte. Das Problem ist, dass ein unprivilegierter Benutzer in einem isolierten Container solche Berechtigungen erhalten kann, wenn die Unterstützung für Benutzer-Namespaces im System aktiviert ist. Zum Beispiel sind Benutzer-Namespaces standardmäßig in Ubuntu und Fedora aktiviert, jedoch nicht in Debian und RHEL (es sei denn, es werden Containerisolation-Plattformen verwendet).

Das Problem tritt ab Kernel-Version 5.1 auf und wurde in den gestrigen Updates 5.16.2, 5.15.16, 5.10.93, 5.4.173 behoben. Updates zur Behebung der Schwachstelle wurden bereits für RHEL, Debian, Fedora und Ubuntu veröffentlicht. Ein Fix ist aktuell noch nicht für Arch Linux, Gentoo, SUSE und openSUSE verfügbar. Als vorübergehende Schutzmaßnahme für Systeme, die keine Containerisolierung nutzen, kann der sysctl-Wert „user.max_user_namespaces“ auf 0 gesetzt werden: echo „user.max_user_namespaces=0“ > /etc/sysctl.d/userns.conf # sysctl -p /etc/sysctl.d/userns.conf

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster