Es ist nicht leicht, zu sagen, wer der Urheber eines digitalen Angriffes ist. Angreifer können ihre Daten verschlüsseln, sie können auf Rechnern falsche Spuren legen, ihre Angriffswege verschleiern, ja sie können sogar so tun, als seien sie jemand völlig anderes. Attributionsproblem heißt das in der Forensik digitaler Daten – die Schwierigkeit, einen Angriff oder eine Software den Urhebern korrekt zuzuschreiben.

Der Chaos Computer Club (CCC) hat trotzdem versucht, eine solche Attribution vorzunehmen. Es geht um eine Überwachungssoftware, die eine Zeit lang unter dem Namen FinSpy vertrieben wurde und um die es derzeit in Deutschland einen Rechtsstreit gibt.

FinSpy gibt es für Android und iOS. Es dient dazu, aus der Ferne die Kontrolle über das infizierte Gerät zu übernehmen. Ist es einmal auf einem Mobiltelefon aufgespielt, kann der Angreifer dank FinSpy jeden Schritt, jedes Telefonat, jeden Text des Opfers verfolgen und beobachten: Anrufe, Geodaten, Textnachrichten, Kalendereinträge – alles kann unbemerkt vom Besitzer des Gerätes ausgelesen werden. Auch verschlüsselte Kommunikation über Telegram, Signal oder Threema ist nicht vor FinSpy sicher, da die Software die Texte mitschneidet, bevor sie in diesen Messenger-Apps verschlüsselt werden.

FinSpy wurde entwickelt, um Behörden bei ihrer Arbeit zu unterstützen. Polizei und Geheimdienste beklagen immer wieder, dass Kriminelle und Terroristen in der Lage sind, ihre Kommunikation mithilfe von Verschlüsselung zu verbergen. "Going dark" nennen Behörden diesen Versuch, sich ihrer Überwachung zu entziehen: im Dunkeln verschwinden. Dank FinSpy funktioniert das nicht, weswegen die Behörden vieler Länder an dieser Software interessiert sind. Unter anderem hat das deutsche Bundeskriminalamt eine Version von FinSpy gekauft.

Doch auch in der Türkei tauchte sie auf. Dort wurde 2017 über eine Website versucht, die Mobilgeräte von Oppositionellen mit einer Schadsoftware zu infizieren, bei der es sich nach Analysen des Chaos Computer Clubs und anderer IT-Sicherheitsforscher um FinSpy handelte. Da FinSpy von einer Münchner Unternehmensgruppe namens FinFisher entwickelt wurde, läuft eine Klage gegen das Unternehmen: Die Gesellschaft für Freiheitsrechte hat zusammen mit Reporter ohne Grenzen und weiteren Nichtregierungsorganisationen Strafanzeige gegen FinFisher erstattet. Sie werfen der Firma vor, die Software an die Türkei verkauft und damit gegen deutsche Richtlinien zum Export solcher Software verstoßen zu haben. Daher ermittelt seit September eine Staatsanwaltschaft wegen Verstoßes gegen das Außenwirtschaftsgesetz.

Doch stammt die in der Türkei aufgetauchte Software überhaupt von FinFisher? Bislang gab es dafür zwar Indizien, aber noch keine Beweise. Die hat nun der CCC gesammelt. In einer umfangreichen Analyse, die während des CCC-Kongresses in Leipzig veröffentlicht wurde, haben die Schadsoftwareforscher Linus Neumann und Thorsten Schröder insgesamt 28 verschiedene Varianten von FinSpy analysiert. Die Programme waren in den vergangenen Jahren in verschiedenen Ländern aufgetaucht. Ausgangspunkt ist eine FinSpy-Variante, die eindeutig FinFisher zuzuordnen ist, da sie aus einem Angriff auf das Unternehmen stammt. 2014 hatten Hacker die Firma attackiert und dabei 40 Gigabyte Daten kopiert, darunter auch eine FinSpy-Version.

In ihrer Analyse belegen Neumann und Schröder anhand diverser technischer Besonderheiten der Programmfamilie, dass alle 28 untersuchten Versionen von FinSpy mit an Sicherheit grenzender Wahrscheinlichkeit vom selben Entwicklerteam stammen müssen.

So zeigen sie, dass Daten zur Konfiguration der Überwachungssoftware auf den Zielgeräten auf immer dieselbe sehr charakteristische und ausgefallene Weise in den Metadaten von leeren Dateien versteckt wurden, um den Urheber zu verschleiern. Oder dass die Entwickler sprachliche Besonderheiten an den Tag legen, die sich immer wieder finden. So steht im Code mehrfach der Ausdruck "s1ms" – gemeint ist sims, abgeleitet von simsen, einem ausschließlich in Deutschland üblichen Ausdruck für das Verschicken von SMS. Dabei wurde das i durch eine 1 ersetzt, was unter Gamern und Programmierern als "Leet-Speak" bekannt ist.