(UPDATE) – #BASH auf #OSX 10.9.5 #Shellshock

Himmel! Bash! Naja, bei Apple dauert es ja im Regelfall etwas länger. So wird es einige geben, welche sich mit bash beschäftigt haben und aufgescheucht sind. Es ist jedoch relativ leicht zu fixen. Alle Infos zum Thema gibt’s hier und hier. Da es in recht kurzer Zeit wohl mehrere Updates geben wird, da die aktuelle Version nach Meinung vieler ebenfalls löchrig ist, wie ein Sieb, sollte man sich ggf. doch um eine Verbesserungsmöglichkeit selbst kümmern. Hier steht wie’s geht


Update 29.09.2014: Apple hat ein Sicherheitsupdate verfügbar gemacht: Klick. Nachfolgende Schritte sind nicht mehr notwendig.

Zunächst mal testen. Also terminal öffnen und:

[framed_box style=“info“]
env x='() { :;}; echo vulnerable‘ bash -c ‚echo hello‘
env X='() { (a)=>\‘ sh -c „echo date“; cat echo
[/framed_box]
Ein Hallo oder ein Datum sollte da nicht zu sehen sein…
Falls nein: ->Goto #Blogpostende Falls ja: Besorgt Euch XCode von Apple -> Klick
 
Anschließend marschiert Ihr mit einem administrativen Benutzer in’s Terminal und kompiliert Euch Bash neu, d.h. Ihrführt wie folgt aus:

[framed_box style=“info“]
mkdir bash-fix
cd bash-fix
curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf –
cd bash-92/bash-3.2
curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0
cd ..
xcodebuild
sudo cp /bin/bash /bin/bash.old
sudo cp /bin/sh /bin/sh.old
build/Release/bash –version # GNU bash, version 3.2.52(1)-release
build/Release/sh –version # GNU bash, version 3.2.52(1)-release
sudo cp build/Release/bash /bin
sudo cp build/Release/sh /bin
[/framed_box]
Wieder testen:
[framed_box style=“info“]
env x='() { :;}; echo vulnerable‘ bash -c ‚echo hello‘
env X='() { (a)=>\‘ sh -c „echo date“; cat echo
[/framed_box]
Alten Müll wegräumen:
[framed_box style=“info“]
sudo chmod a-x /bin/bash.old /bin/sh.old
[/framed_box]
#Blogpostende
Kuh vom Eis.