Penetratietesten is de praktijk waarbij je regelmatig beveiligingsexperts inhuurt om met opzet je eigen systemen aan te vallen, zodat je de zwakke plekken vindt voordat echte aanvallers dat doen. Waar een losse penetratietest een eenmalige gebeurtenis is, is penetratietesten de gewoonte om dat keer op keer te doen terwijl je software verandert.
Een mooi beeld is een gebouw dat steeds verbouwd wordt. Telkens als je een vleugel aanbouwt, een muur doorbreekt of een nieuwe deur plaatst, haal je de beveiligingsadviseur terug om het hele pand opnieuw na te lopen. Het gebouw is nooit ‘af’, dus het testen is dat ook nooit. Elke ronde vangt de gaten op die je laatste wijzigingen veroorzaakten, en precies daar sluipen lekken meestal binnen.
Testers werken meestal vanuit een bekend raamwerk zoals de OWASP Top 10 en combineren geautomatiseerde vulnerability scanning met handmatig speurwerk. Die combinatie telt: de scanner dekt snel de breedte, de mens vangt de slimme, aaneengeregen aanvallen die een tool mist. Stel je levert in maart een nieuwe upload-functie op. Een test in april kijkt of iemand er een uitvoerbaar bestand doorheen kan smokkelen, iets waar het rapport van vorig jaar nooit naar keek. Elke cyclus eindigt met een rapport op volgorde van ernst en een lijst met oplossingen om te controleren.
De scope kun je op verschillende manieren afbakenen. Bij een black-box test krijgt de ethical hacker niets meer dan je URL, net als een echte buitenstaander. Bij een white-box test krijgt hij de broncode en accounts, zodat hij in dezelfde uren dieper kan graven. Geen van beide is ‘beter’; ze beantwoorden andere vragen, en serieuze systemen zien meestal na verloop van tijd een mix.
Bij TopDevs bouwen we penetratietesten in de levenscyclus van langlopende klantsystemen, met nieuwe tests na grote releases in plaats van beveiliging als een eenmalig vinkje te behandelen.