/bin/bash. Das Unix-Programm bash ist angreifbar. Über Umgebungsvariablen kann unter Umständen beliebiger Code zur Ausführung gebracht werden. Die technische Warnung ist veröffentlicht und es wird mit Schadprogrammen zu rechnen sein, die die Lücke für sich nutzen werden.
Dabei befindet sich die jetzt als Shellshock bezeichnete Sicherheitslücke seit 22 Jahren im Programm bash. Betroffen sind Versionen von 1.13 bis 4.3. OS X 10.9 Mavericks kommt mit 3.2.51. Mountain Lion mit 3.2.48.
Ob man selbst angreifbar ist, findet die folgende Befehlszeile im Terminal heraus:
env x='() { :;}; echo vulnerable' bash -c 'echo hello'
Auch wenn nur wenige OS-X-Nutzer betroffen sein könnten, und Apple bereits an einer entsprechenden Sicherheitsaktualisierung arbeitet, so sollte man nicht untätig sein. Die Lücke lässt sich nämlich leicht schließen.
Man braucht lediglich Homebrew, einen Paketmanager für OS X, und die Command Line Tools aus dem Apple-Entwicklerprogramm, für das man sich kostenlos registrieren kann. Das CLT-Paket gibt es für Montain Lion (10.8), Mavericks (10.9) und Yosemite (10.10).
Die Anleitung:
- Command Line Tools installieren
- Homebrew installieren
- – mit Homebrew ein neues Bash laden
- Neues Bash verlinken
- Fertig
Homebrew installiert man als OS-X-User mit Admin-Rechten mit dem Terminal-Befehl:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Anschließend den Anweisungen während der Homebrew-Installation folgen.
Sollte Homebrew bereits vorhanden sein, kann man mit
brew update
und
brew upgrade bash
eine neue Bash-Shell laden.
Da sich Homebrew eine eigene Bash installiert, muss man diese erst laden:
brew install bash
Anschließend verschiebt man die alte Bash:
sudo mv /bin/bash /bin/bash.nix
Und schließlich lässt man /bin/bash auf die eigene Bash-Shell zeigen:
sudo ln -s /usr/local/Cellar/bash/4.3.26/bin/bash /bin/bash
Alternativ kann man die Homebrew-Bash nach /bin verschieben (mv) oder kopieren (cp):
sudo cp /usr/local/Cellar/bash/4.3.26/bin/bash /bin/bash
Im nächsten neuen Terminal-Fenster ist die neue und sichere Bash-Shell aktiv. Die Version prüft man mit dem Befehl:
bash --version