Öffentlich zugängliche Coronavirus-Testergebnisse – das heißt, wie man Daten nicht sichert

TL;DR – Geburtsdatum oder Pesel-Nummer ist keine gute Idee, um den Zugriff auf Daten zu sichern.

Rätsel – was unterscheidet die beiden bilder unten?

Lassen Sie uns jedoch am Anfang beginnen. Leider geht Bequemlichkeit, wie so oft in der IT-Welt, nicht Hand in Hand mit Sicherheit. Ich denke, dieses Mal war es ähnlich. Es gibt jedoch eine Reihe sensibler Daten, bei denen keine Kompromisse eingehen dürfen. Solche Daten sind unter anderem Informationen über unseren Gesundheitszustand.

Alarmiert durch die Nachricht von meinem Freund Kacpra, wie Zugang zu Laborergebnissen gewährt wird, beschloss ich, die Dafür verantwortliche Lösung genauer zu untersuchen.

Wie Sie in den obigen Grafiken sehen können , benötigen Sie zwei Informationen, um über die Funktionalität "vereinfachte Anmeldung" auf Ihr Ergebnis zugreifen zu können:

  • die Auftrags-ID, bei der die nachfolgenden Auftragsnummern steigen;
  • Geburtsdatum des Auftraggebers [day=X&month=X&year=X]

Bei bestimmten Annahmen beträgt die Anzahl der Kombinationen von Geburtsdaten, die der Auftragskennung zugeordnet werden können, nur etwa 19 000 Kombinationen. Es ist nicht schwer zu erraten, dass es kein großes Problem ist, alle diese Kombinationen zu generieren und zu überprüfen, ob sie mit der Auftragsnummer übereinstimmen.

Es stellte sich heraus, dass meine Vermutungen richtig waren und nach mehreren hundert Enumerationen gelang es mir, die Zugriffsdaten abzugleichen:

Intruder Enumeration

Dies ermöglichte es, sensible Patienteninformationen wie:

  • Name;
  • Name;
  • Pesel;
  • Geburtsdatum;
  • Wohnadresse;
  • das Testergebnis;
Coronavirus-Testergebnisse
Coronavirus-Testergebnisse

Ein weiteres Beispiel für einen erfolgreichen Enumerationsversuch:

Burp Intruder Enumeration
Coronavirus-Testergebnisse

Unmittelbar nach bestätigung meiner Annahmen über die Anfälligkeit meldete ich diesen Fehler den Verantwortlichen der Software zusammen mit Reparaturempfehlungen:

E-Mail mit Sicherheitsfehlermeldung

Was tun, wie man lebt?

Einer der am häufigsten verwendeten Schutzmaßnahmen gegen diese Art von Angriffen ist die Implementierung des Captcha-Mechanismus. Ein Anwendungsbenutzer wird nach mehreren (z. B. drei) fehlgeschlagenen Versuchen, auf die Auftragsdaten zuzugreifen, aufgefordert, den angezeigten Captcha-Code umzuschreiben. Beachten Sie jedoch, dass die Implementierung eines solchen Mechanismus nur (oder bis) eine Verlangsamung des Angreifers darstellt, der in den einfachsten Fällen in der Lage sein wird, das Geburtsdatum mit Hilfe von OCR-Scannern oder dedizierten Captcha-Lesediensten weiter zu brutforsieren.

Eine bessere und von mir empfohlene Sicherheit besteht darin, über ein entsprechend langes, zufälliges Passwortauf die Ergebnisse des Auftrags zuzugreifen, das an die Telefonnummer des Auftraggebers geht.

Glücklicherweise wurde der Fehler durch die Implementierung des reCAPTCHA-Mechanismus von Google recht schnell behoben:

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!). Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Speichere in deinen Favoriten diesen permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert