4.10

View in English

4.10 Penetratietesten en red teaming

Overzicht en motivatie

Je kunt elke maatregel bouwen die je dreigingsmodel vraagt en toch niet weten of ze werken. Documentatie zegt dat de firewall die poort blokkeert, de codereview zegt dat invoer wordt gevalideerd, het beleid zegt dat minste privilege wordt afgedwongen. Offensieve beveiliging is hoe je erachter komt of dat waar is wanneer een gemotiveerde aanvaller erop duwt. Dit hoofdstuk gaat over je eigen systemen bewust aanvallen, met autorisatie, om de zwaktes te vinden voordat een echte tegenstander dat doet.

De discipline loopt langs een spectrum. Aan het lichte eind staat kwetsbaarheidsscanning: geautomatiseerde tools die naar bekende fouten en misconfiguraties zoeken. In het midden staat penetratietesten: een vaardige mens die zwaktes aaneenschakelt om uitbuitbaarheid tegen een gedefinieerd doel te bewijzen. Aan het verre eind staat red teaming: een doelgerichte campagne die een echte tegenstander nabootst over mensen, proces en technologie, en die je vermogen om te detecteren en te reageren test, niet alleen je vermogen om te voorkomen. Elk beantwoordt een andere vraag, en ze verwarren is de gangbaarste manier waarop organisaties geld verspillen en zichzelf met valse zekerheid troosten.

Dit hoofdstuk staat bewust apart van zijn buren. Hoofdstuk 4.4 behandelt beveiligingsoperaties: de defensieve, bewakende kant die op dreigingen let en erop reageert. Dit hoofdstuk is het offensieve tegenstuk dat test of die verdediging werkelijk werkt. Hoofdstuk 4.9 behandelt de veilige softwareontwikkelingscyclus, waar beveiliging wordt ingebouwd in hoe code wordt ontworpen en opgeleverd. Offensief testen valideert het product van die cyclus van buitenaf. Het bouwt ook voort op de fundamenten en cultuur van hoofdstuk 4.1 en de applicatiebeveiligingspraktijken van hoofdstuk 4.2.

Voor grote ondernemingen is offensief testen zowel een risicovermindering als een wettelijke verplichting. Betaalverwerkers, banken en zorgaanbieders staan voor expliciete testeisen. Voor de overheid reikt de inzet tot nationale veiligheid en publiek vertrouwen: de tegenstanders hier zijn goed gefinancierde natiestaten, en de systemen die ze viseren draaien verkiezingen, uitkeringen en kritieke infrastructuur. In beide omgevingen komt de waarde niet uit het rapport maar uit wat je repareert en hoeveel sneller je leert de volgende inbraak te detecteren.

Kernprincipes

  • Stem de opdracht af op de vraag: scannen, pentesten en red teaming beantwoorden verschillende dingen.
  • Verkrijg schriftelijke autorisatie en heldere spelregels (rules of engagement) voordat iemand een systeem aanraakt.
  • Bevindingen zijn waardeloos tot ze zijn hersteld en opnieuw getest. Volg ze als elk ander werk.
  • Een red team bestaat om het blue team beter te maken, niet om te winnen.
  • Bootst echte tegenstanders en hun technieken na, geen generieke checklists.
  • Meet detectie en respons, niet alleen het aantal gevonden kwetsbaarheden.
  • Pas op voor theater: een opdracht afgebakend om te slagen ziet er indrukwekkend uit en bewijst niets.

Aanbevelingen

Begrijp het spectrum van offensieve beveiliging

Begin met benoemen wat je koopt. Kwetsbaarheidsscanning is breed, geautomatiseerd en goedkoop. Draai haar continu tegen je landschap om bekende Common Vulnerabilities and Exposures (CVE’s) en misconfiguraties te vangen. Ze produceert volume en valse positieven, en kan niet vertellen of een fout in context werkelijk uitbuitbaar is. Penetratietesten zet een vaardige tester voor een vast venster tegenover een gedefinieerd doel, zwaktes aaneenschakelend om echte impact te tonen: deze scannerbevinding, gecombineerd met dat zwakke recht, levert domeinbeheerder op. Ze beantwoordt “kan dit specifieke ding worden gebroken, en hoe erg”.

Red teaming beantwoordt een grotere vraag: “als een vastberaden tegenstander ons viseerde, zouden we het merken, en zouden we hem kunnen stoppen”. Ze is doelgericht (exfiltreer deze dataset, bereik dit besturingssysteem), dekt het volledige aanvalsoppervlak inclusief mensen en fysieke toegang en wordt meestal uitgevoerd zonder de verdedigers te waarschuwen. Purple teaming breekt de muur af: rood en blauw werken samen in dezelfde ruimte, de aanvaller voert een techniek uit en de verdediger kijkt of zijn tooling haar vangt, detecties in real time afstemmend. Purple teaming levert vaak meer defensieve verbetering per euro dan een heimelijk red team, omdat elke actie een leermoment wordt.

Kies bewust black-, grey- of white-box

Hoeveel je de tester vertelt bepaalt wat je leert. Black-boxtesten geven niets dan een doelwit, een externe aanvaller zonder voorkennis simulerend. Het is realistisch maar traag, en testers kunnen het hele budget besteden aan verkenning waar een echte tegenstander maanden over zou doen. White-boxtesten overhandigen broncode, architectuurdiagrammen en inloggegevens, zodat de tester diep kan gaan en in de beschikbare tijd meer terrein dekt. Grey-box zit ertussen: wat kennis, wat inloggegevens, een aanvaller nabootsend die zijn huiswerk deed of een kwaadwillende insider.

Voor de meeste applicatietests geeft grey- of white-box een beter rendement, omdat je betaalt voor diepte van analyse, niet voor de tester die je subnetindeling herontdekt. Reserveer black-box voor wanneer het realisme van de ontdekkingsfase zelf is wat je wilt testen, zoals meten hoeveel een buitenstaander uit je publieke voetafdruk kan leren. Wees expliciet over welke je opdraagt, want een black-boxrapport dat weinig vindt kan betekenen dat je veilig bent of dat de tester zonder tijd zat aan de perimeter.

Baken zorgvuldig af en schrijf de spelregels

Afbakening is waar opdrachten slagen of falen. Een document met spelregels definieert wat binnen de grenzen valt en wat niet, welke technieken zijn toegestaan, het testvenster, de gedekte systemen en netwerken, eisen aan dataverwerking en noodcontacten aan beide kanten. Het noemt de productiesystemen die verboden terrein zijn of zorg vragen, stelt een regel om te stoppen als de tester iets actief gevaarlijks vindt en definieert wat er gebeurt als ze op echte aanvallersactiviteit of werkelijk gevoelige data stuiten.

Schrijf escalatiepaden op en een “uit de gevangenis”-brief: autorisatie die de tester kan tonen als beveiligingsmedewerkers of de politie hem midden in de opdracht aanspreken. Spreek vooraf af hoe bevindingen worden opgeslagen en verzonden, aangezien een pentestrapport een kaart is van hoe je te inbreken en dienovereenkomstig beschermd moet worden. Smalle afbakening produceert diepe bevindingen op een klein oppervlak. Brede afbakening produceert oppervlakkige dekking van een groot oppervlak. Kies met opzet, en laat de afbakening nooit stilletjes uitbreiden midden in de opdracht zonder nieuwe autorisatie.

Behandel autorisatie als de lijn tussen testen en misdaad

De ene handeling die een penetratietester van een crimineel scheidt is autorisatie. Toegang tot systemen waartoe je niet geautoriseerd bent is een misdrijf onder wetten als de Computer Fraud and Abuse Act in de Verenigde Staten en equivalenten elders, en goede bedoelingen zijn geen verweer. Autorisatie moet schriftelijk komen van iemand met de werkelijke bevoegdheid haar te verlenen, precies de systemen en technieken in scope dekken en worden ondertekend voordat het werk begint.

Systemen van derden compliceren dit. Je cloudprovider, je software-als-dienstleveranciers en elke gedeelde infrastructuur kunnen hun eigen testbeleid hebben, en je kunt geen aanval autoriseren op bezittingen die je niet bezit. Controleer de regels van de provider, vraag toestemming waar vereist en houd testen binnen je eigen tenancy. Social engineering gericht op werknemers roept ethische en juridische vragen op over toestemming en psychische schade die je vooraf moet doordenken. Betrek bij twijfel juridisch advies. De kosten van een gesprek zijn triviaal tegenover de kosten van een incident met ongeautoriseerde toegang.

Weeg interne teams af tegen testers van derden

Een intern red team kent je omgeving, bouwt relaties op met verdedigers en kan continu testen in plaats van in jaarlijkse uitbarstingen. Die vertrouwdheid is ook een beperking: ze delen je blinde vlekken en organisatorische aannames, en hun onafhankelijkheid kan worden betwist wanneer ze aan hetzelfde leiderschap rapporteren als de systemen die ze testen. Externe bureaus brengen een frisse blik, gespecialiseerde vaardigheden en de onafhankelijkheid die auditors en toezichthouders vaak eisen, maar ze lopen langzaam warm, kosten meer per opdracht en vertrekken wanneer het rapport is geleverd.

