Löcher in Apples Mac-OS-X-Sandkasten

Die für Mac-OS-X-Programme demnächst obligatorische Sandbox lässt sich über das Event-System relativ einfach austricksen, warnt Core Security.

In Pocket speichern vorlesen Druckansicht 116 Kommentare lesen
Lesezeit: 2 Min.

Die von Apple vordefinierten Sandbox-Profile wie das für "kein Netz" (no-network) lassen sich über passende Events relativ einfach austricksen, warnt die Sicherheitsfirma Core Security. Die Sandbox von Mac OS X erlaubt es, genau festzulegen, welche Ressourcen eine Anwendung nutzen darf – beziehungsweise was sie eben nicht darf. Das soll verhindern, dass etwa über eine Sicherheitslücke eingeschleuster Code unkontrolliert Schaden anrichten kann. Ab März 2012 will Apple nur noch Programme in den Mac App Store aufnehmen, die in einer Sandbox stecken.

Über das vordefinierte Profil "no-network" beispielsweise kann der Entwickler festlegen, dass das Programm keine Netzwerkfunktionen nutzen darf. Allerdings sind zumindest die vordefinierten Profile keineswegs wasserdicht. So demonstriert Core Security, wie man deren Restriktionen ganz einfach über eine Nachricht an eine andere Applikation umgehen kann. Konkret schicken sie im Rahmen der Open Scripting Architecture ein Apple Event an das "Terminal", das dieses veranlasst, ein Skript auszuführen.

osascript -e 'tell application "Terminal" to do script "..."'

Dieser Prozess läuft dann außerhalb der Sandbox, ist also nicht an deren Beschränkungen gebunden. Somit kann das Skript ohne weiteres auf das Netz zugreifen. Der Sicherheitsforscher Charlie Miller hat dies bereits 2008 sehr ähnlich für einige konkrete Anwendungen demonstriert. Daraufhin hat Apple offenbar in deren Profilen die Nutzung von Apple Events reglementiert. Die generischen Profile wie "no-network" enthalten jedoch keine solchen Einschränkungen.

Der App Sandbox Design Guide erklärt zwar, dass sich das Senden von Apple Events an beliebige Apps nicht mit der Sandbox verträgt. Ganz offensichtlich bedeutet das jedoch nicht, dass diese Einschränkung überwacht und durchgesetzt wird. Laut Core Security überlegt Apple nun, in der Dokumentation klarer herauszustellen, dass sich die Einschränkungen der vordefinierten Profile nur auf den jeweiligen Prozess beziehen. (ju)