Sicherheitsanfälligkeit im HTTP-Server muhttpd, die den Zugriff auf Dateien außerhalb des Arbeitsverzeichnisses ermöglicht

Im HTTP-Server muhttpd, der hauptsächlich in Routern und Access Points eingesetzt wird, wurde eine Sicherheitsanfälligkeit (CVE-2022-31793) entdeckt, die einem nicht authentifizierten Angreifer ermöglicht, durch das Senden einer speziell gestalteten HTTP-Anfrage beliebige Dateien herunterzuladen, abhängig von den Berechtigungen, unter denen der HTTP-Server ausgeführt wird (in vielen Geräten wird muhttpd mit Root-Rechten gestartet). Beispielsweise kann ein Angreifer auf Dateien mit Passwörtern, WLAN-Konfigurationen, Verbindungseinstellungen zum Anbieter und privaten Schlüsseln zugreifen.

Das Problem wird durch einen Fehler bei der Verarbeitung des Pfades in der Anfrage verursacht, wodurch Dateien außerhalb des Root-Verzeichnisses des Webservers angesprochen werden können. Der Angriff besteht darin, am Anfang des Pfades ein beliebiges zusätzliches Zeichen anzugeben, das weder Punkt, Slash noch Fragezeichen ist. Zum Beispiel reicht es aus, für den Zugriff auf die Datei /etc/hosts die Anfrage „GET a/etc/hosts“ oder „GET a/etc/hosts“ zu senden (printf „GET b/etc/hosts\n\n“ | nc server port).

Der Grund für das angegebene Verhalten liegt darin, dass die angeforderte Datei mit dem Befehl „open(&req->filename[1], O_RDONLY)“ geöffnet wird, nachdem die Funktion chdir() ausgeführt wurde, um zum Root-Verzeichnis zu wechseln. Webserver. Das Angeben von &req->filename[1] führt dazu, dass das erste Zeichen des Pfades ignoriert wird (die Entwickler gingen davon aus, dass das erste Zeichen immer „/“ ist). Bei der Anfrage „GET /etc/hosts“ wird der Server versuchen, die Datei unter dem relativen Pfad „etc/hosts“ zu öffnen. Wenn jedoch zu Beginn ein zusätzliches Zeichen angegeben wird („GET a/etc/hosts“), wird der nachfolgende Pfad vollständig verarbeitet.

Das Problem besteht seit der ersten Version von muhttpd und wurde in der Version 1.1.7 behoben. Die Problemstellung wurde bei Geräten, die muhttpd verwenden, in den Routern von SaskTel und Arris bestätigt. Möglicherweise kann das Problem auch in Geräten von AT&T, Frontier und Windstream auftreten. Bei der Einschränkung des Zugriffs auf den HTTP-Port nur für das interne Netzwerk kann ein Angriff aus dem externen Netzwerk mittels der Technik "DNS Rebinding" durchgeführt werden, die es ermöglicht, bei Besuch einer bestimmten Seite im Browser eine HTTP-Anfrage an einen Netzwerkport zu senden, der nicht direkt über das Internet erreichbar ist.

Quelle: opennet.ru

Erwerben 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