Tot deze opmerkelijke conclusie komt Michael Howard, een securitygoeroe van Microsoft en schrijver van het boek 'Writing Secure Code'. Op Microsofts Security Development Lifecycle blog gaat hij dieper in op het kwetsbare IE-lek, door Howard omschreven als een 'time-of-check-time-of-use' (TOCTOU)-bug. De bug zat al minimaal negen jaar in de browsersoftware.

“We hebben geen idee hoe de bug is gevonden”, schrijft Howard. “Geheugengerelateerde TOCTOU-bugs zijn lastig op te sporen met code reviews.” Volgens Howard krijgen de ontwikkelaars van Microsoft uitleg over TOCTOU, corruptie van geheugen en het gebruik van vrije geheugenblokken. “Maar we geven geen les over geheugengerelateerde TOCTOU-aangelegenheden.”

Fuzz testing

De testgereedschappen van Microsoft hebben de bug ook over het hoofd gezien, zo geeft Howard toe. De beveiligingsexpert geeft daarbij het voorbeeld van 'fuzzers', geautomatiseerde tools die input genereren om te zien of systemen falen, en zo ja waar. “Fuzz testing is in theorie geschikt om deze bug te vinden. Vandaag de dag is er echter geen geschikte fuzz testing-methode voor deze code.”

Lesstof uitgebreid Howard laat in zijn blog weten dat Microsoft zijn training voor ontwikkelaars uitbreidt met lesstof over geheugengerelateerde TOCTOU-bugs. Ook doet de beveiligingsspecialist een oproep aan de gehele software-industrie om beter gebruik te maken van de beveiligingsmechanismen die nu al door Windows worden geboden. “Ik denk dat deze bug aantoont dat code nooit voor de volle honderd procent correct kan zijn. Dus in het belangrijk dat meerdere beveiligingsmechanismen worden ingezet.” Bron: Techworld