Analyse: De worm van negen miljard

Het was een kwestie van seconden. Meer tijd had Charlie Miller niet nodig voor het kraken van de Safari-browser, draaiend in Mac OS X. De software was bijgewerkt met alle beschikbare updates.

Bugs tellen

Bugs worden gewoonlijk geteld per KLOC of MLOC (kilo/million lines of code, duizend of een miljoen regels broncode). Software van de allerbeste kwaliteit bevat per KLOC circa één bug. Dat komt neer op een enkele fout per dertig tot veertig gedrukte pagina's tekst; een kwaliteitsniveau dat buiten de software-industrie zelden wordt bereikt. Maar het is lang niet goed genoeg. Want de huidige browsers bestaan uit pakweg twee miljoen regels code. Een besturingssysteem is al gauw zes keer zo zwaar. In elk groot, modern softwarepakket schuilen dus minstens enkele duizenden bugs.

En dan hebben we het over functionele defecten, bugs van het soort dat in normaal gebruik zo nu en dan een merkbare storing veroorzaakt. Fouten in de beveiliging zijn vaak onzichtbaar tot een cracker ze exploiteert. Watts Humphrey (Carnegie Mellon universiteit, daarvoor directeur softwarekwaliteit voor IBM) schrijft:
"De huidige MLOC-systemen met duizend functionele defecten kunnen gemakkelijk vele duizenden beveiligingsfouten bevatten. Bijna al die fouten kunnen open deuren worden voor een dief of terrorist."

"In elk groot, modern softwarepakket schuilen minstens enkele duizenden bugs"

'Malware' verspreid door crackers veroorzaakt niet alleen directe financiële schade. IT-beveiligers zoals Symantec, McAfee en Trend Micro halen intussen een gezamenlijke omzet van circa 30 miljard dollar per jaar. De beveiliging maakt ook onze hardware duurder, want er is heel wat extra rekentijd, werkgeheugen en schijfruimte voor nodig. Dan zijn er nog de kosten van herstelwerkzaamheden, speciale trainingen en verloren productiviteit.
Het Amerikaanse Cyber Secure Institute schat de totale schade veroorzaakt door Conficker (een recente 'worm' die actief gevaarlijk is voor Microsoft Windows) op negen miljard dollar. En dat is er slechts een van vele.