Reading time: 2 minutes
Author:
Security-researchers van de Universiteit van Washington zijn er als eerste in geslaagd om een computer via dna te hacken. Dat was wel een computer die specifiek bedoeld is om dna te analyseren; ze konden een bug in de software met een specifieke input triggeren. De demonstratie onderstreept dan ook vooral dat de dna-analysewereld zich nog te weinig zorgen maakt om security. En bovendien dat programmeurs zich nooit veilig kunnen wanen wat betreft het uitbuiten van hun bugs, ook als ze zelf niet direct zien hoe dat tot beveiligingsproblemen kan leiden. Het werk wordt volgende week gepresenteerd op de Usenix Security-conferentie in Vancouver.
In dna-moleculen is informatie gecodeerd aan de hand van de volgorde van de bouwstenen. Het bepalen van die volgorde is niet eenvoudig, maar medisch wel erg relevant. Daarom wordt er de afgelopen decennia hard gewerkt aan het terugbrengen van de kosten hiervan. Automatisering en rekenkracht spelen hierin een belangrijke rol. En dus biedt dat proces een hoop aanknopingspunten om computersystemen te hacken, constateren de onderzoekers.
Voor hun demonstratie richtten ze zich op de stap die volgt nadat de machines hun werk hebben gedaan en hun ruwe output verder verwerkt moet worden. Daarvoor wordt een pijplijn doorlopen met vele verschillende tools. De onderzoekers brachten een kwetsbaarheid aan in een van die programma’s: een buffer met vastgestelde grootte.
Hiermee konden ze een buffer overflow ontwerpen die de instructiepointer naar arbitraire code dirigeert. Vervolgens lieten ze de benodigde dna-code hiervoor synthetiseren en vervolgens sequencen. Die omweg lijkt in eerste instantie onnodig, het ging immers alleen om het digitale bestand. Maar toch was het nuttig: tijdens hun eerste poging bleek de code te lang en waren er diverse fysieke eigenschappen die het sequencen lastig maakten. Aan de hand van die bevindingen deden ze een tweede poging, die inderdaad shell-toegang wist te geven.
De onderzoekers moesten wel wat trucks toepassen om de exploit werkend te krijgen. Zo moesten ze een 32 bit-versie van het besturingssysteem gebruiken om de exploit klein genoeg te kreigen, en beveiligingsmaatregelen zoals aslr uitschakelen. Bovendien brachten ze de kwetsbaarheid zelf aan in de software.
Maar dat is niet ongebruikelijk bij een eerste demonstratie. Waar het om gaat is dat de methode werkt als er niet goed over security wordt nagedacht. En dat bleek zo te zijn toen de onderzoekers een aantal veelgebruikte opensource tools onder de loep namen: vele ervan bleken regelmatig de fout in te gaan wat betreft de best practices.