macOS: Sandbox-Ausbruch per Editor

In TextEdit steckt ein Bug, mit dem böswillige Apps eigentlich verbotene Kommandos ausführen können.

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 36 Beiträge
macOS: Sandbox-Ausbruch per Editor

TextEdit auf dem Mac.

(Bild: Apple)

Von
  • Ben Schwan

Apples traditionsreicher Texteditor TextEdit, den es seit mittlerweile 23 Jahren gibt, enthält eine Lücke, die von Malware zum Ausbrechen aus der macOS-Sandbox genutzt werden kann.

Das hat der Entwickler Jeff Johnson entdeckt. Der Fehler ist bis hin zur aktuellen Catalina-Version 10.15.2 ausnutzbar, steckt aber auch in früheren macOS-Varianten wie Mojave.

Die Sandbox soll eigentlich dafür sorgen, dass Anwendungen in ihren Möglichkeiten beschränkt werden, auf Systemdaten zuzugreifen, damit bestimmte Sicherheitsprobleme nicht erst entstehen. Apple macht deren Nutzung für App-Store-Anwendungen seit längerem zur Pflicht. Normalerweise sorgt die Sandbox dafür, dass eine von einer App geschriebene Datei ein sogenanntes Quarantäne-Flag erhält. Damit kann eine Sandbox-App beispielsweise nicht einfach ein böswilliges Shell-Skript erstellen, dass dann außerhalb der Sandbox ausgeführt werden könnte.

Wie Johnson nun demonstriert, lässt sich TextEdit dazu verwenden, solche Quarantäne-Flags zu entfernen, ein Shell-Skript mitunter "zu waschen". In einer Beispiel-App zeigt Johnson den Prozess: Sie öffnet ein Shell-Skript in TextEdit und nutzt dann eine Apple-Events-Permission, um TextEdit zu befehlen, diese zu speichern. Mit dem Speichern wird dann auch das Quarantäne-Flag entfernt, was dem Skript erlaubt, außerhalb der Sandbox ausgeführt zu werden. "Dies sollte auf den Nutzer sehr harmlos wirken, weil niemand denkt, dass TextEdit gefährlich ist." Entsprechend dürften viele Nutzer einer App erlauben, TextEdit zu kontrollieren, weil sie es nicht als Gefährdung sehen.

Johnson hat den Fehler Apple gemeldet – dort geht man aktuell allerdings nicht davon aus, dass er "tatsächliche Sicherheitsauswirkungen" habe. Auch eine Bug Bounty wollte der Konzern nicht zahlen. Der Bug bleibt also weiterhin in TextEdit bestehen.

Johnson warnt außerdem vor einem weiteren Problem. Verschiedene Apps, darunter beliebte Tools wie der FTP-Client Transmit oder der Texteditor BBEdit, besäßen ein spezielles Entitlement, mit dem die Apps aus ihrer eigenen Sandbox ausbrechen könnten. Nutzer müssten dies nicht explizit freigeben. Das Entitlement nennt sich "com.apple.security.files.user-selected.executable", sei aber eben nicht vom User abwählbar. (bsc)