De technische pers schrijft voortdurend over nieuwe en gevaarlijke 'zero-day'-exploits. Maar wat is een zero-day exploit precies, wat maakt het zo gevaarlijk en - belangrijker nog - hoe kun je jezelf beschermen?
Zero-day-aanvallen vinden plaats wanneer de slechteriken de goeden voor zijn en ons aanvallen met kwetsbaarheden waarvan we niet eens wisten dat ze bestonden. Ze zijn wat er gebeurt als we geen tijd hebben gehad om onze verdediging voor te bereiden.
Software Is Vulnerable
Software is niet perfect. De browser waarin u dit leest, of het nu Chrome, Firefox, Internet Explorer of iets anders is, bevat gegarandeerd bugs. Zo'n complex stuk software is geschreven door mensen en heeft problemen die we nog niet kennen. Veel van deze bugs zijn niet erg gevaarlijk. Misschien kunnen ze ervoor zorgen dat een website niet goed werkt of dat uw browser vastloopt. Sommige bugs zijn echter beveiligingslekken. Een aanvaller die op de hoogte is van de bug, kan een exploit maken die de bug in de software gebruikt om toegang te krijgen tot uw systeem.
Natuurlijk is sommige software kwetsbaarder dan andere. Bijvoorbeeld, Java heeft een eindeloze stroom kwetsbaarheden gehad waardoor websites die de Java-plug-in gebruiken, kunnen ontsnappen aan de Java-sandbox en volledige toegang hebben tot uw machine. Exploits die erin slagen de sandboxing-technologie van Google Chrome in gevaar te brengen, zijn veel zeldzamer geweest, hoewel zelfs Chrome zero-days heeft gehad.
Verantwoordelijke openbaarmaking
Soms wordt een kwetsbaarheid ontdekt door de goeden. De ontwikkelaar ontdekt de kwetsbaarheid zelf of 'white-hat'-hackers ontdekken de kwetsbaarheid en maken deze op een verantwoorde manier bekend, misschien via zoiets als Pwn2Own of het Chrome-bugbounty-programma van Google, dat hackers beloont voor het ontdekken van kwetsbaarheden en deze op verantwoorde wijze openbaar maakt. De ontwikkelaar lost de bug op en brengt er een patch voor uit.
Kwaadwillende personen kunnen later proberen misbruik te maken van de kwetsbaarheid nadat deze is bekendgemaakt en gepatcht, maar mensen hebben de tijd gehad om zich voor te bereiden.
Sommige mensen patchen hun software niet op tijd, dus deze aanvallen kunnen nog steeds gevaarlijk zijn. Als een aanval echter gericht is op een stuk software met een bekende kwetsbaarheid waarvoor al een patch beschikbaar is, is dat geen 'zero-day'-aanval.
Zero-day-aanvallen
Soms wordt een kwetsbaarheid ontdekt door de slechteriken. De mensen die de kwetsbaarheid ontdekken, verkopen het misschien aan andere mensen en organisaties die op zoek zijn naar exploits (dit is big business - dit zijn niet alleen tieners in kelders die met je proberen te rotzooien, dit is georganiseerde misdaad in actie) of gebruiken het zelf. De kwetsbaarheid was mogelijk al bekend bij de ontwikkelaar, maar het is mogelijk dat de ontwikkelaar deze niet op tijd heeft kunnen oplossen.
In dit geval hebben noch de ontwikkelaar, noch de mensen die de software gebruiken een waarschuwing vooraf dat hun software kwetsbaar is. Mensen leren pas dat de software kwetsbaar is wanneer deze al wordt aangevallen, vaak door de aanval te onderzoeken en te leren welke bug deze misbruikt.
Dit is een zero-day-aanval - het betekent dat ontwikkelaars nul dagen de tijd hebben gehad om het probleem op te lossen voordat het al in het wild wordt uitgebuit. De slechteriken weten het echter lang genoeg om een exploit te maken en aan te vallen. De software blijft kwetsbaar voor aanvallen totdat er een patch wordt vrijgegeven en toegepast door gebruikers, wat enkele dagen kan duren.
Hoe u uzelf kunt beschermen
Nul dagen zijn eng omdat we ze niet van tevoren hebben aangekondigd. We kunnen zero-day-aanvallen niet voorkomen door onze software gepatcht te houden. Per definitie zijn er geen patches beschikbaar voor een zero-day-aanval.
Dus wat kunnen we doen om ons te beschermen tegen zero-day exploits?
- Vermijd kwetsbare software : We weten niet zeker of er in de toekomst nog een zero-day-kwetsbaarheid in Java zal zijn, maar Java's lange geschiedenis van zero-day-aanvallen betekent dat dit waarschijnlijk zal gebeuren. (In feite is Java momenteel kwetsbaar voor verschillende zero-day-aanvallen die nog niet zijn gepatcht.) Verwijder Java (of schakel de plug-in uit als u Java moet installeren ) en u loopt minder risico op zero-day-aanvallen. De pdf-reader en Flash Player van Adobe hebben historisch gezien ook nogal wat zero-day-aanvallen gehad, hoewel ze recentelijk zijn verbeterd.
- Verklein je aanvalsoppervlak : Hoe minder software u kwetsbaar hebt voor zero-day-aanvallen, hoe beter. Daarom is het goed om browserplug-ins die u niet gebruikt te verwijderen en te voorkomen dat onnodige serversoftware rechtstreeks op internet wordt weergegeven. Zelfs als de serversoftware volledig is gepatcht, kan er uiteindelijk een zero-day-aanval plaatsvinden.
- Voer een antivirusprogramma uit : Antivirussen kunnen helpen tegen zero-day-aanvallen. Bij een aanval die probeert om malware op uw computer te installeren, kan de installatie van malware door de antivirus worden verijdeld. Een de heuristiek van antivirus (die verdacht ogende activiteit detecteren) kan ook een zero-day-aanval blokkeren. Antivirussen kunnen dan worden bijgewerkt voor bescherming tegen de zero-day-aanval, eerder dan er een patch beschikbaar is voor de kwetsbare software zelf. Daarom is het slim om een antivirusprogramma op Windows te gebruiken, hoe voorzichtig u ook bent.
- Houd uw software bijgewerkt : Als u uw software regelmatig bijwerkt, beschermt u niet tegen zero-days, maar zorgt u ervoor dat u de oplossing zo snel mogelijk na de release hebt. Dit is ook de reden waarom het belangrijk is om uw aanvalsoppervlak te verkleinen en potentieel kwetsbare software die u niet gebruikt, te verwijderen. Er is minder software die u moet bijwerken.
We hebben uitgelegd wat een zero-day-exploit is, maar wat is een permanent en ongepatcht beveiligingsprobleem dat bekend staat als? Kijk of je het antwoord kunt vinden op onze Geek Trivia-sectie !