Der FireAI-Sicherheitsblog

Von FireAI Security & Research Team · Veröffentlicht

Zero-Days unter macOS: Warum unbekannte Bedrohungen trotzdem nach Hause telefonieren müssen

Zero-Days unter macOS: Warum unbekannte Bedrohungen trotzdem nach Hause telefonieren müssen

Ein Zero-Day ist eine Sicherheitslücke, die ausgenutzt wird, bevor der Hersteller eine Korrektur dafür hat, so benannt, weil die Verteidiger null Tage Zeit hatten zu reagieren. Es ist die beunruhigendste Kategorie von Bedrohung, weil der übliche Rat, „halten Sie Ihre Software aktuell“, noch nicht gilt: Es gibt nichts, worauf man aktualisieren könnte. Dieser Artikel betrachtet, wie diese Schwachstellen auf Apple-Plattformen tatsächlich ausgesehen haben, gestützt auf Apples eigene Sicherheitsveröffentlichungen, Google Project Zero und das Citizen Lab, und dann das eine, was ein unbekannter Exploit nach seinem Erfolg immer noch tun muss.

Ein Punkt muss vorab gesagt werden, weil das Marketing rund um dieses Thema oft irreführend ist: Keine Firewall stoppt einen Exploit. Nicht FireAI, keine andere. Eine Firewall kann kein fehlerhaft aufgebautes Bild sehen, das in iMessage verarbeitet wird, oder einen Kernel-Bug, der von einer Webseite ausgelöst wird. Was eine Firewall tun kann, ist zu beobachten, was als Nächstes passiert, und das erweist sich als wichtiger, als es zunächst scheint.

Was die Bilanz tatsächlich zeigt

Apple dokumentiert jede Sicherheitskorrektur auf seiner Seite Apple-Sicherheitsupdates, und wenn eine Schwachstelle bereits gegen reale Menschen eingesetzt wurde, sagt Apple das mit einem Standardsatz: „Apple ist ein Bericht bekannt, wonach dieses Problem möglicherweise aktiv ausgenutzt wurde.“ Diese Seite über einige Jahre zu lesen ergibt ein geerdeteres Bild als jede Schlagzeile. Google Project Zero führt eine ergänzende öffentliche Aufzeichnung, seinen 0-day-„In the Wild“-Tracker, der Exploits auflistet, die in realen Angriffen entdeckt wurden, bevor ein Patch existierte. Project Zero weist sorgfältig darauf hin, dass der Tracker nur Fälle enthält, die entdeckt wurden, was per Definition die Misserfolge der Angreifer sind, sodass er sich nicht eignet, um zu zählen, wie viel Ausnutzung tatsächlich stattfindet, oder um Plattformen zu vergleichen.

Drei dokumentierte Fälle zeigen die Form des Problems.

FORCEDENTRY, 2021

Im März 2021 analysierte das Citizen Lab der Universität Toronto das Telefon eines saudischen Aktivisten und stellte einen Exploit sicher, den es FORCEDENTRY nannte. Es war ein Zero-Click-Angriff: eine speziell präparierte Datei, über iMessage zugestellt, die keinerlei Tippen des Opfers erforderte und die Spyware Pegasus der NSO Group installierte. Das Citizen Lab fand Hinweise, dass sie mindestens seit Februar 2021 in Gebrauch war. Apple schloss die Schwachstelle, CVE-2021-30860 im Bildparser von CoreGraphics, am 13. September 2021 in iOS 14.8, macOS Big Sur 11.6 und einem Sicherheitsupdate für Catalina; die eigenen Versionshinweise zu Big Sur 11.6 bestätigen, dass die Schwachstelle „möglicherweise aktiv ausgenutzt wurde“.

Google Project Zero veröffentlichte später eine technische Analyse, die erklärt, warum so etwas so schwer zu fangen ist. Der Fehler lag im Code für die JBIG2-Bildkompression, der in PDFs verwendet wird. Der Exploit der NSO nutzte die logischen Operatoren des Formats selbst, um aus mehr als 70.000 Bildsegment-Befehlen einen kleinen funktionierenden Computer im Bilddecoder zu bauen, und führte den Rest des Angriffs darauf aus. Nichts daran sieht von außen wie ein Programm aus. Es ist ein Bild, geöffnet von einem legitimen, signierten Systemprozess.

Der Watering-Hole-Angriff in Hongkong, 2021

