Website Witte Kruis Alarmpenning lekt gegevens van patienten

De Alarmpenning is een dienst van het Witte Kruis om informatie van mensen met een medische aandoening te koppelen aan een penning met een gegraveerde referentiecode. Informatie zoals medicatie en alarmeringsgegevens worden gekoppeld aan de alarmpenning zodat hulpverleners tijdens een medische noodsituatie deze informatie kunnen opvragen.

Bij het inschrijven door mijn vrouw voor een alarmpenning viel mij een ernstig beveiligingsprobleem op, de website van de dienst Alarmpenning van het Witte Kruis stelt mensen in staat om een aanvraag die in behandeling is in te zien zonder authenticatie. Op deze manier kan de pagina privé gegevens van personen lekken en zijn potentiële aanvallers in staat om de gegevens die ingevuld zijn te wijzigen. Tijdens de aanvraag worden de volgende gegevens gevraagd:

- Persoonsgegevens deelnemer: Voorletter, tussenvoegsel, achternaam, geslacht, geboortedatum, adres, postcode, plaats, thuis telefoon, mobiele telefoon, email-adres

- Persoonsgegevens waarschuwingsadres: Voorletters, achternaam, geslacht, relatie tot deelnemer, adres, postcode, plaats, thuis telefoon, mobiele telefoon

- Gegevens huisarts: Voorletters, achternaam, adres, postcode, plaats, telefoon praktijk, telefoon spoed

- Gegevens medisch specialist: Voorletters, achternaam, specialisme, ziekenhuis, locatie, telefoon

- Spoedgegevens: een vrij veld waar informatie over de aandoening opgenomen kan worden

- Medicijnen: medicijninformatie

- Patientbrieven en medicatielijsten

Bovenstaande gegevens zijn dus ook zonder authenticatie op te vragen en te wijzigen.

Op 19 Juli is er een melding gedaan bij het Witte Kruis van deze kwetsbaarheid, hierop is vrij snel maar zonder urgentie gereageerd. Bij aandringen werd er gecommuniceerd dat er naar hun mening geen datalek heeft plaatsgevonden. Tot op heden is de mogelijkheid echter nog steeds aanwezig.

De methode om dit lek uit te buiten werkt als volgt:

Bij het aanmelden wordt een unieke code gegenereerd (zo te zien aan de hand van de voorletter en achternaam), deze code wordt vervolgens in de URL meegegeven. Iemand die het ID in handen heeft kan vervolgens alle gegevens die een deelnemer heeft ingevuld inzien.

Het registreren voor de website gaat met de url https://www.alarmpenning.nl/aanmelden
Na het invullen van de voorletter en achternaam wordt de URL getransformeerd naar https://www.alarmpenning.nl/Aanmelden?id= met daarachter een gegenereerde sleutel. Deze sleutel indentificeert de sessie en dus de deelnemer die zich aan het inschrijven is. Alle opvolgende pagina’s zijn genummerd als volgt:

https://www.alarmpenning.nl/Aanmelden1?id=$ID
https://www.alarmpenning.nl/Aanmelden2?id=$ID
https://www.alarmpenning.nl/Aanmelden3?id=$ID

Als security professional zou ik het Witte Kruis willen aanraden om de aanmelding per direct onbereikbaar te maken en te vervangen door een downloadbaar formulier. Vervolgens kan er gewerkt worden aan het beveiligen van het digitale aanmeldformulier.

Er zou minimaal gebruik gemaakt moeten worden van een cookie om de invoer te koppelen aan een sessie op de computer. Beter nog zou naast het zetten van een cookie het aanmaken van een account zijn. Pas als er een account is aangemaakt en geverifieerd is zou een aanmelder de gegevens via een beveiligde verbinding moeten kunnen invoeren.

Ik hoop dat het publiceren van dit lek er toe leidt dat het Witte Kruis zorgvuldiger gaat omspringen met de persoonlijke gegevens van patiënten die vertrouwen op de nuttige toevoeging die de alarmpenning op hun leven kan zijn.

Proof of concept:

Disclaimer: Op geen enkel moment is er privé data door mij opgevraagd, alle informatie uit deze proof-of-concept is verkregen door een testgebruiker aan te maken.

Om dit veiligheidslek te reproduceren gaat men naar de URL https://www.alarmpenning.nl/aanmelden:

Na het invullen van voorletters en achternaam verandert de URL naar https://www.alarmpenning.nl/Aanmelden?id=a98d1be3-8a10-4bd0-b7d8-eee32089af7c

Om de pagina’s met gegevens aan te passen of uit te lezen kun je door de 3 verschillende aanmeldstappen doorlopen (https://www.alarmpenning.nl/Aanmelden1?id=a98d1be3-8a10-4bd0-b7d8-eee32089af7c):

Pagina 2 (https://www.alarmpenning.nl/Aanmelden2?id=a98d1be3-8a10-4bd0-b7d8-eee32089af7c):

En pagina 3 (https://www.alarmpenning.nl/Aanmelden3?id=a98d1be3-8a10-4bd0-b7d8-eee32089af7c):

Door vervolgens de URL te kopieren en te plakken in een browser (voor deze demonstratie in Incognito modus) is toegang te krijgen tot alle zojuist ingevulde velden:

Dit werkt vanaf elke willekeurige computer en browser en vraagt op geen moment om het invullen van een gebruikersnaam en wachtwoord of voert een controle uit of er een cookie is gezet.