26 April 2019

Informaticastudenten van Inholland Haarlem testen OpenSource-applicatie

Klaas-Pieter Majoor
Automation

Iets doen wat niet mag en daar een prijs voor krijgen?

Het klinkt nogal tegenstrijdig. Toch overkwam het Joey Morit (links op de foto) en Jasper Stedema (rechts op de foto). De twee tweedejaarsstudenten Informatica van Inholland Haarlem hackten in rap tempo een game. “Met het veranderen van een aantal variabelen in het javascript was dat zo gedaan. Nu staan we allebei op eenzame hoogte in de top vijf van de highscore”, glunderen de hackers.

Een echte illegale hack was het niet

“We hadden aan het einde van de module Linux nog wat tijd over. Toen heb ik de klas uitgedaagd een Linux-game te hacken”, verklaart docent Yuri van der List de actie. En het was ook niet zomaar een game maar eentje die hij samen met zijn collega’s van HCS Company, waar hij tevens als software-integratiespecialist werkt, ontwikkelde. “De game is ontwikkeld om te bewijzen dat we een schaalbare OpenSource-applicatie kunnen maken die stabiel blijft, ongeacht hoeveel mensen tegelijk spelen. Omdat de game eenvoudig te hacken bleek, hebben we er in een later stadium nog een beveiligingssausje overheen gegoten. Voor de grap, en om te kijken of de beveiliging nu wel waterdicht was, heb ik de studenten de opdracht gegeven de game te kraken. Ik had wel verwacht dat het een van de studenten op den duur zou lukken. Maar dat Joey en Jasper het in één dag al voor elkaar zouden hebben? Nee, daar had ik niet op gerekend.”

Highscore
De game is een Tetris-achtig spel waarbij je binnen 60 seconden zoveel mogelijk horizontaal bewegende blokjes op elkaar moet stapelen. In totaal werden er in korte tijd 702 hackpogingen ondernomen. Slechts twee daarvan slaagden er daadwerkelijk in om de game te kraken. Als eerste lukte het Joey. “Vanaf het moment dat we de opdracht kregen, ben ik alleen nog maar bezig geweest hoe ik het voor elkaar kon krijgen. Ik kwam erachter dat je in het javascript de variabelen van de game kan aanpassen. Ook je score. Die heb ik op een onrealistisch hoog getal gezet en voilà, toen stond ik bovenaan in de highscore.” Jasper liet zich inspireren door Joey, en bedacht een andere manier om het spel te manipuleren. “Ik heb het blokje, dat continu heen en weer beweegt, in het midden stilgezet en gelijk ook de valhoogte en tijd aangepast. Dat maakt het kinderlijk eenvoudig om blokje op blokje op blokje te stapelen.”

Eén groot leermoment
Kinderlijk eenvoudig, zo klinkt het. Maar is dat het ook? “Het kost tijd om erachter te komen hoe het spel in elkaar zit en hoe je het kunt beïnvloeden. Ik had verwacht dat ze daar langer mee bezig zouden zijn”, geeft Yuri toe. “Daarbij, het was een optionele opdracht en geen verplichte stof. Dat je er dan zo dedicated mee bezig bent, en bereid bent om in je eigen tijd dingen echt uit te spitten, daar hou ik van.” Niet alleen voor de studenten was de hackopdracht een leermoment, ook Yuri zelf heeft er veel van opgestoken. “De beveiliging was gewoon niet goed, dat hebben Joey en Jasper wel aangetoond. De volgende keer zal ik bij het ontwerpen van een game de beveiliging eerder dichttimmeren. Voor zover mijn kennis reikt, want de methode van Jasper had ik echt niet zien aankomen. En ik ga op zoek naar nog meer van dit soort opdrachten! Want dat heb ik ook geleerd: praktijkopdrachten werken soms beter dan saaie theoretische lessen.”

Vele wegen leiden naar Rome
Geen prijzengeld voor hun geslaagde hack, wel een beker. “En een stageplaats. De directeur van HCS Company is altijd op zoek naar mensen met kennis en de juiste instelling, die initiatief tonen en verder kijken dan wat ze geleerd krijgen.” De prijzenbeker krijgt een mooie plek binnen de opleiding. En Joey en Jasper? Die zijn nog lang niet klaar met de game. “Kijk, je kunt de game ook pauzeren net voor de score naar de server wordt verstuurd en dan je score aanpassen. Nu nog op zoek naar een manier om het aantal blokjes aan te passen, dat moet ook mogelijk zijn.” Terwijl de twee studenten zich weer over de laptop buigen, schudt Yuri lachend zijn hoofd. “Er blijken dus nóg meer wegen te zijn die naar Rome leiden…”

Nieuwsgierig naar de game? Deze is gratis en voor niets te spelen (of te hacken) via https://hcsgame.io.