De meeste volwassen programma’s gebruiken beide. Interne teams doen continue tegenstanderemulatie, detectieafstemming en de diepe omgevingskennis die purple teaming productief maakt. Externe bureaus leveren periodieke onafhankelijke validatie, voldoen aan de onafhankelijkheidseisen van standaarden als PCI DSS en tasten de gebieden af die je eigen mensen niet meer zien. Welke je ook gebruikt, sta erop dat de testers gekwalificeerd zijn: certificeringen als OSCP (Offensive Security Certified Professional) en aangetoonde ervaring tellen zwaarder dan een gelikte verkooppresentatie.

Draai bugbounty’s en gecoördineerde bekendmaking

Een bugbounty-programma nodigt externe onderzoekers uit kwetsbaarheden te vinden en te melden in ruil voor erkenning en betaling. Het geeft je continue, crowdgesourcete tests over een reeks vaardigheden die je nooit allemaal tegelijk kon aannemen, en je betaalt alleen voor echte bevindingen. Het is geen vervanging voor gestructureerde pentests, aangezien onderzoekers najagen wat betaalt en hele categorieën kunnen negeren, maar het is een krachtige aanvulling die creatieve aanvallen naar boven brengt.

Voordat je een betaalde bounty draait, heb je een beleid voor gecoördineerde bekendmaking van kwetsbaarheden nodig: een gepubliceerde, makkelijk te vinden manier voor iedereen om veilig een beveiligingsprobleem te melden, een toezegging goedwillende onderzoekers niet juridisch te vervolgen, gedefinieerde responstermijnen en een intern proces om te triëren en te repareren wat binnenkomt. Een security.txt-bestand en een duidelijk meldadres zijn het minimum. Overheidsinstanties schrijven steeds vaker bekendmakingsbeleid voor voor publiek toegankelijke systemen, en geen kanaal hebben belet onderzoekers niet bugs te vinden. Het belet hen alleen je er veilig over te vertellen.

Gebruik assumed breach en tegenstanderemulatie

Testen alleen van de perimeter neemt aan dat de aanvaller buiten begint, maar echte inbreuken beginnen vaak met een gephishte inloggegeven of een gecompromitteerde laptop die al binnen is. Een assumed breach-oefening laat de tester met een voet tussen de deur beginnen, zoals toegang als gewone werknemer, en vraagt hoe ver ze vanaf daar kunnen komen. Dit test je interne segmentatie, detectie en schadezonemaatregelen direct, in plaats van alles te wedden op een perimeter die uiteindelijk wordt overschreden. Het is meestal een beter gebruik van de tijd van een red team dan ze te zien malen tegen een geharde rand.

Veranker de campagne in echt tegenstandersgedrag met MITRE ATT&CK, een publieke kennisbank van de tactieken en technieken die aanvallers werkelijk gebruiken, geordend van eerste toegang tot exfiltratie. Tegenstanderemulatie kiest een dreigingsactor waarvan bekend is dat hij jouw sector viseert, reproduceert zijn gedocumenteerde technieken en test of je elke stap detecteert en stopt. Dit is veel nuttiger dan een generieke aanval, omdat het je verdedigingen afbeeldt op de specifieke tegenstanders die je tegenkomt en bevindingen produceert die je dreigingsinformatie kan prioriteren.

Voed bevindingen naar het blue team en detectie-engineering

Het doel van offensief is betere verdediging. Elke red-teamactie is een kans om te vragen: genereerde onze tooling een signaal, zag iemand het en reageerde men correct. Draai opdrachten zo dat elke techniek afbeeldt op een detectie die je hebt, moet bouwen of moet afstemmen. Dit is detectie-engineering: aanvallersgedrag omzetten in betrouwbare alarmen, en het is waar de waarde van een red team zich opstapelt. Een bevinding dat “we niet werden gedetecteerd tijdens laterale beweging” moet een nieuwe detectieregel worden, getest door de techniek opnieuw uit te voeren.

Tabletopoefeningen breiden dit uit naar besluitvorming. Breng de mensen bijeen die op een echt incident zouden reageren en loop een realistisch scenario op papier door: wie roept het incident uit, wie praat met juristen, wie besluit een systeem offline te halen. Tabletops zijn goedkoop, leggen gaten in rollen en communicatie bloot die technische tests missen en bereiden de mensen voor die het meest tellen wanneer het incidentbeheer van hoofdstuk 9.3 live gaat. Koppel technisch red teaming aan regelmatige tabletops zodat zowel je tooling als je mensen worden geoefend.

Volg herstel en test opnieuw

