Zero-day bug, zero-day exploit. De afgelopen maanden duikt dit fenomeen steeds vaker op zo lijkt het. Maar wat is een zero-day bug nu eigenlijk, wat valt eraan te doen en waarom lijkt Microsoft vaak de pineut?

Een zero-day bug is een lek dat ontdekt wordt door derden, buiten de maker van de software om, waarvoor nog geen patch voorhanden is. De naam van zero-day exploit komt van de periode die verstrijkt voordat de softwareproducent het lek ontdekt. Een aanval kan bij wijze van spreken plaatsvinden op de eerste dag van de ontdekking, dag 0 eigenlijk in computerterminologie. Vandaar de naam zero-day.

Bijna elk product wordt getroffen

De afgelopen tijd lijkt het meermaals raak bij Microsoft. Zo werd van vandaag weer een exploit gepresenteerd voor een zero-day die eerder deze maand werd ontdekt. In het begin van de maand werd Microsofts IIS-server software nog geplaagd door een zero-day lek. Hierdoor kon een aanvaller via het FTP-systeem een server overnemen. In juli kwam Active X (wat gebruikt wordt bij Office en Internet Explorer) een paar keer onder vuur te liggen en afgelopen april was het helemaal raak toen Microsoft maar liefst 10 lekken (in ondermeer Excel, Wordpad en IE7) acuut moest repareren vanwege inbraakgevaar. Naast Internet Explorer worden ook andere browsers zoals Firefox en Opera soms geconfronteerd met een lekkend onderdeel.

Wie denkt dat zero-day bugs alleen toebehoren aan oudere softwareproducten, heeft het mis. Ze komen zelfs voor in producten van de toekomst. Zo werd eerder deze maand ook Windows 7 met een lek geconfronteerd dat Microsoft zelf niet wist te ontdekken. Ligt dit aan het bedrijf zelf of is er meer aan de hand?

“Waarom zero-day exploits zich voornamelijk concentreren op Microsoft-producten? Wij denken dat het komt doordat Microsoft-producten veel worden gebruikt”, luidt de simpele uitleg van Jonathan Flietstra van AVG Nederland. Beveiligingsgoeroe Bruce Schneier denkt eerder dat het ligt aan het feit dat software van Microsoft gewoon de meeste bugs bevat. De Luxemburgse beveiligingsexpert en G-SEC CIO Thierry Zoller wijt het aan de pers. “Microsoft is niet altijd het voornaamste doelwit. De meeste media-aandacht gaat naar Microsoft, daarom lijkt het alsof deze software de meeste bugs bevat.”

Vroeger was het nog veel erger

Toch was dit vroeger anders, zo vertelt Zoller. “In de ‘early days’, de late jaren negentig, bevatte Microsoft-software veel meer bugs omdat de software eenvoudigweg slecht geschreven was. Tegenwoordig ligt het anders, want bij het zoeken naar een 0-day lek komt veel expertise kijken, zeker in vergelijking met vroeger. Een bug vinden is nu veel moeilijker, omdat Microsoft veel verbeterd heeft aan de beveiliging.”

Microsoft zelf kijkt ook naar de populariteit van haar eigen programmatuur. In plaats van de hand in eigen boezem te steken, laat Eric Lawrence van MS IE Security weten dat ‘hoe populairder de browser, hoe meer bugs aan het licht komen’. Hij verwijst hierbij naar het feit dat Internet Explorer het meest gebruikte browserprogramma ter wereld is. Bovendien, zo zegt Lawrence, is het niet de browser, maar de omgeving eromheen (ActiveX) waar de lekken zich meestal bevinden.

Volgens Microsoft doet men er alles aan om zero-day exploits te voorkomen. Zo valt het ontwikkelen van Internet Explorer onder de Security Development Lifecycle, een strenge ontwikkelingsmethodologie waardoor lekken in de eigen browser, maar ook in ActiveX-elementen van derden zoveel mogelijk worden voorkomen. Dit komt onder andere door het delen van informatie, tools en ‘best-practices’ tussen Microsoft en leveranciers van ActiveX-elementen.

Schuldvraag

Wie heeft nu eigenlijk de schuld aan zero-days? Is het de ontwikkelaar van de software, of moet misschien het team achter het besturingssysteem op programmeerfouten worden aangesproken? Volgens Thierry Zoller en Bruce Schneier is de vinger moeilijk op de zere plek te leggen. Zoller: “Kwetsbaarheden die door exploits aan het licht komen zijn fouten. Tenzij we claimen dat we perfect zijn kan geen divisie of individu op dergelijke fouten worden aangesproken. Er bestaat altijd een kans dat een bug erdoorheen glipt, ook al wordt het beste traject gevolgd.” Schneier meent dat iedereen verantwoordelijk genoemd kan worden, zowel OS-developers als applicatieprogrammeurs. “Wie de fout gemaakt heeft, is verantwoordelijk”, zegt hij stellig.

Zou Microsoft het zichzelf moeten aantrekken dat zij meestal door hackers onder vuur worden genomen? “In mijn optiek doet Microsoft al veel meer aan beveiliging dan zijn concurrenten. Ze hebben de afgelopen jaren enorme sprongen gemaakt door programmeurs continu te trainen, processen te verbeteren en procedures aan te scherpen”, aldus Zoller. “Laten we ook niet vergeten dat Microsoft een commercieel bedrijf is. Hierdoor is er ook een tijdsdruk.” Schneier begrijpt Microsoft. “Ze doen wat de markt van ze vraagt als het gaat om het vermijden van bugs. Ze werken hard, ook al bestaan er nog steeds veel kwetsbaarheden.”

Tips?

De tip die Schneier wil geven aan programmeurs om fouten te voorkomen is simpel: “Mijn tip is: vertrouw nooit op tips. Beveiliging gaat veel verder dan tips. Verdiep je als programmeur zoveel mogelijk in boeken en volg cursussen.” Ook Zoller benadrukt dat op de hoogte blijven van het vak door te lezen en cursussen te volgen bijdraagt aan het schrijven van foutarme software. Daarnaast wil hij programmeurs nog twee dingen meegeven. “Isoleer code waarin gebruikers om input gevraagd wordt. Vetrouw nooit op input van gebruikers, helemaal niet als deze van buiten het eigen netwerk komt, zoals van internet of wireless LAN. Gebruik ook geen programmeercode waarvan bekend is dat er veel bugs in ontstaan. Kies voor een relatief veilig alternatief, zoals bijvoorbeeld .NET

Hoe kan de gebruiker zich verder wapenen tegen zero-day exploits? Microsoft benadrukt dat je als gebruiker sowieso de laatste versie van softwareapplicaties moet installeren. Ook raadt het bedrijf aan om kwetsbare ActiveX-elementen uit te schakelen door van ‘killbits’ gebruik te maken. Dit zijn kleine registersleutels die automatisch kwetsbaarheden uitschakelen. Meer hierover is te lezen op het Technet-onderdeel van de site van Microsoft. Zoller raadt aan om als gebruiker vooral de pers bij te houden. “En als je het fijne wilt weten, ga dan naar de kennisbanken van Microsoft en houd SANS en andere CERT’s (Computer Emergency Response Teams, red.) bij.”

Bron: Techworld