TCC-Absicherung in macOS "komplett geknackt"

Einem Sicherheitsexperten ist es gelungen, Apples eigentlich drakonische "Entitlement Checks" zu umgehen. Das Problem wurde gepatcht.

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 111 Beiträge

Der TCC-Daemon bot Angriffsfläche.

(Bild: Matt Shockley)

Von
  • Ben Schwan

Erneut Sicherheitsprobleme im Rahmen einer macOS-Funktion, die eigentlich dafür sorgen soll, dass Apps nicht einfach tun und lassen können, was sie wollen: Einem Security-Forscher ist es gelungen, das Framework Transparency, Consent, and Control (TCC) zu umgehen, über das Anwendungen eigentlich sogenannte Entitlements anfordern müssen, um auf sensible Systembereiche zuzugreifen. Dank TCC wird dem Nutzer dann eine Abfrage präsentiert, ob er das überhaupt zulassen möchte.

Wie der Sicherheitsexperte Matt Shockley festgestellt hat, war es bis vor kurzem erstaunlich einfach möglich, die Funktion zu umgehen. Dabei schaute er sich den Daemon an, der TCC-Nachfragen verwaltet und diese mit einer SQLite3-Datenbank abgleicht, die besagte Entitlements enthält.

Ein Bug sorgte nun dafür, dass sich der TCC-Daemon selbst dazu missbrauchen ließ, beliebige Entitlements zu schreiben. Shockley stellte fest, dass Apple den Daemon mittels launchd in der User-Domäne laufen lässt, was wiederum eine Veränderung der $HOME-Umgebungsvariable zuließ.

Ihm gelang es damit, auf ein unter seiner Kontrolle stehendes Verzeichnis zu zeigen, den TCC-Daemon neu zu starten und schließlich dessen Datenbank beliebig zu manipulieren. Zudem stellte Shockley fest, dass er TCC komplett zurücksetzen konnte. Eigentlich sollte die TCC-Datenbank durch fehlende Entitlement sowie Apples Dateienschutz SIP gar nicht erst beschreibbar sein.

Shockley meldete das Problem im Februar an Apples Produktsicherheitsteam, das sich den Fehler ansah und im April mitteilte, einen Fix vorzubereiten. Dieser erschien dann im Rahmen des Security-Update 2020-004, das am 15. Juli publiziert wurde. Die Fehlerbehebung ist ein weiterer guter Grund, bei macOS auf dem aktuellen Stand der Sicherheitsaktualisierungen zu bleiben. (bsc)