Een kwetsbaarheidsrapport waar niemand naar handelt is een verplichting, aangezien je nu bewust een fout draait die een auditor kan aanhalen. Voed elke bevinding in je normale werkvolgsysteem met een eigenaar, een ernst en een deadline gekoppeld aan risico. Kritieke bevindingen krijgen noodbehandeling. Lagere sluiten aan op de backlog met eerlijke prioriteit. De statistiek die telt is tijd tot herstel, niet tijd tot rapportage.

Hertesten sluit de lus. Nadat een oplossing is opgeleverd bevestigt de tester (of een geautomatiseerde controle) dat de kwetsbaarheid werkelijk weg is en dat de oplossing geen nieuw gat opende. Zonder hertesten is “hersteld” een hoop, geen feit, en veel bevindingen keren terug omdat een oplossing onvolledig was of een regressie ze heropende. Standaarden als PCI DSS eisen deze lus expliciet. Bouw hertesten in het opdrachtcontract in zodat het geen vergeten bijgedachte is.

Afwegingen: voor- en nadelen

AanpakHet best voorVoordelenNadelen
KwetsbaarheidsscanningContinue dekking van bekende foutenGoedkoop, breed, geautomatiseerd, frequentLuidruchtig. Kan uitbuitbaarheid niet bewijzen
PenetratietestenImpact bewijzen op een gedefinieerd doelDiepe, menselijke inzichten. Echte exploitketensMomentopname. Smal afgebakend. Kostbaar
Red teamingDetectie en respons testenRealistisch. Oefent mensen en procesDuur. Traag. Vraagt een volwassen blue team
Purple teamingDetecties snel verbeterenVeel leren per euro. SamenwerkendMinder realistisch. Vraagt beide teams beschikbaar
BugbountyDoorlopende crowdgesourcete ontdekkingBetalen per bevinding. Diverse vaardighedenOngelijke dekking. Triagelast. Vraagt proces

De kernspanning is tussen realisme en leersnelheid. Een heimelijk red team is de meest realistische test die je kunt draaien, maar haar lessen komen langzaam en pas na een volledige campagne, en een onvolwassen blue team leert weinig van stilletjes verslagen worden. Purple teaming offert verrassing op om te maximaliseren hoe snel verdedigers verbeteren. Een tweede spanning is breedte tegenover diepte: scannen dekt alles oppervlakkig, terwijl een pentest een reepje diep dekt. Volwassen programma’s lagen deze in plaats van er één te kiezen, met continu scannen onder periodiek diep testen en af en toe red-teamcampagnes met volledige scope. De verkeerde zet is één jaarlijkse pentest kopen, het rapport opbergen en het probleem opgelost noemen.

