Der in den Medien bekannteste Staatstrojaner ist derzeit die Pegasus Suite der israelischen NSO Group. Mehr als 50.000 Opfer wurden mit diesem Trojaner ausspioniert (Stand: Sommer 2021). Dazu gehörten Menschrechtsaktivisten, Journalisten (auch in europäischen Ländern wie Griechenland, Polen, Ungarn), aufsässige Politiker (Katalonien), EU Politiker, US State Department, die Kryptohandys des spanischen Regierungschef und seiner Verteidigungsministerin…
Das BKA nutzt eine angepasste Version von Pegasus und auch der BND steht auf der Kundenliste von NSO. Die NSO Spionagesoftware Pegasus ist in mehreren Preisstufen verfügbar:
Alternativen zu Pegasus sind der Trojaner Predator der griechischen Firma Intellexa oder Graphite von Paragon Solutions mit ähnlichen Fähigkeiten. Predator spielte im griechischen Abhörskandal 2022 eine wesentliche Rolle und wurde auf den Smartphones von hochrangigen Politikern und Journalisten nachgewiesen. BKA und Zitis interessieren sich für den Kauf von Predator.
Neben staatlich organisierten Hackern gibt es auch Freiberufler, die man im anheuern kann ("Hire a Hacker"). Diese Subjekte möchten anonym bleiben und bieten deshalb ihre Dienste meist im Darknet auf Tor Onion Sites an. Es kostet zwischen $500 - $2.000 ein Smartphone hacken zu lassen.
Man sendet dem anonymen Hacker via Kontaktformular die Telefonnummer der Zielperson (keine hochrangigen Politiker), überweist das Geld als Bitcoins oder in Monero und bekommt innerhalb 24-72h ein Archiv mit dem Inhalt aller Daten des Zielphones oder einen Remotezugriff auf Phone wie mit der Pegasus oder Predator Spyware, um das Opfer zu belauchen und sich Kontakte, Fotos, Chats usw. selbst herunterzuladen. Ein Screenshot von einem Angebot:
ABER Vorsicht: nicht alle Angebote sind seriös, manche werden als Honeypots vom FBI betrieben.
Es gibt keinen 100% Schutz gegen einen Angreifer, der nahezu unbgrenzte finanzielle Mittel zur Verfügung hat. Aber man kann Angriffe deutlich erschweren und die Angriffsfläche verringern.
Die Sicherheitsfirma Kaspersky hat einige Tipps zum Schutz gegen Pegasus und andere Trojaner veröffentlicht und die Teams von GrapheneOS und dem PrHdb haben noch kleine Ergänzungen:
Immer ein vertrauenswürdiges VPN nutzen, da TK-Provider seit 2020 gem. TKÜV staatliche Behörden beim Rollout von Staatstrojanern bestmöglich unterstützen müssen. Man sollte dabei einen VPN Provider wählen, der keine persönlichen Informationen abfragt.
Das Smartphone häufig rebooten, da persistente Exploits teurer sind und selten genutzt werden. Ein persistenter 0-Click Exploit für Android kostet bis zu 2,5 Mio. Dollar. Das nutzt man vorsichtig und spart es für wichtige Ziele auf. Für einige Trojaner wie zum Beispiel den iPhone Trojaner TriangleDB gibt es garkeine persistente Version.
Gelegentlich sollte man den Akku Smartphone auch vollständig entladen lassen ("phone dies the natural death") um es von NoReboot Trojanern zu reinigen. Ein solcher NoReboot Trojaner wurde beispw. im Juni 2022 für iPhones nachgewiesen.
Man kann die "Zielerkennung" erschweren, indem man nie Telefonnummern weitergibt und Messenger verwendet, die nicht an Telefonnummern gebunden sind (Threema, Session).
Hinweis: Man kann mit Threema oder Session Messenger auch telefonieren - kein Problem.
Nicht den mitgelieferten Standardbrowser verwenden sondern z.B. Firefox Focus (sagt Kaspersky). Dieser Browser sollte nicht nur standardmäßig zum Surfen genutzt werden sondern zum Öffnen von Links aus anderen Apps konfiguriert werden.
Auch ein standardmäßig mitgeliefertes E-Mail Programm sollte man meiden und statt dessen Alternativen nutzen, um Angriffe ins Leere laufen zu lassen. Über einen 0-Click Exploit in Apple Mail wurden beispw. die iPhones von Journalisten und Promis kompromittiert. Der Bug in Apple Mail existierte von iOS 3.1.3 - 13.4.1 über einen Zeitraum von 10 Jahren.)
Alternativen sind FairEmail bzw. K9Mail für Android oder Canary Mail für iPhones.
Die E-Mail Apps sollte man so konfigurieren, dass Anhäge und Bilder nicht automatisch angezeigt werden, dass keine Vorschaubilder von Anhängen automatisch generiert werden und keine externen Elemente automatisch geladen und angezeigt werden.
Um die Angriffsfläche auf das Hidden OS zu verringern, kann man LTE only für mobile Daten aktivieren und die veralteten Protokolle 2G + 3G sowie das neue 5G deaktivieren.
"LTE only" kann man in GrapheneOS in den Einstellungen unter "Netzwerk & Internet → SIM Karten → Bevorzugter Netzwerktyp" aktivieren.
Wenn man den "HTTPS-only Mode" im Standardbrowser Vanadium ativiert, erschwert man das Einschleusen von bösartigem Zeugs in Webseiten. Außerdem kann man den JIT Compiler für Javascript abschalten, um die Angriffsfläche zu verringern.
Diese beiden Optionen kann man in den Einstellungen vom Browser Vanadium in der Sektion "Datenschutz und Sicherheit" aktivieren.
In den letzten Monaten haben wir einen Anstieg der Zahl der iOS-Exploits beobachtet, vor allem von Safari und iMessage-Ketten, die von Forschern aus der ganzen Welt entwickelt und verkauft werden. Der Zero-Day-Markt ist so überflutet von iOS-Exploits, dass wir kürzlich begonnen haben, einige von ihnen abzulehnen.
Apple hat die Zeichen der Zeit erkannt in iOS 16 einen Blockiermodus (engl: lock down mode) implementiert, der in iMessages keine Dateien außer Bilder darstellt, Facetime Anrufe von Unbekannten blockiert, den JIT Compiler in Browsern deaktiviert, die USB-Schnittstelle abschaltet, Installation von Profilen blockiert u.a.m.
Den "Blockiermodus" kann man in den Einstellungen unter "Datenschutz & Sicherheit" aktivieren. Man wird mehrfach darauf hingewiesen, dass man es wirklich nur in ganz besonderen Ausnahmefällen braucht, nur wenn wirklich ein Risiko besteht, dass man zu einer Zielgruppe für Hackerangriffe gehört… aber wer weiß das schon, bevor man gehackt wurde?
Kaspersky empfiehlt, iMessages und Facetime zu deaktivieren, da diese häufig angegriffen werden. Da es keine Alternative für SMS gibt, muss man dann auf SMS verzichten.
(P.S. Nachdem die iPhones von Kaspersky Mitarbeiter bei der Operation Triangulation gehackt wurden, hat Kaspersky begonnen, alle beruflichen iPhones auszurangieren.)
Mit dem Mobile Verification Toolkit (MVT) kann man die meisten Trojaner wie Pegasus oder Predator erkennen und auch von der CIA(?) seit 2019 großflächig in Russland, Israel und China eingesetzten Trojaner für die Operation Triangulation. Die Signaturdateien werden ständig erweitert.
Hinweis: Mit den öffentlich verfügbaren Trojaner-Signaturen kann man viele (Staats-) Trojaner erkennen. Aber diese Datenbanken sind nicht geeignet für den belastbaren Beweis, dass das Phone wirklich "sauber" ist. Ein negatives Ergebnis der Untersuchung ist eindeutig, aber ein positives Ergebnis ("kein Trojaner gefunden") bedeutet nicht unbedingt, dass sich wirklich kein Trojaner auf dem Smartphone versteckt. Für eine halbwegs belastbare Aussage, ob das Phone sauber ist, benötig man Zugang zu nicht-öffentlichen Signaturdaten und Spezialwissen im Umgang mit dem Toolkit.
Mit MVT kann man iPhones und Android Smartphones hinsichtlich Trojanerinfektion untersuchen. Allerdings sind die Möglichkeiten unter Android limitiert. iPhones bieten mehr Informationen zur Analyse und daher bessere Möglichkeiten zur Erkennung von Trojanern.
Eine kleine Mini-Anleitung, wie man MVT zur Erkennung von Trojanern auf iPhones verwendet:
Es ist keine gute Idee, ein möglicherweise infiziertes Smartphone (diese Möglichkeit muss man einkalkulieren, sonst würde man es ja nicht testen) mit seiner Arbeitsumgebung auf dem PC oder Laptop zu verbinden. Man braucht also erstmal eine Testumgebung, mindestens eine eigene VM in QubesOS oder besser eine extra Hardware.
Es gibt Trojaner, die sich aggressiv weiterverbreiten wollen. Ich habe einen solchen Trojaner schon einmal in Aktion gesehen. Im Auto sitzend sagte meine Beifahrerin, dass sich ihr iPhone seit zwei Tagen ständig rasant entleert und sie mit dem Laden garnicht hinterher kommt. Bevor ich reagieren konnte, hatte sie das USB Ladekabel in die passende Buchse gesteckt, der Navi machte nochmal kurz "Nöff" und war dann erstmal tot.
Das iPhone Backup kann man unter MacOS im Finder erstellen, unter Windwos benötigt man iTunes und Linuxer können die Toolsammlung "libimobiledevice" verwenden.
Unter Linux könnte man am einfachsten die Pakete aus den Repositories probieren:
Ubuntu: > sudo apt install libimobiledevice-utilsDa das iPhone (hoffentlich) auf dem aktuellen Stand ist, sind die Pakete aus den Linux Repositories oft zu alt und man muss die aktuelle Version von Github selbst kompilieren.
Wenn alles vorbereitet ist, schließt man das iPhone via USB an die Testumgebung an und erstellt ein verschlüsseltes(!) Backup. Das verschlüsselte Backup enthält mehr Daten und erleichtert somit die Analyse. Unter Linux setzt man zuerst ein Passwort:
> idevicebackup2 -i encryption on(Wenn bereits ein Passwort für das iPhone Backup gesetzt wurde, kann dieser Schritt entfallen.)
... und erstellt dann das verschlüsselte Backup vom iPhone:
> idevicebackup2 backup --full /path/to/backup/Das Mobile Verification Toolkit holt man sich von Github und Linuxer komplilieren es selbst:
> sudo apt install git python3 python3-pip sqlite3Ähnlich wie bei Virenscannern gibt es Listen mit Indikatoren, die auf eine Infektion hinweisen. Es gibt Indikatoren für Pegasus, Predator u.a.m. Die Listen aktualisiert man mit:
> mvt-ios download-iocsDas iPhone Backup ist für die Analyse mit dem MVT Toolkit erstmal zu entschlüsseln:
> mvt-ios decrypt-backup --destination /path/to/decrypted /path/to/backupDann startet man die Untersuchung des Backups mit folgendem Komando:
> mvt-ios check-backup --output /path/to/output/ /path/to/decryptedIm Outputverzeichnis findet man die Ergebnisse der Analyse, die man abschließend mit den Listen der Indikatoren zur Erkennung von Infektionen abgleichen kann:
> mvt-ios check-iocs --iocs ~/iocs/pegasus.stix2 /path/to/output/Der Parameter --iocs kann mehrfach in einem Kommando verwendet werden, so dass man das alles auch in ein Kommando packen könnte.
Das Mobile Verification Toolkit (MVT) ist ein Kommandozeitentool für Spezialisten. Der iPhone Spyware Analyzer von iMazing (für MacOS und Windows verfügbar) bietet eine grafische Oberfläche für Mäuschenschubser, die die Nutzung vereinfacht und im Hintergrund MVT instrumentalisiert.
Der iPhone Spyware Analyzer nutzt die öffentlich verfügbaren Trojaner-Signaturen und kann damit auch hochentwickelte Staatstrojaner wie Pegasus, Predator oder Operation Triangulation erkennen. Allerdings ist die Erkennung der Staatstrojaner auf Basis der öffentlich verfügbaren Signaturen nicht perfekt. Wenn kein Trojaner gefunden wird, ist es es kein Beweis, dass wirklich kein Trojaner auf dem Smartphone ist. Staatstrojaner jagen bleibt eine Aufgabe für Spezialisten.
Hauptanwendung für den Spyware Analyzer ist das Identifizieren kommerzieller Stalker- und Watchware, die heimlich (ohne Wissen des Nutzers) auf dem iPhone installiert werden und die auch bei Privatpersonen populär sind. Eltern versuchen damit, ihre Kinder heimlich zu überwachen, misstrauische Ehepartner installieren sich das Zeugs... usw.
Wenn man Stalker- und Watchware auf dem iPhone gefunden hat, könnten man versuchen, mit der Person zu reden, die es installiert hat, man könnte selbst versuchen, die Stalker-App zu identifizieren und zu deinstallieren oder man macht Tabula rasa (Rücksetzen auf Werkseinstellungen).
TinyCheck ist ein OpenSource Tool von Kaspersky, dass den aus- und eingehenden Datenverkehr eines Smartphones analysiert und auf verdächtige Muster scannt. Es erkennt in erster Linie Stalking Trojaner, Trojaner die von bekannten Botnetzen gesteuert werden und ähnliches Zeugs.
Um TinyCheck zu nutzen, benötigt man einen Rasberry Pi Minicomputer mit einem aktuellen Debian Linux als Betriebssystem. Dieser Rasberry Pi benötigt zwei Netzwerkschnittstellen:
Ein WLAN Interface als Accesspoint für die zu testenden Smartphones.
Ein WLAN oder kabelgebundenes Netzwerk mit Verbindung zum Internet (zum Router).
Ideal wäre es, wenn der Pi einen kleinen Touchscreen hat, um TinyCheck im Kiosk Mode zu nutzen.
Die Installation von TinyCheck ist nicht schwer. Man holt sich den Quellcode von Github und ruft das Script zu Installation auf. Das Script fragt einige Einstellungen ab (welche Netzwerkschnittstelle als Accesspoint zu nutzen ist und welche für die Internetverbindung … usw.)
> cd /tmp/Nach der Installation kann man im Browser die Adresse https://tinycheck.local aufrufen, Tinycheck konfigurieren und die Trojanersignaturen (IOCs) importieren.
Die zu testenden Smartphones verbinden sich via WLAN mit dem Accesspoint des Rasberry Pi. Der mobile Datenverkehr via Mobilfunkprovider ist dabei zu deaktivieren (einige Trojaner bevozugen Mobilfunk, auch wenn ein WLAN vorhanden ist, um die Erkennung zu erschweren).
Dann sollte man auf dem Phone einige Aktionen ausführen wie SMS schreiben, Anrufe annehmen, Messages schicken… um einen evtl. vorhandenen Trojaner zu Reaktionen zu provozieren.
Nachdem man ca. 10min auf dem Phone rumgespielt hat, kann man sich das Ergebnis der Analyse des aus- und eingehenden Datenverkehrs auf dem Rasberry Pi anschauen:
Oder etwas detaillierter:
Hinweis: Wenn TinyCheck bei einem Test keine Hinweise auf suspekten Datenverkehr findet, ist das kein Beweis, dass das Smartphone wirklich "sauber" ist. Es wurde nur im Testzeitraum keine seltsame Kommunikation festgestellt - was ein gutes Zeichen ist, aber kein Beweis.
Nachdem bekannt wurde, dass mehr als 200 Journalisten mit dem Pegasus Trojaner angegriffen wurden, hat "Reporter ohne Grenzen" im Juli 2022 das Digital Security Lab in Berlin eröffnet, wo sich IT-Spezialisten die Smartphones und Computer von Journalisten anschauen, die die Vermutung haben, dass sie gehackt wurden. Kontaktadressen des Lab findet man auf der Webseite.