1 Punkte von GN⁺ 2024-09-14 | 1 Kommentare | Auf WhatsApp teilen
  • In macOS Calendar wurde eine Zero-Click-Schwachstelle entdeckt
  • Ein Angreifer kann innerhalb der Sandbox-Umgebung von Calendar beliebige Dateien hinzufügen oder löschen
  • In Kombination mit der Ausführung von Schadcode und der Umgehung von Schutzmechanismen können sensible iCloud-Photos-Daten von Nutzern kompromittiert werden
  • Apple hat alle Schwachstellen zwischen Oktober 2022 und September 2023 behoben

Details zur Schwachstelle

Schritt 1: Schwachstelle zum beliebigen Schreiben und Löschen von Dateien in Calendar (CVE-2022-46723)

  • Ein Angreifer kann über eine bösartige Kalendereinladung Dateianhänge einschleusen
  • Der Dateiname des Anhangs wird nicht korrekt validiert
  • Durch Setzen eines beliebigen Pfads im ATTACH-Abschnitt lässt sich ein Directory-Traversal-Angriff durchführen
  • Beispiel: FILENAME=../../../PoC.txt
  • Die Datei wird unter ~/Library/Calendar/PoC.txt hinzugefügt
  • Falls die Datei bereits existiert, wird sie als PoC.txt-2 gespeichert
  • Wenn das vom Angreifer gesendete Event bzw. der Anhang gelöscht wird, wird die ursprüngliche Datei (PoC.txt) entfernt
  • Diese Schwachstelle kann dazu genutzt werden, vorhandene Dateien im Dateisystem zu entfernen
  • Die Schwachstelle besteht in macOS Monterey 12.5. In macOS 13.0 beta4 ist sie nicht vorhanden

Schritt 2: Erlangen von Remote Code Execution (RCE) über die Schwachstelle zum beliebigen Schreiben von Dateien

  • Kurz vor der Veröffentlichung von macOS Ventura entdeckt
  • Über den Upgrade-Prozess von macOS-Versionen lässt sich mittels der Open-File-Funktion von Calendar Remote Code Execution erreichen
  • Mehrere Dateien werden präpariert, um den RCE-Exploit auszulösen
Eingeschleuste Datei #1: 000Hacked-$RANDOM.calendar
  • Enthält Kalenderdaten, die wie von Siri vorgeschlagene Kalenderdaten aussehen
  • Enthält wiederkehrende Ereignisse und Erinnerungsfunktionen
Eingeschleuste Datei #2: Datei CalendarTruthFileMigrationInProgress
  • Führt ein Upgrade und eine Zusammenführung vorhandener Kalender in eine neue Datenbank aus
Eingeschleuste Datei #3: CalPoCInit.dmg
  • Eine im Kalenderevent enthaltene Benachrichtigung öffnet die Datei
  • CalPoCInit.dmg enthält einen Verweis auf einen externen Samba-Server
Eingeschleuste Datei #4: stage1.url
  • Eine zweite im Kalenderevent enthaltene Benachrichtigung öffnet die Datei
  • Enthält eine URL, die auf eine Anwendung auf dem Samba-Mount verweist
Eingeschleuste Datei #5: stage2.url
  • Eine dritte im Kalenderevent enthaltene Benachrichtigung öffnet die Datei
  • Führt ohne Benutzerinteraktion eine bösartige Anwendung aus

Schritt 3: Zugriff auf sensible Photos-Daten

  • Durch Änderung der Photos-Konfiguration ist Zugriff auf in iCloud gespeicherte Fotos möglich
  • Durch Umgehung des TCC-Schutzes lassen sich sensible Nutzerdaten exfiltrieren

Zugriff auf iCloud-Dateien durch Änderung der Photos-Konfiguration

  • Ein Angreifer erstellt eine Konfigurationsdatei, die die System Photo Library von Photos auf einen anderen Pfad setzt
  • Beim Ausführen von PhotosPoC.sh wird die neue Konfigurationsdatei importiert
  • Die ursprüngliche Konfiguration wird gesichert, die neue unter /var/tmp/mypictures/ gespeichert
  • Photos wird mit der neuen System Photo Library gestartet und die iCloud-Synchronisierung aktiviert

Die gesamte Kette

  • Um alle Sicherheitsbarrieren von macOS zu überwinden, sind mehrere Schritte nötig
  • Die Sandbox wird umgangen, und mit einem SMB-Trick werden Gegenmaßnahmen von Gatekeeper umgangen
  • Der TCC-Schutz wird umgangen, wodurch Zugriff auf sensible Daten möglich ist