Vragen om met je team te bespreken

  1. Als we offensief testen opdragen, zijn we helder over welke vraag we werkelijk stellen, en past de opdracht erbij? Veel organisaties kopen een “penetratietest” en ontvangen een kwetsbaarheidsscan met een door mensen geschreven samenvatting, en geloven dan dat ze hun verdedigingen hebben getest terwijl ze alleen op bekende fouten hebben gecontroleerd. Anderen dragen een red team op wanneer hun detectievermogen zo onvolwassen is dat de oefening alleen bewijst wat iedereen al wist. Neem je laatste drie opdrachtafbakeningen en de resulterende rapporten mee, en vraag of elk de vraag beantwoordde die je beantwoord moest hebben: dekking van bekende kwetsbaarheden, uitbuitbaarheid van een specifiek doel of vermogen een inbraak te detecteren en erop te reageren. Het antwoord moet een bewuste mix van scannen, pentesten en red of purple teaming vormen, afgestemd op je volwassenheid.

  2. Wat gebeurt er met een bevinding nadat het rapport landt, en hoe zouden we bewijzen dat ze is opgelost? De waarde van offensieve beveiliging zit volledig in herstel, toch meten veel programma’s succes aan de grootte van het rapport in plaats van de krimp van risico. Traceer een echte bevinding uit je laatste opdracht: wie bezat haar, hoe werd ze geprioriteerd tegen functiewerk, wanneer werd ze opgelost en bevestigde iemand dat de oplossing werkelijk werkte. Als je dat spoor niet kunt produceren, genereert je testen kennis waar je niet naar handelt, wat erger is dan niet weten, omdat je nu bewust blootstaat. De uitkomst van deze discussie moet een gevolgde herstelworkflow zijn met eigenaren, risicogebaseerde deadlines en verplicht hertesten ingebouwd in elk contract.

  3. Maakt ons red team ons blue team beter, of houdt het slechts de score bij? Een red team dat onopgemerkte overwinningen viert en zijn technieken oppot is vermakelijk en nutteloos. De relatie moet onder het tegenstanderlijke oppervlak samenwerkend zijn: elke techniek die onopgemerkt blijft moet een nieuwe detectieregel worden, elk succesvol pad moet segmentatie informeren en de twee teams moeten samen debriefen. Vraag je verdedigers wat ze leerden van de laatste red-teamopdracht en of daardoor enige concrete detectie of maatregel veranderde. Als het eerlijke antwoord niets is, betaal je voor theater, en moet je verschuiven naar purple teaming en tegenstanderemulatie expliciet gekoppeld aan detectie-engineering.

  4. Hebben we vóór onze volgende opdracht schriftelijke autorisatie voor elke bezitting in scope, inclusief die we niet bezitten? Autorisatie is de lijn tussen een penetratietest en een computercriminaliteitsincident, en in een grote organisatie liggen de systemen die een tester zal raken zelden binnen één eigendomsgrens: ze overspannen cloud-tenancies, software-als-dienstplatforms, beheerde netwerken en gedeelde infrastructuur die een partner of leverancier beheert. De concurrerende druk is snelheid, omdat getekende toestemming en testbeleid van providers najagen traag is en verleidelijk om over te slaan wanneer een deadline dreigt. Neem de concept-spelregels mee, de bezittingeninventaris met een eigenaar genoemd bij elk systeem, het relevante testbeleid van cloud en leveranciers en de getekende autorisatiebrief die de tester kan tonen als hij midden in de opdracht wordt aangesproken. Voor werk bij onderneming en overheid is de blootstelling acuut: een ongeautoriseerde sonde tegen een gedeeld platform kan contracten schenden, wettelijke melding triggeren of, voor een publieke instantie, een krantenkop worden over de overheid die systemen aanvalt waartoe ze het recht niet had, dus juridisch advies moet afkeuren voordat iemand begint.

  5. Investeren we in een intern red team, externe bureaus of beide, en komt die verdeling overeen met wat we werkelijk nodig hebben? Dit is een kopen-tegenover-bouwenbeslissing met echt geld en meerjarige gevolgen: een intern team kost salarissen en tooling en levert continue tegenstanderemulatie en diepe omgevingskennis, terwijl externe bureaus meer per opdracht kosten maar een frisse blik brengen, gespecialiseerde vaardigheden en de onafhankelijkheid die auditors en toezichthouders eisen. De spanning is dat elk de blinde vlek van het ander dekt, dus ze als vervangers in plaats van aanvullingen behandelen laat meestal een gat. Neem je huidige uitgaven aan elk mee, de certificeringen en aangetoonde staat van dienst van de mensen die het werk doen, het ritme van opdrachten en de onafhankelijkheidseisen die je standaarden opleggen. In een gereguleerde onderneming kunnen PCI DSS en vergelijkbare regimes extern onafhankelijk testen afdwingen hoe goed je interne team ook is. Bij de overheid maken aanbestedingsregels en de noodzaak onafhankelijke beoordeling te tonen vóór een toestemming om te opereren een geaccrediteerde derde vaak verplicht, niet optioneel.

  6. Hebben we een veilig kanaal voor externe onderzoekers om kwetsbaarheden te melden, en zijn we klaar om af te handelen wat binnenkomt? Een grote publiek toegankelijke organisatie wordt al afgetast door onderzoekers of ze die nu uitnodigt of niet, en de enige vraag is of ze het je veilig kunnen vertellen of gedwongen worden te publiceren of te verkopen wat ze vinden. De concurrerende overweging is gereedheid: een beleid voor gecoördineerde bekendmaking of een betaalde bugbounty openen genereert binnenkomende meldingen en een triagelast, en een programma dat betaalt voor bevindingen die het nooit repareert is erger dan geen. Neem je huidige security.txt-bestand en meldadres mee als je die hebt, je intake- en triageproces, de responstermijnen waaraan je je eerlijk kunt binden en de backlogcapaciteit om te herstellen wat aankomt. Voor overheidsinstanties is een bekendmakingsbeleid op publieke systemen steeds vaker een richtlijn dan een beleefdheid, en voor ondernemingen is een goed gerunde bounty zowel een bron van creatieve bevindingen als bewijs van volwassenheid tijdens due diligence van klanten, dus de beslissing is minder of je een kanaal hebt dan of je bemand bent om het te honoreren.

Sectorperspectief

Startup. Je kunt je geen intern red team veroorloven, dus laag goedkope dekking. Koppel kwetsbaarheidsscanning aan je deploymentpipeline om bekende afhankelijkheidsfouten bij elke build te vangen, publiceer een security.txt-bestand en een eenvoudig beleid voor gecoördineerde bekendmaking zodat onderzoekers je kunnen bereiken en draag vóór je eerste ondernemingsdeal één grey-boxpenetratietest op aan een gerenommeerd bureau, elke bevinding volgend tot een bevestigde oplossing. Snelheid telt meer dan een breed programma: kies de ene test die een verkoop ontsluit of je grootste risico sluit en sla de rest over tot je groeit.

