Remote-Sicherheitsanfälligkeit im Linux-Kernel, die beim Einsatz des Protokolls TIPC auftritt

Im Linux-Kernel-Modul, das das Netzwerkprotokoll TIPC (Transparent Inter-process Communication) unterstützt, wurde eine Sicherheitsanfälligkeit (CVE-2022-0435) entdeckt. Diese ermöglicht potenziell die Ausführung eigenen Codes auf Kernel-Ebene durch das Senden eines speziell gestalteten Netzwerkpakets. Das Problem betrifft nur Systeme mit dem geladenen Kernel-Modul tipc.ko und einem konfigurierten TIPC-Stack, der normalerweise in nicht spezialisierten Linux-Distributionen nicht aktiviert ist.

Es wird festgestellt, dass beim Kompilieren des Kernels im Modus "CONFIG_FORTIFY_SRC=y" (verwendet in RHEL), das zusätzliche Grenzkontrollen in die Funktion memcpy() einführt, die Ausnutzung auf einen Absturz des Systems (Kernel gerät in einen Panic-Zustand) beschränkt wird. Wenn keine zusätzlichen Kontrollen durchgeführt werden und Informationen über die Canary-Tags, die zum Schutz des Stacks verwendet werden, entweichen, kann das Problem für die remote Ausführung von Code mit Kernel-Rechten ausgenutzt werden. Die Forschenden, die das Problem entdeckt haben, geben an, dass die Ausnutzung trivial ist und nach der umfassenden Behebung der Sicherheitsanfälligkeit in den Distributionen offenbart wird.

Die Schwachstelle wird durch einen Stack-Überlauf verursacht, der bei der Verarbeitung von Paketen auftritt, in denen die Anzahl der Teilnehmerknoten 64 übersteigt. Nach Abschluss des Transfers kann die Domain auf unser Hosting gerichtet werden.Zur Speicherung der Knotenparameter im Modul tipc.ko wird ein fester Array «u32 members[64]» verwendet. Bei der Verarbeitung der im Paket angegebenen Knotennummer erfolgt jedoch keine Überprüfung des Wertes «member_cnt», was die Verwendung von Werten über 64 ermöglicht und zu einer kontrollierten Überschreibung von Daten im Speicherbereich führt, der nach der Struktur «dom_bef» im Stack folgt.

Der Fehler, der zur Schwachstelle führt, wurde am 15. Juni 2016 eingeführt und wurde Teil des Linux-Kernels 4.8. Die Schwachstelle wurde in den Kernel-Versionen 5.16.9, 5.15.23, 5.10.100, 5.4.179, 4.19.229, 4.14.266 und 4.9.301 behoben. In den Kernen der meisten Distributionen bleibt das Problem jedoch vorerst ungelöst: RHEL, Debian, Ubuntu, SUSE, Fedora, Gentoo, Arch Linux.

Das TIPC-Protokoll wurde ursprünglich von Ericsson entwickelt und dient der Organisation der interprozessualen Kommunikation in einem Cluster. Es wird hauptsächlich an Knoten innerhalb von Clustern aktiviert. TIPC kann sowohl über Ethernet als auch über UDP (Netzwerkport 6118) betrieben werden. Wenn es über Ethernet läuft, kann ein Angriff aus dem lokalen Netzwerk erfolgen, während bei der Nutzung von UDP Angriffe aus dem globalen Netzwerk möglich sind, sofern der Port nicht durch eine Firewall geschützt ist. Auch ein nicht privilegierter lokaler Benutzer des Hosts kann einen Angriff durchführen. Für die Aktivierung von TIPC ist das Laden des Kernelmoduls tipc.ko sowie die Konfiguration der Bindung an das Netzwerkinterface mithilfe von netlink oder dem Dienstprogramm tipc erforderlich.

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