In der Bash wurden kürzlich fünf Schwachstelle binnen weniger Tage gefunden (CVE-2014-6271,CVE-2014-6277,CVE-2014-7169,CVE-2014-7186,CVE-2014-7187). Sie haben unter anderem zur Folge, dass ein Angreifer Befehle mit höheren Rechten ausführen kann. Das Problem tritt beim Verarbeiten von Umgebungsvariablen auf. Umgebungsvariablen kommen bei zahlreichen Anwendungen ständig zum Einsatz, weshalb die Schwachstelle auch so kritisch ist.
Beispielsweise lassen sich die Umgebungsvariable COLOR und NAME wie folgt definieren und verwenden:
COLOR=blue
NAME=John
echo “$NAME’s favorite color is $COLOR”
Werden diese Befehle in der Bash ausgeführt erscheit der Text:
»John’s favorite color is blue«
Umgebungsvariablen lassen sich aber auch noch kompakter verwenden:
»env COLOR=red bash -c ‘echo My favorite color is $COLOR’«
Diese Zeile liefert dann folgenden Text:
»My favorite color is red«
Der »env« Befehl setzt hierbei die Umgebungsvariable COLOR. Das Sicherheitslücke in der Bash besteht nun darin, dass beim Verarbeiten von Umgebungsvariablen mit
»env« ein Fehler auftreten kann, so dass auf betroffenen Systemen die Anweisung
»env COLOR='() { :;}; echo vulnerable’ bash -c “echo I hate colors”«
den Text
vulnerable
I hate colors
liefert. Das seltsame hierbei ist, dass die echo Anweisung gar nicht auf die
COLOR Umgebungsvarbiable zugreift und trotzdem der vulnerable String ausgegeben
wurde. Auf korrigierten oder nicht anfälligen Systemem würde die obige
Anweisung lediglich
»I hate colors«
ausspucken.
Da die Bash auch bei vielen Webdiensten für dynamische Inhaltet zum Einsatz kommt, kann diese Schwachstelle auch von entfernten Angreifern ausgenutzt werden. Sehr
häufig wird die Bash dazu verwendet andere Programme aufzurufen. Parameter für die anderen Programme werden dabei oft als Umgebungsvariablen weitergegeben und genau darin liegt die Brisanz der nun gefunden Sicherheitslücke.
Die Attacke ist sehr einfach auszunutzen und betrifft praktisch alle derzeit verwendeten Systeme. Botnets, welche basierende auf dieser Schwachstelle
konstruiert wurden, kommen aktuell für verteilte Denial-of-Service-Attacken zum Einsatz.
Betroffen von der Schwachstelle scheinen alle Versionen bis 4.3 zu sein. Das heißt, diese Sicherheitslücke reicht bis zu 25 Jahre zurück.
