DHL Packstation Kundenkarten: Barcode aus Postnummer errechnen, Theorie und Gedanken

Hallo liebe Leser,
ich muss euch leider enttäuschen und mitteilen, dass ich den Generator und sonstige Anleitungen entfernt habe. Der Beitrag bleibt so bestehen, um meine Gedanken zu dem Thema festzuhalten.

Aktuell kann man sich auch ganz ohne Karte, nur mit der Postnummer an der Packstation einloggen! Hier die entsprechende Anleitung auf meinem Blog.


Ich bin kein Journalist sondern Hobby-Internetnutzer und Privatperson und ich fürchte, dass es irgendwie irgendjemand schaffen kann, mir einen Strick aus dieser Sache zu drehen, obwohl hier eindeutig DHL die Verantwortung für die Sicherheit der Kundenkonten trägt. Ich habe mich sehr über die vielen freundlichen Kommentare und E-Mails gefreut und es tut mit Leid für Personen, die nun ohne Karte vor der Packstation stehen, aber ich kann nicht weiterhin ausbaden, was DHL versäumt. Google zählt allein für die Weiterleitung zu diesem Artikel Klicks in dreistelliger Höhe (keine Sorge, ich habe keine Werbung oder sonstige Tracking-Tools installiert, die Information wird auf google.com erhoben und nicht hier). Zuletzt gab es wieder Berichte zum bandenmäßigen Missbrauch von Packstations und ich will damit nicht einmal im Ansatz etwas mit zu tun haben.
Deshalb begrabe ich für mich das Thema nun einfach, insbesondere auch deshalb, weil DHL scheinbar für neue Karten sowieso das Verfahren geändert hat. Mein Rat lautet nun:
Bestellt euch eine neue Karte und scannt oder fotografiert den Code wie unten beschrieben!

Hier nun der Rest des Artikels in überarbeiteter Form:

Anmerkung: Weiter unten im Artikel habe ich es näher ausgeführt, aber hier noch einmal in aller Deutlichkeit: Das ist kein Verfahren, um Kundenkarten zu fälschen! DHL hat sich entschieden, nur noch die mTAN bzw. die dazugehörige Handynummer als Sicherheitsmerkmal zu betrachten. Das lässt sich allein daran belegen, dass man an einigen Packstations die Postnummer von Hand eintippen kann und keine Karte und keinen Barcode benötigt. Euer DHL Konto ist geschützt durch euer Passwort und eure Handyummer, nicht durch die Kundenkarte.

Anmerkung 2: Es häufen sich die Berichte, dass die Methode nicht mehr oder nicht mehr für jeden funktioniert, nachdem nun neue Barcodes aufgetaucht sind, die sich scheinbar nicht mehr generieren lassen. Zusätzlich funktionieren für diese Personen auch die generierten nicht mehr – dies lief zuvor ebenfalls parallel.

DHL hat letztes Jahr die Packstations aktualisiert und wird scheinbar nur noch neue Kundenkarten zum Login an die Packstation ausliefern. Noch funktionieren die ehemals ausgelieferten „Goldcards“. Diese hatten die Postnummer und den Namen aufgedruckt und funktionierten an der Packstation mittels Magnetstreifen.

Früher (Anmerkung: geht bei neuen Packstations teilweise wieder!) konnte man sich sogar ganz ohne Karte an der Packstation einloggen. Aufgrund vielfachen Betruges mittels Packstations wurde das jedoch eingeschränkt und die Hürde mittels mTAN und den Magnetstreifenkarten deutlich erhört. „Deutlich“ ist natürlich relativ zu betrachten: Im Gegensatz zu Methoden, die keine Hardware (Rohlinge, Schreibgeräte, …) benötigten, sollte die Hürde deutlich größer geworden sein.

Nun gibt es also die neuen Karten, die unter anderem einen Barcode aufgedruckt haben, mit dem man sich an der Packstation einloggt (wird wie ein Paket gescannt). Neukunden, sowie diese, deren Goldcard defekt oder abhanden gekommen ist, erhalten die gelben Barcode-Karten.

Idee

Auf MyDealz entstand zu dem Thema. Ein User vermutet, dass DHL bald die Hardware Keypads und Magnetstreifenleser loswerden möchte, was ein Grund für den Austausch der Karten sein kann und dadurch bestätigt wird, dass die mTAN gar nicht mehr über das Keypad sondern nur noch über den Touchscreen einzugeben ist.

Es stellt sich die Frage: In welchem Format liegt der Barcode vor und kann man ihn aus vorhandenen Informationen generieren, ohne eine neue Karte bestellen zu müssen?

Ein Scan des Codes zeigt schnell, dass es sich um 16 Ziffern haben, die im ITF Format zum Barcode gemacht werden. Auffällig ist eine Zahl zu Beginn, der Rest erschien zunächst sinnlos.

Berechnung

Kompakt sieht die neue Kundennummer also folgendermaßen aus:
entfernt

Beispiel anhand einer zufallsgenerierten Zahl: 20281557 ergibt 3000127976624677

Das Verfahren konnte für 7 bis 9-stellige Postnummern bestätigt werden. Um insgesamt auf 16 Stellen zu kommen, wird nach der führenden Zahl mit Nullen aufgefüllt.

Das ist so einfach, das könnte ein Grundschüler auf einem Blatt Papier ausrechnen! Ich habe es trotzdem auf eine kleine HTML Seite mit Javascript zusammengebastelt:

entfernt

    Tipps:
  • Es werden keinerlei Daten gespeichert oder serverseitig verarbeitet. Alles passiert auf deinem Endgerät (PC, Smartphone) und sogar das Bild wird dort erzeugt. Ihr könnt nach dem Aufrufen des Generators auch die Internetverbindung trennen, wenn ihr mir nicht glaubt, oder das Repository herunterladen und lokal öffnen ;-)
  • Der Code muss für die meisten Apps (z.B. Stocard) eingescannt werden, da die Apps oft keinen passenden ITF Generator für händisch eingegebene Nummern haben. Der Scan kann aber wieder abgebildet werden und funktioniert.
  • Mit einem Click auf den Barcode, wird dieser heruntergeladen oder in einem neuen Tab geöffnet. Diese „Seite“ (es handelt sich um ein .png Bild in Base64-Textformat, lokal auf dem Endgerät) könnt ihr als Favorit speichern, auf den Homebildschirm vom Smartphone legen, oder einfach das Bild herunterladen und an der Packstation direkt vom Handy aus zeigen.
  • Ich habe mir den Code auf Papier gedruckt und viel größer auf die Kundenkarte (oder sonst irgendeine Karte) geklebt, da das Original viel zu klein ist und bei viel Regen oder Sonne nur sehr schlecht funktionierte.

Abschlussworte

Alle Arbeiten hier dienten privaten Forschungszwecken – wie alles, das es hier auf dem Blog zu lesen gibt. Es existiert kein gewerblicher, wirtschaftlicher oder gar krimineller Anreiz. Es besteht keinerlei Verbindung zu DHL Paket GmbH oder deren Produkten, auch wurden keine Hacks oder sonstigen illegalen Methoden während der Forschung verwendet. Der Luhn-Algorithmus wurde vor über 60 Jahren entwickelt und ist heute gemeinfrei.

Natürlich distanziere ich mich von jeglichem Missbrauch dieser Informationen und bereitgestellten Tools (die lediglich der Luhn-Algorithmus in Javascript sowie die Multiplikation mit einer Zahl sind…). DHL scheint die Philosophie zu verfolgen, dass die Login-Information (nicht die mTAN!) nicht geheim sind. Sonst hätte man hier mit Sicherheit ein effektiveres Verfahren wählen sollen. DHL bezeichnet die Kundenkarte in der Pressemitteilung zwar als „Sicherheitsmerkmal“, hebt aber nochmal das mTAN Verfahren als solches hervor.

Ich bin eigentlich auch der Meinung, dass das notwendig und nicht sehr schwer umzusetzen gewesen wäre. So ist klar, dass eine Kundenkarte (das galt auch schon für die Goldcard) bei Verlust nicht einzeln gesperrt werden kann, sondern nur das ganze DHL Konto. Wäre ein zufälliger, individueller Part in der Kartennummer, der den einzelnen Packstations als „Whitelist“ gar nicht von jedem einzelnen Kunden bekannt sein müsste, könnte man wenigstens eine Blackslist führen, sodass doch einzelne Login-Karten bzw. Codes gesperrt werden könnten. Ist aber nicht so!

Praktisch ist der Barcode, weil man ihn auf dem Handy immer dabei haben oder durch Ausdrucke auch in mehrere Autos legen könnte – oder einfach neu berechnen, wenn man die Karte verloren oder vergessen hat. Das ist ein schöner Vorteil für den Kunden, wenn auch von DHL wahrscheinlich nicht gewünscht, denn nun könnten sich mehrere Personen viel leichter ein Packstation-Konto teilen.

Viel schlimmer sind jedoch die nicht vorhandenen Sicherheitsgedanken bei diesem System, was wie eingangs beschrieben, die Hürde für den Missbrauch darauf reduziert, dass man doch wieder nur die Postnummer zum Login (zumindest zur „Identifizierung“) an der Packstation benötigt (neben der mTAN, das ist klar..).

Ich habe mich als Kunde auch an DHL gewandt. Telefonisch geht da scheinbar absolut gar nichts (Callcenter, 2 verschiedene Mitarbeiter ohne Ahnung, kein Vorgesetzer, kein technischer Ansprechpartner). Auf eine schriftliche Antwort warte ich seit einigen Tagen (seit 5.2.18, Kontaktformular). Das Anliegen wurde zwar in die Fachabteilung weitergeleitet, aber ich habe auch auf Nachfrage am 14.2.18 keine Antwort mehr bekommen. Es wäre schön, wenn sich die DHL Paket GmbH dazu äußern würde! Stand 07/2018: Keine Meldung. Aber scheinbar ein neues Verfahren für die Barcodes.

Hätten wir einen echten Bug bzw. Exploit an der Packstation entdeckt oder gar das System gehackt, würde ich das natürlich nicht öffentlich und ohne Vorwarnung herausposaunen. Das ist aber nicht der Fall  – es ist wirklich nur die Multiplikation mit einer Zahl. Der Rest des Codes ergibt sich nur, um die Information in ein einheitliches Format zu gießen (also 16 Stellen inkl. Prüfziffer, die bei Barcodes üblich ist). Da kann man keinen Algorithmus, keine Sicherheitsgedanken oder irgendwas erkennen, das erahnen ließe, dass DHL sich etwas Schützenswertes bei diesem Verfahren gedacht hat.