Door een lek op de site Energie-veiling.nl was het mogelijk om namens Nuon deel te nemen aan veilingen. Ook andere sites zijn lek.
Op de site Energie-veiling.nl kunnen energieleveranciers en grote bedrijven en organisaties deelnemen aan veilingen voor elektriciteit en gas.
Een bedrijf dat goedkoop elektriciteit wil inkopen, logt op de site in en vult in hoeveel kilowattuur het wil hebben. Energieleveranciers loggen eveneens in en geven door voor hoeveel geld ze de elektriciteit kunnen leveren. Het bedrijf kiest vervolgens voor de goedkoopste aanbieder.
Door een slechte beveiliging van Energie-veiling.nl kon tot woensdagmiddag echter iedereen inloggen als één van de energieleveranciers: Nuon. Zowel bij de gebruikersnaam als bij het wachtwoord de code ‘ OR ‘1’=’1 invullen was voldoende.
Eenmaal ingelogd is het mogelijk om biedingen uit te brengen. Woensdag kon dat bijvoorbeeld op een elektriciteitscontract voor de bedrijven Medsize en Rouveen Kaasspecialiteiten. De mogelijkheid om te bieden op een contract voor het ministerie van Defensie was net afgelopen. Volgens Jan Vroomans van Energie-veiling.nl ging het bij Defensie om een ’testveiling’.
Extra controles
Nadat Webwereld woensdag contact opnam met Energie-veiling.nl heeft de site het lek gedicht. “Hier ben ik natuurlijk niet blij mee”, aldus Vroomans.
De kans dat iemand anders dan een medewerker van Nuon met succes een bod zou kunnen uitbrengen bij een veiling is volgens Vroomans overigens nihil. “Er zijn nog allerlei extra controles ingebouwd. Elke keer als er een bod wordt uitgebracht, krijgen wij daarover een mailtje, evenals Nuon. Als er gekke dingen gebeuren, zien wij dat meteen.”
SQL injection
De site Energie-veiling.nl was vatbaar voor SQL injection. SQL is een soort scripttaal waarmee je een database kunt besturen. Als het goed is, houdt de maker van een webapplicatie goed in de hand welke opdrachten er aan de SQL-database worden gegeven.
In veel gevallen schiet de beveiliging echter te kort. De makers van kwetsbare sites hebben dan een programmeerfout gemaakt of zijn vergeten om voldoende beveiligingsmaatregelen te nemen. In zulke gevallen worden de opdrachten van gebruikers van de webapplicatie niet goed gefilterd.
Daardoor kan een bezoeker van een dergelijke site de database allerlei opdrachten laten uitvoeren, waarvan de beheerder waarschijnlijk liever niet heeft dat iedereen dat kan.
Het zonder gebruikersnaam en wachtwoord inloggen op een site is niet de enige vorm van SQL injection. Met deze techniek is het ook mogelijk om complete databases te wissen, willekeurige programma’s uit te voeren of een website te ‘defacen’ (bekladden).
Volgens beveiligingsexpert Martijn Brinkers komt het nog geregeld voor dat sites kwetsbaar zijn voor SQL injection. Slordig, meent Brinkers. “Dat dat een paar jaar geleden gebeurde, kan ik me voorstellen, maar nu moet SQL injection toch wel bij iedere webdeveloper bekend zijn.”
Schoolcijfers aanpassen
Toch blijkt het nog vaak mis te gaan. Er zijn tientallen Nederlandse sites tegen waarvan de beveiliging niet op orde is. De site van het Nederlands Talen Instituut (NTI) bijvoorbeeld. Daar is het mogelijk om in te loggen als docent.
Als ‘docent’ is het met behulp van een naam en docentnummer mogelijk om cijfers in te voeren. Het docentnummer wordt verschaft bij het inloggen. Voor de zekerheid geeft de NTI ook een handleiding waarin wordt uitgelegd hoe docenten cijfers online moeten invullen.
Behalve cijfers veranderen, kunnen ingelogde ‘docenten’ ook opleidingsinformatie veranderen of verwijderen. Hoewel het NTI woensdagmiddag beloofde dat het lek woensdagavond verholpen zou zijn, was het donderdagochtend nog altijd mogelijk om in te loggen als docent ‘J. Leunissen’. Het aanpassen van cijfers leek echter niet meer mogelijk.
Ebanner.nl
Ander voorbeeld, andere site, zelfde truc. Via de site Ebanner.nl was het tot woensdagavond mogelijk om bannercampagnes te beheren. Gebruikers voeren hun banners in, bepalen op welke sites ze willen adverteren en hoeveel keer per dag hun banner moet worden vertoond.
Ook als je geen bannercampagne wilt beheren en gewoon eens wilt zien wat adverteerders betalen, was het mogelijk om in te loggen. Inloggen met de code ‘ OR 1=1— was wederom genoeg.
Eenmaal binnen was het eventueel ook mogelijk om campagnes te bewerken: een indringer kon het budget of de prijs per duizend bannervertoningen aanpassen. Ook het beëindigen van de campagne behoorde tot de mogelijkheden.
Dolf Kars van Ebanner.nl geeft toe dat er sprake is van een fout. “Op deze manier inloggen is geen rocket science, maar het is niet netjes dat wie dan ook de klantgegevens kan inzien.”
Update, 15/4 13:50 uur: Wie sinds donderdagmiddag Energie-veiling.nl bezoekt, krijgt de melding ‘Kan de pagina niet vinden.’ Energie-veiling.nl is naar aanleiding van de publiciteit op Webwereld offline gehaald. Via het adres Energie-keuze.nl is de site nog wel gewoon te bezoeken.