Original-URL des Artikels: https://www.golem.de/news/shellshock-alle-bash-luecken-gepatcht-1410-109638.html    Veröffentlicht: 06.10.2014 10:22    Kurz-URL: https://glm.io/109638

Shellshock

Alle Bash-Lücken gepatcht

Die jüngsten Patches für Bash beheben jetzt alle Lücken im Funktionsparser, die zu Shellshock und diversen Varianten geführt haben. Sicherheitskritisch sind die letzten Updates jedoch nicht mehr.

Der Bash-Entwickler Chet Ramey hat neue Versionen herausgegeben, die nun sämtliche Fehler beheben, die im Zusammenhang mit Shellshock bekannt geworden sind. Für Bash 4.3 steht das Patchlevel 030 bereit, für Bash 4.2 das Patchlevel 053. Auch für diverse ältere Bash-Versionen stehen Updates bereit.

Nach dem Bekanntwerden der Bash-Sicherheitlsücke Shellshock war schnell klar, dass der ursprüngliche Patch nicht alle Fehler beheben würde. Inzwischen sind insgesamt sechs Sicherheitslücken im Parser von Bash aufgetaucht. Besonders die letzte von Michal Zalewski entdeckte Lücke sorgte für Aufsehen, denn sie lässt sich genauso leicht wie die ursprüngliche Shellshock-Lücke ausnutzen.

Sicherheitskritisch sind die jüngsten Patches nicht mehr. Nachdem klar wurde, dass der Funktionsparser von Bash mehrere Probleme hat, wurde von Redhat-Entwickler Florian Weimer ein Patch erstellt, der den Import von Funktionen nur noch mit einem festen Pre- und Suffix erlaubt. Dieser Patch oder Varianten davon wurden inzwischen von fast allen Linux-Distributionen und von OS X übernommen. Auch die offiziellen Bash-Releases enthalten eine Variante dieses Patches.

Ursprünglich konnte man in Bash Funktionen einfach importieren, indem man eine beliebige Variable mit der Definition der Funktion füllte. Das sah beispielsweise so aus:

env x="() { echo test;}" bash -c x

Mit einer neuen Bash-Version ist das nicht mehr möglich, die Funktionsvariable muss mit BASH_FUNC_ beginnen und mit %% enden:

env "BASH_FUNC_x%%"="() { echo test; }" bash -c x

Durch diese Prefix-Variante sind die Lücken im Funktionsparser nur noch als gewöhnliche, harmlose Bugs anzusehen, von denen kein Sicherheitsrisiko ausgeht. Behoben wurden sie nun trotzdem alle.

Vom Autor dieses Artikels wurde ein Testscript namens bashcheck erstellt, welches Bash auf alle sechs bekannten Lücken testet. Das Skript überprüft auch, ob der wichtige Prefix/Suffix-Patch installiert ist.  (hab)


Verwandte Artikel:
Creators Update: Die meisten Linux-Entwickler-Tools laufen auf Windows   
(12.04.2017, https://glm.io/127280 )
OS X: Apple liefert Patch für Shellshock   
(30.09.2014, https://glm.io/109542 )
ROBOT-Angriff: Arbeitsagentur nutzt uralte Cisco-Geräte   
(09.03.2018, https://glm.io/133258 )
Shellshock: Immer mehr Lücken in Bash   
(27.09.2014, https://glm.io/109483 )
LLVM 6.0: Clang bekommt Maßnahme gegen Spectre-Angriff   
(09.03.2018, https://glm.io/133241 )

© 1997–2021 Golem.de, https://www.golem.de/