Lesetipp: Simpler 0day erlaubte jahrelang Vollzugriff auf iPhones

Der Demo-Exploit zerlegte Apples Rechtemanagement komplett und passte in einen Tweet.

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

Rechte, die in komplexen XML-Strukturen festgelegt sind und von 4 verschiedenen Parsern jeweils ein wenig anders interpretiert werden – was kann da schon schiefgehen? Der Sicherheitsforscher Siguza erklärt, wie sich eine iOS-App damit jahrelang auf einem iPhone quasi beliebige Rechte verschaffen kann.

Grundlage der zufällig entdeckten Schwachstelle ist das unterschiedliche Verhalten der Parser, die die Rechtebeschreibungen in plist-Dateien auswerten, wenn sie auf eigentlich ungültige Auszeichnungen stoßen. Der zuständige Wächter interpretiert die komplette Auszeichnung

<!---><!--> 
...
<!-- -->

als einen harmlosen Kommentar, den er einfach ignorieren kann. Die letztlich für die Zuteilung der Rechte zuständige Instanz hingegen ignoriert nur die beiden Zeilen mit den Kommentarzeichen. Sie akzeptiert folglich die Anweisungen dazwischen, die etwa besagen, dass die App nicht in eine Sandbox eingesperrt werden muss (com .apple.private.security.no-container).

Siguza entdeckte diesen trivialen Fehler quasi zufällig vor etwa 3 Jahren und nutzte ihn seither für viele Forschungsprojekte an iPhone-Innereien. Offenbar verzichtete er dafür sogar auf das von Apple ausgelobte Bug-Bounty. Wie die Kollegen von Mac&i bereits berichteten, hat Apple diese Lücke bislang nur in den Beta-Versionen von iOS 13.5 beseitigt. Siguza beschreibt die konkreten Details seiner Entdeckung in einem Blog-Beitrag namens “Psychic Paper”. Es handelt sich dabei um eine Referenz an Dr.Who, dessen Gegenüber beim Vorweisen dieses Dokuments immer das sah, was er selbst erwartete.

Update 15:00, 7.5.2020: Angabe der gefixten iOS-Version korrigiert; die aktuelle Version 13.4.1 ist offenbar noch anfällig.

(ju)