Nieuwe website Ziekenhuis Amstelland was zo lek als een mandje
Het ziekenhuis Amstelland gaf via een simpele SQL-injection toegang tot het CMS. Zo was het mogelijk content te veranderen of contactformulieren af te luisteren. Door op de website op verschillende manieren te testen ontdekte Shirley de Jong, zelf ontwikkelaar van websites, de plek waarop beheerders toegang hebben voor onderhoud aan de website.
Omdat Webwereld deze maand heeft uitgeroepen tot Lektober wilde ik ook weleens proberen of ik ergens kon ‘inbreken’ en heb dat dus geprobeerd bij het lokale ziekenhuis hier. Tot mijn verbazing bleek dat simpeler te zijn dan ik had verwacht. Omdat ik weleens een website maak weet ik ongeveer wel hoe je iets kapot kan maken. Omdat bij Webwereld al diverse zorginstellingen langs gekomen waren begon ik bij het lokale ziekenhuis. En dat was dus meteen raak. Een simpel aanhalingstekentje in het zoekveld gaf al een een foutmelding met een waarschuwing van de database. Dus op zoek naar het loginscherm van het Content Management Systeem. Dat bleek niet heel moeilijk te raden:
/cms/
achter de URL plaatsen was voldoende.Omdat de site dus blijkbaar geen invoervalidatie gebruikte (want foutmelding bij zoekveld) heb ik de volgende code ingegeven bij het veld gebruikersnaam:
bla' OR username LIKE '%' LIMIT 2,10 -- '
. Daarmee heb ik de database-query gemanipuleerd zodat het mogelijk wordt om in te loggen zonder geldige gebruikersnaam en wachtwoord. En tadaa!!! Het werkte, ik was binnen.
Shirley kon alles aanpassen, verwijderen of toevoegen. Zelfs formulieren die bezoekers van de website konden invullen om in contact met hun specialist te komen waren aanpasbaar. Ik kon simpelweg het e-mailadres van dat formulier aanpassen zodat niet de specialist, maar ik de gegevens van die patient kon ontvangen. Uiteraard heb ik niets gedaan, maar netjes het lek gemeld bij het ziekenhuis dat het al binnen 12 uur gedicht heeft. De bovenstaande methode is dus niet meer toepasbaar.
De website van het ziekenhuis is nieuw en daarom is het volgens een woordvoerder van het ziekenhuis mogelijk dat er nog wat verbeteringen worden doorgevoerd. Inmiddels zijn er ook aanvullende verbeteringen met betrekking tot beveiliging doorgevoerd. Zo is de code geüpdatet en werd de url veranderd, verder is de hele site doorgelicht.