Kleinbedrijf. Zonder beveiligingsspecialist in dienst en met een krap budget koop je in plaats van te bouwen. Gebruik een beheerde scandienst en huur op bescheiden ritme een extern pentestbureau in in plaats van enig intern vermogen op te zetten, en zorg dat je contract een hertest bevat zodat “opgelost” bewezen is, niet aangenomen. De zet met de hoogste waarde en de laagste kosten is een gepubliceerde manier voor iedereen om een fout te melden plus de discipline snel te patchen, aangezien de meeste echte compromittering van een bedrijf van jouw omvang via bekende, niet-gepatchte zwaktes komt.

Grote onderneming. Op schaal is de uitdaging governance over veel teams. Draai continu scannen onder periodieke onafhankelijke externe pentests die aan standaarden als PCI DSS voldoen, houd een intern red team voor continue tegenstanderemulatie en purple teaming en beheer herstel als gevolgd portfolio met eigenaren, risicogebaseerde deadlines en verplicht hertesten. Voed elke onopgemerkte techniek in detectie-engineering en produceer het auditbewijs, de dekking, tijdlijnen en sluitingspercentages die compliance en je bestuur verwachten.

Overheid. Aanbestedingsregels, transparantie en publieke verantwoording geven het hele programma vorm. Houd een bekendmakingsbeleid voor kwetsbaarheden op publiek toegankelijke systemen aan zoals richtlijnen steeds vaker vereisen, gebruik geaccrediteerde onafhankelijke beoordelaars voor de penetratietesten die de toestemming om te opereren van een systeem poorten en modelleer tegenstanderemulatie op de specifieke natiestaatactoren die je inlichtingenpartners markeren. Behandel autorisatie, afbakening en dataverwerking met extra rigueur omdat de systemen verkiezingen, uitkeringen en kritieke infrastructuur draaien, en maak hertesten een voorwaarde om enig systeem live te houden.

Voorbeelden

Startup. Een fintechstartup van twintig personen kan zich geen intern red team veroorloven, dus laagt ze wat ze kan. Geautomatiseerde kwetsbaarheidsscanning draait bij elke deploy door haar pipeline en vangt bekende afhankelijkheidsfouten vroeg. Ze publiceert een security.txt-bestand en een eenvoudig beleid voor gecoördineerde bekendmaking, en opent dan een bescheiden bugbounty op een publiek platform zodra het product stabiliseert, echte onderzoekers betalend voor echte bugs. Voordat ze haar eerste ondernemingsklant tekent draagt ze een grey-boxpenetratietest van de applicatie op aan een gerenommeerd bureau, volgt elke bevinding tot sluiting in haar normale issuetracker en betaalt voor een hertest om de oplossingen te bevestigen. Deze gelaagde aanpak geeft geloofwaardige beveiligingsdekking tegen kosten die de startup kan dragen, en het pentestrapport wordt bewijs dat ze kan delen tijdens due diligence van klanten.

Grote onderneming. Een multinationale retailer die kaartbetalingen verwerkt moet aan PCI DSS voldoen, dat zowel interne als externe penetratietesten vereist minstens jaarlijks en na significante wijzigingen, plus segmentatietesten om te bewijzen dat de kaarthoudersomgeving geïsoleerd is. Ze draait continu scannen over duizenden bezittingen, draagt onafhankelijke externe pentests op om aan de standaard te voldoen en houdt een intern red team dat assumed-breach-oefeningen draait gegrond in MITRE ATT&CK tegen dreigingsactoren waarvan bekend is dat ze de retail viseren. Het red team werkt nauw samen met de beveiligingsoperatiefunctie van hoofdstuk 4.4: elke onopgemerkte techniek wordt een detectie-engineeringticket, en kwartaalmatige purple-teamsessies stemmen de alarmering af. Herstel wordt gevolgd met risicogebaseerde deadlines, en het hele programma produceert het auditbewijs dat de compliance van hoofdstuk 4.6 vereist.

Overheid. Een nationaal agentschap dat uitkeringssystemen voor burgers draait staat tegenover natiestaattegenstanders en een publiek mandaat gevoelige persoonsgegevens te beschermen. Het houdt een bekendmakingsbeleid voor kwetsbaarheden aan op alle publiek toegankelijke systemen, zoals overheidsrichtlijnen steeds vaker vereisen, wat onderzoekers een veilig kanaal geeft fouten te melden. Onafhankelijke beoordelaars van derden voeren penetratietesten uit als onderdeel van het autorisatieproces voordat enig systeem live gaat, en continue bewaking omvat doorlopend scannen. Het agentschap draait tegenstanderemulatie gemodelleerd op de specifieke dreigingsgroepen die zijn inlichtingenpartners markeren, en regelmatige tabletopoefeningen repeteren de incidentrespons en juridische coördinatie die een echte inbreuk zou eisen. Bevindingen voeden een formeel herstelprogramma met voorgeschreven termijnen, en hertesten is een voorwaarde om de toestemming om te opereren van een systeem te behouden.

