Bij het uitvoeren van een penetratietest, ofwel pentest, bestaan er drie methoden om deze uit te voeren: whitebox, greybox of blackbox. Ik ontvang met regelmaat de vraag wat het verschil is tussen deze methoden. Het verschil zit vooral in de hoeveelheid kennis en achtergrondinformatie die een tester of whitehat hacker voor aanvang van een pentest ontvangt. In dit blog artikel is meer uitleg over iedere methode terug te vinden.
Blackbox pentest
Wanneer een tester minimale of geen voorkennis heeft is er sprake van de blackbox methode. Dit betekend dat de tester vooraf uitgebreid vooronderzoek pleegt naar een organisatie of object. Dit noemen we ook wel de verkenningsfase. Hierbij moet je denken aan het inzichtelijk maken van werknemers in dienst, inzicht krijgen in de type applicaties / systemen en hun onderlinge relaties (systeemarchitectuur), openstaande vacatures, social media profielen etc. Uiteindelijk worden resultaten uit de verkenningsfase gebruikt om aanvalsvectoren te bepalen.
Whitebox Pentest
Bij een whitebox pentest is alle informatie over de te testen organisatie, applicatie of infrastructuur beschikbaar. Dit is de snelste en eenvoudigste methode om een pentest uit te voeren. De verkenningsfase kan vrijwel helemaal worden overgeslagen, mits er voldaan wordt aan een goede informatievoorziening. Er kan direct gestart worden met het bepalen van aanvalsvectoren om een infrastructuur, applicatie of object te testen.
Greybox Pentest
Op het moment dat een tester gedeeltelijk informatie krijgt spreken we over greybox testen. Dit kan bijvoorbeeld een lijst met inlogaccounts zijn of een gedeeltelijk overzicht van de systeemarchitectuur. Aan de hand van deze informatie kan de verkenningsfase verder worden uitgebreid waarna er aanvalsvectoren bepaald worden.
Scoping en timeboxing
Ongeacht welke methode er wordt gekozen: het is aan te raden om vooraf altijd een scopebepaling te definiëren. Welke objecten, functionaliteit of systemen moeten er onderworpen worden aan een pentest? Hierbij moet gezegd worden dat dit bij een blackbox test lastiger is om te bepalen. Hierbij speelt timeboxing ook een rol. Bij een whitebox test is het eenvoudiger te schatten hoeveel tijd deze kost. Voor een blackbox test is dit lastiger om in te schatten.