Nachdem mich kürzlich mal wieder eine durchaus gut gemachte Scam-Mail erreicht hat, habe ich mir mal Gedanken über mein Sicherheitskonzept gemacht. Die Mail enthielt meinen Klarnamen, eine von mir wenig genutzte eMail-Adresse… soweit so gut… und ein Fragment eines meiner früher tatsächlich genutzten Passwörter. Da gingen dann alle Warnlampen an und ich war trotz fortgeschrittener Zeit hellwach. Die Mail wurde obendrein augenscheinlich von meinem eigenen Mail-Account versandt und forderte Bitcoins im Wert von etwa 800€.
Der Wortlaut der Mail ist tausendfach nachzulesen und wer etwas vom Hacking versteht, lacht nur darüber. Aber es gibt auch durchaus dumme Skript-Kiddies mit sehr mächtigen Werkzeugen. Eine gewisse Vorsicht ist also durchaus immer angebracht.
Mein Zwischenfazit: Es ist eine Überlegung wert, zu prüfen, welche meiner Passwörter mutmaßlich bei einem Leak publik wurden. Natürlich tippe ich nicht alle meine genutzten Passwörter auf einer Seite wie haveibeenpwned ein. Dazu bin ich naturgemäß viel zu paranoid. Es muss also eine Offline-Lösung her, die alle meine Passwörter und Kombinationen gegen die geleakten Passwörter abgleicht und mich warnt, wenn mein Passwort in einer der öffentlichen Liste erschienen ist.
Einfach wird dies dadurch, dass auf der haveibeenpwned-Seite Dateien herunterladbar sind, die Hashes der geleakten Passwörter enthalten. Der Rest ist also Fingerarbeit:
Das Skript hier mach das folgende:
- Herunterladen der Listen im SHA1 und NTNL-Format.
- Lesen einer Textdatei, in der ich alle meine Passwörter eingetragen habe. Pro Zeile ein Passwort.
- Lesen einer optionalen, zweiten Datei, die Präfixe und Anhängsel für die Passwörter enthält. Denn manchmal habe ich vor oder nach dem Passwort z.B. den Ort oder eine Jahreszahl angehängt.
- Erzeugen der Hashes der Passwörter und letztendlich
- das Abgleichen der Hashes mit denen aus den heruntergeladenen Dateien.
Die Funktionsfähigkeit lässt sich leicht mit einem der Standardpasswörter wie z.B. 12345678 testen.
Was hat es gebracht? Ich habe tatsächlich noch zwei Passwörter gefunden, die auf der Liste von haveibeenpwned standen und kann nun ruhiger schlafen.
Aber Achtung! Die Hash-Dateien von haveibeenpwned sind ausgepackt etwa 21GB und 17GB groß und das Suchen dauert entsprechend lange. Also ein halbwegs moderner Rechner mit SSD sollte dies schnell abarbeiten können, auf einem Raspberry-PI würde ich das eher nicht ausprobieren.