Zakelijke onderbouwing: motivatie, ROI en TCO

Het rendement van offensieve beveiliging is de inbreuk die je niet leed. Een serieus datalek kost miljoenen aan directe respons, boetes van toezichthouders, juridische aansprakelijkheid, klantverloop en reputatieschade, en de duurste enkele factor is hoe lang een inbraak onopgemerkt blijft. Red teaming en purple teaming pakken dat getal direct aan door de kloof tussen compromittering en detectie te verkleinen. Een penetratietest die een uitbuitbaar pad naar je klantendatabase vindt, opgelost voordat een aanvaller het vindt, betaalt het hele programma vele malen terug in één vermeden incident.

Er zijn ook harde drijfveren. PCI DSS schrijft penetratietesten voor aan iedereen die kaartdata verwerkt. Raamwerken en autorisatieregimes van overheden vereisen onafhankelijke beoordeling vóór en tijdens exploitatie. Ondernemingsklanten eisen recente pentestrapporten als voorwaarde voor contracten. In deze gevallen is testen niet optioneel, en is de enige vraag of je echte beveiligingswaarde haalt uit geld dat je toch moet uitgeven.

De total cost of ownership omvat meer dan het opdrachthonorarium. Begroot de tooling en het personeel van een intern team als je er een bouwt, de triagelast van een bugbounty en bovenal het herstelwerk dat bevindingen genereren, waar de echte uitgaven landen. Een programma dat tests opdraagt maar repareren ondergefinancierd laat is het slechtste van twee werelden: het betaalt voor het slechte nieuws en betaalt opnieuw wanneer de genegeerde bevinding wordt uitgebuit. Verbind testen voor het bestuur aan statistieken die ze volgen: gemiddelde tijd tot detectie, gemiddelde tijd tot herstel, afgesloten auditbevindingen en de risicovermindering op je meest kritieke bezittingen.

Antipatronen en valkuilen

  • Scannen en hernoemen: een kwetsbaarheidsscan verkopen als penetratietest, de uitvoer van een tool leveren zonder menselijke validatie of aaneenschakelen van exploits.
  • Rapporteren en vergeten: het deliverable als doel behandelen, de bevindingen opbergen en herstel of hertesten nooit volgen.
  • Afbakenen om te slagen: de opdracht zo vernauwen dat de systemen die het meest waarschijnlijk falen gemakshalve buiten de grenzen vallen, wat een schoon rapport oplevert dat niets betekent.
  • Red team als scorebord: een tegenstanderlijk team dat technieken oppot en overwinningen viert in plaats van verdedigers beter te maken.
  • Een onvolwassen blue team heimelijk testen: een stealth red team draaien voordat je enig detectievermogen hebt, zodat de oefening alleen bewijst wat je al wist.
  • Geen autorisatie of vage afbakening: werk beginnen zonder schriftelijke toestemming, of de afbakening laten kruipen naar systemen die je niet bezit, wat een juridische ramp riskeert.
  • Perimeterobsessie: alleen de externe rand testen en de assumed-breachrealiteit negeren dat aanvallers binnen beginnen.
  • Het bekendmakingskanaal negeren: geen veilige manier hebben voor externe onderzoekers om bugs te melden, zodat ze openbaar publiceren of verkopen.
  • Theaterstatistieken: gevonden kwetsbaarheden tellen in plaats van risico verminderd, detectie verbeterd en tijd tot herstel verkort.