Zeitachse

  • 2022-08-08: Beliebiges Schreiben und Löschen von Dateien in der Calendar-Sandbox gemeldet
  • 2022-10-24: In macOS Monterey 12.6.1 und Ventura 13 behoben
  • 2022-11-14: PoC übermittelt, Methode zur beliebigen Codeausführung über die Calendar-Schwachstelle
  • 2022-12-04: PoC übermittelt, Methode zum Zugriff auf iCloud-Fotos
  • 2023-02-20: CVE-2022-46723 mit Credit und CVE ergänzt
  • 2023-03-27: Gatekeeper-Umgehung in macOS Ventura 13.3 behoben
  • 2023-09-26: Photos-Schwachstelle CVE-2023-40434 behoben und Credit vergeben
  • 2023-10-09: Bug-Bounty-Ankündigung zur Gatekeeper-Umgehung und zur Photos-Schwachstelle
  • 2023-12-21: Credit für Gatekeeper-Umgehung CVE-2023-40433

Zusammenfassung von GN⁺

  • Dieser Artikel behandelt eine Zero-Click-Schwachstelle in macOS Calendar und erklärt, wie Angreifer dadurch auf sensible iCloud-Photos-Daten von Nutzern zugreifen können
  • Die Schwachstellenkette umgeht in mehreren Schritten die Sandbox sowie Gatekeeper- und TCC-Schutzmechanismen und ermöglicht so Remote Code Execution sowie den Zugriff auf sensible Daten
  • Der Artikel liefert wichtige Informationen für Sicherheitsforscher und macOS-Nutzer und betont, dass Apple diese Schwachstellen behoben hat
  • Andere Projekte mit ähnlicher Funktionalität sind andere Kalenderanwendungen wie Google Calendar

1 Kommentare

 
GN⁺ 2024-09-14
Hacker-News-Kommentare
  • Wenn ein Big-Tech-Unternehmen keine Prämie auszahlt, gibt es dafür wahrscheinlich einen legitimen Grund

    • Prämienprogramme sind darauf ausgelegt, für legitime Einreichungen Prämien zu zahlen
    • Keine Prämie auszuzahlen widerspricht dem Ziel des Programms
    • Die Teams, die diese Programme betreiben, sind dazu angehalten, mehr Prämien auszuzahlen
  • Ich nutze die iCloud-Fotomediathek nicht, aber es ist merkwürdig, dass ein neuer Speicherort nicht geschützt wird, wenn der Speicherort der Fotomediathek geändert wird

    • Nachdem die Systemfotomediathek geändert wurde, sollte die Fotos-App dieses Verzeichnis schützen
    • Bei einem Test auf einem Sonoma-14.6.1-System wurde der Zugriff verweigert, wenn die neue Fotomediathek unter ~/Pictures erstellt wurde
    • Wurde sie jedoch unter /tmp erstellt, war der Zugriff erlaubt
    • Wenn Apple die Funktion unterstützt, die Fotomediathek an einen beliebigen Ort im Dateisystem zu verschieben, sollte dort auch angemessener Schutz angewendet werden
  • Es gibt noch eine weitere Möglichkeit, das Quarantäne-Flag zu manipulieren

    • Zu viele Systeme haben die Möglichkeit, diese Flags zu ändern
  • Schon der erste Schritt ist an sich eine schwerwiegende Schwachstelle

    • Ein Angreifer kann im Abschnitt ATTACH einen beliebigen Pfad setzen und so einen Directory-Traversal-Angriff durchführen
  • Ein Angreifer kann über eine bösartige Kalendereinladung die iCloud-Fotos des Opfers stehlen

    • Ich frage mich, ob macOS-Nutzer beliebigen Personen zufällige Einladungen schicken können
  • Wenn die vom Angreifer angegebene Datei bereits existiert, wird sie als "PoC.txt-2" gespeichert

    • Wenn das Ereignis bzw. der Anhang später gelöscht wird, wird die ursprüngliche Datei entfernt
    • Diese Schwachstelle könnte genutzt werden, um vorhandene Dateien im Dateisystem zu löschen
  • Der Status der Prämie gefällt mir nicht

    • Ich frage mich, ob es für Sicherheitsforscher normal ist, bei Apple oder anderen FAANG-Unternehmen so lange zu warten
  • Ich empfinde jedes Mal einen gewissen Nervenkitzel, wenn eine Sicherheitslücke auftaucht, die nichts mit Speichersicherheit zu tun hat

    • Es ist fast amüsant zu denken, dass all die in Rust investierte Zeit und Energie durch einen Path-Traversal-Bug zunichtegemacht werden könnten
  • Ich frage mich, ob der Lockdown Mode das verhindert

  • Ziemlich alter Exploit

    • Ich erinnere mich, vor etwa 10 Jahren darüber gelesen zu haben, dass Dateinamen Pfade enthalten konnten