Forscher von Claroty und JFrog haben die Ergebnisse eines Sicherheitsaudits des BusyBox-Pakets veröffentlicht, das häufig in eingebetteten Geräten verwendet wird und eine Reihe von Standard-UNIX-Dienstprogrammen in einer einzigen ausführbaren Datei angeboten. Bei der Prüfung wurden 14 Schwachstellen festgestellt, die bereits in der Augustversion BusyBox 1.34 behoben wurden. Fast alle Probleme sind harmlos und fragwürdig hinsichtlich ihrer Anwendbarkeit in realen Angriffen, da sie die Ausführung von Dienstprogrammen mit extern übergebenen Argumenten erfordern.
Besonders hervorzuheben ist die Schwachstelle CVE-2021-42374, die einen Denial-of-Service bei der Verarbeitung von speziell gestalteten komprimierten Dateien durch das Dienstprogramm unlzma auslösen kann. Bei einer Kompilierung mit der Option CONFIG_FEATURE_SEAMLESS_LZMA können auch andere Komponenten von BusyBox, einschließlich tar, unzip, rpm, dpkg, lzma und man, betroffen sein.
Die Schwachstellen CVE-2021-42373, CVE-2021-42375, CVE-2021-42376 und CVE-2021-42377 könnten zu einem Serviceausfall führen, erfordern jedoch das Ausführen der Tools man, ash und hush mit von Angreifern festgelegten Parametern. Die Schwachstellen von CVE-2021-42378 bis CVE-2021-42386 betreffen das Tool awk und könnten potenziell zur Ausführung von Code führen, wobei der Angreifer jedoch einen bestimmten Musterabgleich in awk erreichen muss (awk muss mit Übergabe von Optionen, die vom Angreifer stammen, in der ersten Argumentzeile gestartet werden).
Zusätzlich kann die Schwachstelle (CVE-2021-43523) in den Bibliotheken uclibc und uclibc-ng erwähnt werden, die damit zusammenhängt, dass bei Aufrufen der Funktionen gethostbyname(), getaddrinfo(), gethostbyaddr() und getnameinfo() keine Überprüfung und Bereinigung des vom DNS-Server zurückgegebenen Domänennamens durchgeführt werden. Beispielsweise kann ein kompromittierter DNS-Server eine Antwort auf eine bestimmte Auflösungsanfrage zurückgeben, die Hosts in der Form „.attacker.com“ enthält, die ohne Bereinigung von einer Anwendung im Web-Interface angezeigt werden können. Das Problem wurde in der Version uclibc-ng 1.0.39 durch Hinzufügen von Code zur Überprüfung der Rückgabewerte behoben. von Domainnamen, umgesetzt nach dem Vorbild von Glibc.
Quelle: opennet.ru
