Corona-Tests ohne Handynummer machen – Hacktivismus hilft

Wie man mit einem Linux-Befehl die Verschlüsselung von Corona-Testergebnissen knacken kann.

A doctor is looking through a kind of telescope.

Für Menschen, die in Bayern gemeldet sind, sind PCR-Tests kostenlos – eine der wenigen Corona-Maßnahmen, für die ich dankbar bin. Die Tests haben allerdings ein Datenschutz-Problem, man muss bei der Anmeldung für den Test eine Handynummer angeben.

UPDATE 14.3.2021: die Methode funktioniert seit einigen Tagen nicht mehr, weil die Codes mittlerweile acht Stellen lang sind, und aus Groß- und Kleinbuchstaben statt Zahlen bestehen. Das Entschlüsseln würde dadurch (mit meinem PC) bis zu 47 Jahre dauern – so lange können die wenigsten auf ein Testergebnis warten.

Disclaimer: ich habe das ganze nur mit EcoCare getestet, die das Testcenter in meiner Nähe betreiben. Bei Testcentern von anderen Firmen läuft das bestimmt anders.

Viele Menschen besitzen kein Handy oder wollen sie nicht irgendeinem Unternehmen mitteilen. Müssen die auf ihre Gesundheit verzichten? Nicht, wenn sie Zugriff auf eine Linux-Kommandozeile haben.

Denn EcoCare benötigt die Handynummer vor allem um einem einen vierstelligen Zahlencode zuzuschicken. Die Testergebnisse selbst erhält man per E-Mail, als “verschlüsseltes” PDF-Dokument. Verschlüsselt ist hier in Anführungszeichen, weil man einen vierstelligen Zahlencode nicht als sicher betrachten kann – weiter unten zeige ich, wie man ihn knackt.

Das heißt, am besten gebt ihr im Anmeldungsformular die Telefonnummer 016095485107 an – die ist nicht vergeben. Das heißt, falls ihr positiv seid, verschwenden die Contact Tracer nicht Stunden oder Tage damit, euch telefonisch zu erreichen, sondern schicken euch eine E-Mail oder einen Brief.

Wenn man das PDF-Dokument mit dem Testergebnis öffnen will, fragt es einen nach einem Passwort.

Jeder mit Zugriff auf eine Linux-Kommandozeile kann die Datei in wenigen Sekunden entschlüsseln. Dafür braucht man nur eine (sehr kurze) Passwortliste und diesen Befehl:

pdfcrack -w ~/Downloads/wordlist ~/Downloads/ZOTZ_*.pdf

Was bedeutet dieses Kauderwelsch? Nehmen wir diese Zeile mal kurz auseinander:


1. pdfcrack ist das Tool, mit dem ihr das PDF-Dokument entschlüsselt. Ihr könnt es euch auf Xubuntu mit sudo apt install pdfcrack installieren, manuell bekommt ihr es auch auf deren Website.


2. -w ~/Downloads/wordlist bedeutet, dass ihr eine Passwortliste benutzt – in diesem Fall ist das einfach eine Textdatei, in der die Zahlen von 0000 bis 9999 stehen. Die könnt ihr euch entweder herunterladen, oder kurz mit python selbst generieren. Diese 5 Zeilen Code generieren die Passwortliste und speichern sie im Downloads-Ordner ab:

user@xubuntu:~ $ python
Python 3.8.5 (default, Jul 28 2020, 12:59:40) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> with open("~/Downloads/wordlist", "w") as f:
...     number = 0
...     while number < 10000:
...         f.write("%04d\n" % number)
...         number += 1
... 

3. ~/Downloads/ZOTZ_*.pdf ist der Dateiname des PDF-Dokuments. EcoCare schickt euch eine Mail mit einem Anhang, den müsst ihr herunterladen. Wenn ihr die Datei öffnet, fragt sie euch nach einem Passwort – das ist der vierstellige Code, der bei Leuten mit Handy per SMS kommt. Solange wir den noch nicht kennen, können wir die Datei nicht öffnen.

Bei euch wird der Dateiname anders sein, den müsst ihr also ändern. Bei mir fing er immer entweder mit ZOTZ oder mit INV an. Das ~/Downloads bedeutet, dass die Datei in eurem Download-Ordner liegt – wenn ihr sie woanders abspeichert, müsst ihr das ebenfalls anpassen.


Also öffnet die Kommandozeile, und gebt euren Befehl ein. Bei mir war das pdfcrack -w ~/Downloads/wordlist ~/Downloads/ZOTZ_*.pdf. Bestätigt das ganze mit Enter. Da es nur 10.000 Versuche sind, sollte das quasi sofort fertig sein und dann so aussehen:

user@xubuntu:~ $ pdfcrack -w ~/Downloads/wordlist ~/Downloads/ZOTZ_*.pdf
PDF version 1.3
Security Handler: Standard
V: 2
R: 3
P: -3640
Length: 128
Encrypted Metadata: True
FileID: a71e78a32668fc4db864da5b8e88bebf
U: 1a523bb0447f068ecca453841409329300000000000000000000000000000000
O: fe446297d052ea011ac7958808d59ce82240e72cdefc2dde458b7297bf3fad4f
found user-password: '5219'

Die 5219 ganz unten ist das Passwort für das PDF-Dokument! Bei euch wird es wahrscheinlich eine andere Zahl sein. Jetzt könnt ihr das PDF-Dokument ganz einfach öffnen, indem ihr die vierstellige Zahl eingebt:

Bei mir waren die Tests zum Glück bisher immer negativ.

Ich hoffe, das hilft euch weiter. Gegen die Entwicklung, dass man überall Handynummern angeben muss, um sich zu identifizieren, ist es wert sich auflehnen.

Denn im Gegensatz zu Email-Adressen, die theoretisch jede*r verteilen kann, können nur ein paar wenige Unternehmen Handynummern vergeben. Man braucht laut Gesetz einen Ausweis um eine Sim-Karte zu kaufen, was es für manche Geflüchtete schwer macht, legal an ein Handy zu kommen. Und zumindest in der Theorie kann man mit einem angeschalteten Handy auch noch geortet werden.

Es gibt viele Gründe gegen Handys, und viele dafür. Aber es gibt keinen Grund, warum Menschen gezwungen sein sollten, ihre Handynummer anzugeben – erst recht nicht für so wichtige Grundgüter wie einen Corona-Test.

Wehrt euch gegen diese Datensammelwut! Auf datenanfragen.de könnt ihr übrigens DSGVO-Anträge generieren, mit denen ihr Unternehmen zwingen könnt, eure personenbezogenen Daten zu löschen. Das geht natürlich auch bei EcoCare.

Author: Nami

Nami is a Cyberpunk, sysadmin, musician, und writes a lot. As an activist they fight for open access to art, continents, and trains for everyone. But in secret they just want to be a reeaal hacker.

Leave a Reply

Your email address will not be published. Required fields are marked *