Ende August 2021 fand Googles Threat Analysis Group eine Watering-Hole-Kampagne, die auf Besucher der Websites eines Medienunternehmens und einer prodemokratischen Gruppe in Hongkong zielte. Gegen Macs verkettete sie eine bereits im Januar gepatchte WebKit-Schwachstelle mit einem Kernel-Bug zur Rechteausweitung, CVE-2021-30869, der unter macOS Catalina noch ungepatcht war; Apple behob ihn am 23. September 2021. Die Nutzlast, eine Backdoor, die Google MACMA nannte, konnte die Maschine identifizieren, den Bildschirm aufzeichnen, Audio aufnehmen, Tastatureingaben protokollieren, Dateien hoch- und herunterladen und Terminalbefehle ausführen.

Dieses Beispiel ist lehrreich, weil Exploit und Nutzlast zwei verschiedene Dinge sind. Der Exploit war unsichtbar: eine Webseite. Die Nutzlast war ein gewöhnliches eingepflanztes Programm, das, um seinen Betreibern irgendetwas zu nützen, einen Command-and-Control-Kanal aufbauen und Daten vom Mac wegbewegen musste. Googles Bericht beschreibt genau diese Infrastruktur.

BLASTPASS, 2023

Im September 2023 berichtete das Citizen Lab über BLASTPASS, eine weitere Zero-Click-iMessage-Kette, die Pegasus auslieferte, diesmal über PassKit-Anhänge mit bösartigen Bildern. Apple vergab CVE-2023-41064 und CVE-2023-41061 und lieferte Korrekturen für iPhone, iPad, Mac und Apple Watch aus. Bemerkenswert ist, dass sowohl Apples Sicherheitsingenieure als auch das Citizen Lab erklärten, sie gingen davon aus, dass der Blockierungsmodus diese bestimmte Kette blockiert hat, was der stärkste öffentliche Beleg dafür ist, dass gegen diese Klasse von Bedrohung das Verkleinern der Angriffsfläche wirkt, nicht das Erkennen des Angriffs.

Warum der Exploit selbst so schwer zu erkennen ist

Legt man die drei Fälle nebeneinander, ist das Muster klar. Der Exploit kommt als Daten an (ein Bild, ein PDF, eine Webseite) und nicht als App. Er wird von legitimem, von Apple signiertem Code verarbeitet. Es gibt keine Datei, die XProtect abgleichen könnte, keine unsignierte Binärdatei, die Gatekeeper ablehnen könnte, und oft keinen neuen Prozess, den ein Endpoint-Security-Werkzeug markieren könnte, weil der feindliche Code in einem Prozess läuft, dem bereits vertraut wurde. Erkennung, wenn sie stattfindet, ist meist forensisch: Das Citizen Lab fand FORCEDENTRY, indem es Artefakte auf einem Gerät im Nachhinein untersuchte, nicht weil ein Scanner es live erwischte.

Deshalb lautet Apples Rat für Menschen, die glauben, ein Ziel zu sein, nicht „installieren Sie einen Detektor“, sondern der Blockierungsmodus, der unter macOS Ventura und neuer die meisten Anhangstypen in Nachrichten blockiert, komplexe Webtechnologien deaktiviert, unbekannte FaceTime-Anrufer abweist und die Installation von Konfigurationsprofilen verhindert. Er funktioniert, indem er die Codepfade entfernt, die ein Exploit braucht, zu einem Preis an Komfort, den Apple ausdrücklich benennt.

Warum der Netzwerkschritt anders ist

Ein Exploit ist der Anfang eines Angriffs, nicht sein Zweck. Pegasus existiert, um Nachrichten, Fotos und Mikrofonaufnahmen an seinen Betreiber zu senden. Die Bildschirmaufnahmen und Tastatureingaben von MACMA waren auf der Festplatte des Opfers wertlos. In jedem dokumentierten Fall wurde der Wert durch Datenverkehr realisiert, der die Maschine verließ, und in der MITRE-ATT&CK-Matrix für macOS hat diese Phase zwei eigene Spalten, Command and Control und Exfiltration, weil sie ein eigenständiger, beobachtbarer Schritt ist, den Angreifer nicht überspringen können.

Dieser Schritt hat Eigenschaften, die der Exploit nicht hatte. Er kommt von einem identifizierbaren Prozess mit einer Codesignatur (oder, bezeichnenderweise, ohne eine). Er geht zu einem Ziel mit einer IP, einem Hostnamen und einer Geschichte. Er nutzt oft einen ungewöhnlichen Port, eine nackte IP statt eines Namens oder einen Hosting-Anbieter, der mit keiner App auf dem Mac in Beziehung steht. Nichts davon erfordert, die ausgenutzte Schwachstelle zu kennen. Es erfordert nur, die Verbindung zu sehen und Nein sagen zu dürfen.