Volwassenheidsmodel

  • Niveau 1, Initiëren: Testen is af en toe en reactief, vaak één jaarlijkse pentest gedaan om een vakje af te vinken, of pas getriggerd na een incident. Rapporten worden opgeborgen met weinig opvolging, herstel wordt niet gevolgd, er is geen bekendmakingskanaal en detectie van een echte inbraak is ongetest en waarschijnlijk afwezig.
  • Niveau 2, Ontwikkelen: Kwetsbaarheidsscanning en penetratietesten bestaan maar zijn inconsistent over teams, waarbij sommige groepen continu scannen en andere helemaal niet. Bevindingen worden ergens vastgelegd, hoewel eigenaren en deadlines onregelmatig zijn, hertesten is ad hoc en een kanaal voor gecoördineerde bekendmaking kan voor sommige systemen bestaan maar niet voor het hele landschap.
  • Niveau 3, Standaardiseren: Offensief testen is een gedocumenteerd programma organisatiebreed afgedwongen, geen gebeurtenis. Scannen draait continu onder geplande penetratietesten opgedragen op een gedefinieerd ritme en na grote wijzigingen, spelregels en autorisatie zijn standaardpraktijk, elke bevinding wordt gevolgd tot sluiting met een eigenaar en een risicogebaseerde deadline, hertesten is verplicht en een beleid voor gecoördineerde bekendmaking dekt alle publiek toegankelijke systemen.
  • Niveau 4, Beheersen: Het programma wordt gemeten en beheerst aan de hand van uitgangswaarden. Je volgt gemiddelde tijd tot detectie en gemiddelde tijd tot herstel, het percentage red-teamtechnieken dat een signaal opleverde, detectiedekking tegen de MITRE ATT&CK-technieken relevant voor je sector, terugkeerpercentages van bevindingen en responstijden van bekendmaking, en je houdt elke statistiek tegen een doel en handelt wanneer ze afdrijft. Assumed-breachoefeningen en tegenstanderemulatie zijn routine, een red team opereert continu, bevindingen voeden detectie-engineering en go/no-go-beslissingen rusten op bewijs in plaats van mening.
  • Niveau 5, Orkestreren: Red en purple teaming zijn over de organisatie geïntegreerd en adaptief. Elke techniek beeldt af op een geteste detectie, tegenstanderemulatie volgt de specifieke dreigingsactoren die je sector momenteel viseren naarmate inlichtingen verschuiven en het programma verfijnt continu zijn afbakening, technieken en statistieken naarmate het leert. Offensief testen, beveiligingsoperaties, detectie-engineering en incidentrespons opereren als één lus die de kloof tussen compromittering en detectie in de tijd meetbaar verkleint.

Ideeën voor discussie

  1. Als een echte aanvaller vandaag als gewone werknemer voet aan de grond kreeg, hoe ver zou hij kunnen komen voordat iemand het merkte, en hoe weet je dat?
  2. Welke van je laatste opdrachten waren werkelijk realistisch, en welke waren zo afgebakend dat de waarschijnlijke falen gemakshalve buiten de grenzen vielen?
  3. Hoeveel bevindingen van je vorige test staan nog open, en wat zegt dat over of testen of herstel je echte knelpunt is?
  4. Hebben externe onderzoekers een veilige, duidelijke manier om je een kwetsbaarheid te melden, en wat gebeurt er wanneer een melding aankomt?
  5. Wanneer repeteerden je incidentresponders voor het laatst een inbreuk op papier, en legde de tabletop gaten bloot die je technische tests misten?
  6. Meet je gevonden kwetsbaarheden, of meet je verbeterde detectie en verminderd risico?

Belangrijkste inzichten

  • Offensieve beveiliging is een spectrum: scannen vindt bekende fouten, pentesten bewijst uitbuitbaarheid en red teaming test detectie en respons. Stem de opdracht af op de vraag.
  • Schriftelijke autorisatie en heldere spelregels zijn de lijn tussen beveiligingstesten en misdaad. Sla ze nooit over, vooral niet op systemen die je niet volledig bezit.
  • De waarde zit in herstel en hertesten, niet in het rapport. Volg elke bevinding met een eigenaar, een risicogebaseerde deadline en een bevestigde oplossing.
  • Een red team bestaat om het blue team beter te maken. Voed bevindingen in detectie-engineering, geef de voorkeur aan purple teaming en assumed-breachoefeningen en grond campagnes in echte tegenstandertechnieken via MITRE ATT&CK.
  • Meet detectie en respons, niet alleen aantallen kwetsbaarheden, en pas op voor opdrachten afgebakend om te slagen, die comfort zonder beveiliging produceren.

Referenties en verder lezen

  • Georgia Weidman, Penetration Testing: A Hands-On Introduction to Hacking
  • Peter Kim, The Hacker Playbook 3: Practical Guide to Penetration Testing
  • Jim O’Gorman, Devon Kearns, and Mati Aharoni, Metasploit: The Penetration Tester’s Guide
  • Joe Vest and James Tubberville, Red Team Development and Operations: A Practical Guide
  • MITRE, MITRE ATT&CK framework and knowledge base
  • Payment Card Industry Security Standards Council, PCI DSS Requirements and Testing Procedures and Penetration Testing Guidance
  • National Institute of Standards and Technology, NIST SP 800-115: Technical Guide to Information Security Testing and Assessment
  • Dafydd Stuttard and Marcus Pinto, The Web Application Hacker’s Handbook