Aktualisierungen im Changelog, als RSS-Feed
oder im [matrix] Raum #prhdb-changes:nitro.chat

Privacy Handbuch

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.

Tipps zum Schutz gegen Trojaner

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: 

Trojanerinfektion erkennen mit MVT (iPhones)

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:

  1. 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.

  2. 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-utils
    Fedora: > sudo dnf install libimobiledevice-utils

    Da 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/
  3. Das Mobile Verification Toolkit holt man sich von Github und Linuxer komplilieren es selbst:

    > sudo apt install git python3 python3-pip sqlite3
    > git clone https://github.com/mvt-project/mvt.git
    > cd mvt
    > pip3 install .

    Ä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-iocs

    Das 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/backup

    Dann startet man die Untersuchung des Backups mit folgendem Komando:

    > mvt-ios check-backup --output /path/to/output/ /path/to/decrypted

    Im 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/
    > mvt-ios check-iocs --iocs ~/iocs/cytrox.stix2 /path/to/output/
    > mvt-ios check-iocs --iocs ~/iocs/malware.stix2 /path/to/output/
    > mvt-ios check-iocs --iocs ~/iocs/operation_triangulation.stix2 /path/to/output/
    > mvt-ios check-iocs --iocs ~/iocs/wyrmspy_dragonegg.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. 

iPhone Spyware Analyzer von iMazing

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). 

Trojanerinfektion erkennen mit TinyCheck

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:

  1. Ein WLAN Interface als Accesspoint für die zu testenden Smartphones.

  2. 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/
> git clone https://github.com/KasperskyLab/TinyCheck
> cd TinyCheck
> sudo bash install.sh

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.

Hilfe für Journalisten

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.