Das ist der Teil, für den FireAI gebaut ist. Seine Regeln pro App sind an die Codesignatur des Prozesses gebunden, der die Verbindung aufbaut, sodass eine eingepflanzte Binärdatei, die keine von Ihnen genehmigte App ist, eine Berechtigungsnachfrage statt eines Freifahrtscheins bekommt, mit der Begründung des lokalen Modells in verständlicher Sprache. Seine Threat-Intelligence-Feeds (abuse.ch, Spamhaus, FireHOL, OpenPhish, Phishing Army und die aktuelle Liste der Tor-Exit-Nodes) werden lokal angewendet, sodass eine bekannte Command-and-Control-Adresse abgewiesen wird, ob nun irgendetwas anderes auf dem Mac die Nutzlast erkannt hat oder nicht. Die Modi Unter Angriff und Paranoid verschärfen die Voreinstellung auf das rundherum Blockieren unsignierter Apps und unbekannter Ziele, und der Kill-Switch kappt das Internet und behält das lokale Netzwerk bei, was der richtige erste Schritt ist, wenn Sie eine Kompromittierung vermuten und Beweise bewahren wollen.

Was das nicht abdeckt

Ehrlichkeit verlangt die andere Hälfte der Liste. Wenn eine Nutzlast vollständig innerhalb einer erlaubten App läuft, zum Beispiel in einem Browser, den Sie bereits zugelassen haben, erbt ihr Datenverkehr die Berechtigungen dieser App, und FireAI wird ihn nicht unterscheiden. Verschlüsselter Datenverkehr zu einem Ziel mit sauberer Reputation sieht aus wie jede andere Verbindung. Ein Feed enthält nur Adressen, die jemand bereits gemeldet hat; ein frischer Command-and-Control-Server steht noch nicht darauf. Und FireAI erkennt, entfernt oder analysiert weder den Exploit noch das Implantat: Es scannt keine Dateien oder den Speicher, und es ist kein Antivirus. Auf einem Mac, von dem Sie glauben, dass er von einem staatlichen Akteur kompromittiert wurde, ist der richtige Weg Apples Anleitung zu Bedrohungsbenachrichtigungen und ein Forensikspezialist, nicht eine Firewall-Einstellung.

Die praktische Verteidigung gegen unbekannte Schwachstellen ist deshalb mehrschichtig und unspektakulär: Installieren Sie Apples Updates am Tag ihres Erscheinens, denn die meiste Ausnutzung zielt auf Schwachstellen, für die es bereits eine Korrektur gibt; schalten Sie den Blockierungsmodus ein, wenn Ihre Arbeit Sie zu einem plausiblen Ziel macht; halten Sie die Angriffsfläche klein; und kontrollieren Sie, welche Apps auf Ihrem Mac überhaupt mit dem Internet sprechen dürfen, damit, wenn etwas Unbekanntes doch hereinkommt, der Schritt, den es nicht überspringen kann, der Schritt ist, den Sie beobachten.

Wo FireAI und HisnLabs ins Spiel kommen

FireAI cannot stop an exploit and does not claim to; what it does is sit on the one step every documented case above could not skip, the connection out, and ask, for each unknown process, whether that connection should be allowed at all.

FireAI ist das eigene Produkt von HisnLabs: eine KI-Firewall für den Mac, die direkt auf dem Gerät läuft. Sie zeigt jede Verbindung Ihrer Apps in verständlicher Sprache und lässt Sie entscheiden, was Ihren Mac verlässt — die KI arbeitet lokal, Ihr Datenverkehr wird also nie an uns oder irgendjemand anderen gesendet. Das Sicherheitsforschungsteam von HisnLabs sorgt dafür, dass diese Entscheidungen verlässlich bleiben: Es katalogisiert, welche Domains gewöhnliche Telemetrie und welche ein echter Dienst sind, verfolgt Land und Netzwerk hinter einer Verbindung und trainiert das lokale Modell (die Autopilot-Funktion) mit echten Verkehrsmustern — ohne dass irgendetwas davon Ihren Mac verlässt.

Die technischen Entscheidungen dahinter können Sie nachlesen — oder FireAI 17 Tage lang ausprobieren — unter FireAI, von HisnLabs.

Quellen