Kwetsbaarheidsbeheer Design

💼 Management Samenvatting

Kwetsbaarheidsbeheer vormt de kern van een volwassen beveiligingsarchitectuur voor Nederlandse overheidsorganisaties omdat het continu inzicht geeft in bekende zwakke plekken binnen endpoints, servers en cloudworkloads en direct richting biedt voor risicogestuurde mitigatie.

Aanbeveling
Zorg dat Threat & Vulnerability Management structureel is ingericht, volledig is gevoed met accurate inventarisgegevens en gekoppeld is aan wijzigings- en patchprocessen zodat kwetsbaarheden aantoonbaar binnen afgesproken termijnen worden opgelost.
Risico zonder
Critical
Risk Score
9/10
Implementatie
40u (tech: 24u)
Van toepassing op:
Defender voor Endpoint

Wanneer kwetsbaarheden onzichtbaar blijven of onvoldoende worden geprioriteerd, ontstaan er structurele trust gaps richting burgers en toezichthouders; het vergroot bovendien de kans op datalekken, ransomware en langdurige verstoringen van primaire processen die onder de BIO, ENSIA en NIS2-rapportages vallen.

PowerShell Modules Vereist
Primary API: Microsoft Graph API
Connection: Connect-MgGraph
Required Modules: Microsoft.Graph.Security

Implementatie

Deze control beschrijft hoe Threat & Vulnerability Management (TVM) binnen Microsoft Defender voor Endpoint wordt ingericht, gevoed met accurate configuratie- en inventarisdata, gekoppeld aan change- en patchprocessen en vertaald naar aantoonbare compliance-evidentie en bestuurlijke rapportages.

Vereisten

Effectief kwetsbaarheidsbeheer begint bij een volledige licentie- en platformbasis. Defender voor Endpoint Plan 2 is verplicht, omdat alleen deze editie het TVM-dash­board, real-time exposure score, geïntegreerde bedreigingsinformatie en geautomatiseerde remediering beschikbaar maakt voor endpoints binnen departementale netwerken én mobiele werkplekken van decentrale uitvoeringsinstanties. Activeer Microsoft Defender voor Servers Plan 2 voor hybride workloads en zorg dat de Microsoft Graph Security API is toegestaan via de centrale beheerde Azure AD-app-registraties, zodat het platform gegevens kan uitwisselen met SIEM/SOAR omgevingen en beleidsdashboards. Daarnaast is een betrouwbare configuratie- en assetbron nodig: de Configuration Manager- of Intune-tenant levert hardware- en software-inventaris, terwijl Azure Arc de brug slaat naar on-premises servers. Alleen wanneer deze bronnen dagelijks worden gesynchroniseerd met TVM, zijn software-levenscyclusdata en kwetsbaarheidsclassificaties actueel genoeg om binnen BIO 12.06-controles te worden gebruikt. Documenteer in het register van verwerkingsactiviteiten dat kwetsbaarheidsgegevens persoonsgegevens kunnen bevatten (zoals apparaatnamen of gebruikerscontext) en borg de AVG-grondslag via gerechtvaardigd belang of wettelijke plicht. Een operationeel team heeft duidelijke rollen nodig: minimaal één product owner die beleidskaders vertaalt naar use-cases (bijv. strengere eisen voor OT-werkplekken), een TVM-analist die dagelijkse triage runt, en een changecoördinator die patchwindows afstemt met servicemanagers. Leg deze rollen vast in het security operating model en koppel ze aan de CAB en het CERT, zodat bevindingen meteen in incidentrespons of wijzigingsverzoeken kunnen worden omgezet. Belangrijk is dat zij toegang hebben tot Microsoft 365 Defender, Azure Update Manager, Intune en het CMDB-portaal om wegingen direct in de bronsystemen vast te leggen. Technische randvoorwaarden omvatten netwerktoegang tot de Defender-service-urls, onboardingprofielen voor alle besturingssystemen, en een Key Vault voor opslag van API-secrets waarmee PowerShell- of Logic Apps-scripts authentiseren richting Graph. Zorg dat serviceaccounts voldoen aan het principe van minimale rechten (Microsoft Graph Security.Read.All + SecurityBaseline.Read.All) en bescherm hun geheimen met Privileged Access Workstations (PAW). Tot slot zijn rapportage- en auditvereisten cruciaal. Definieer KPI's zoals percentage systemen met kritieke kwetsbaarheden ouder dan zeven dagen, gemiddelde tijd tot patchen per risicocategorie en nalevingsgraad van afgesproken service-levels per business unit. Koppel deze metrics aan het Rijksbrede sturingsdashboard of het gemeentelijke ENSIA-rapport, zodat bestuurders continu inzicht krijgen in risico-evoluties en het effect van beleidsbeslissingen. Investeer tenslotte in een opleidingsprogramma waarin beheerders, proceseigenaren en bestuurders oefenen met scenario’s rondom zero-days en supply-chain kwetsbaarheden. Door kennis van exploitmethoden, forensische signalen en compensatiemaatregelen te vergroten, kan de organisatie sneller reageren en worden risico’s aantoonbaar verkleind.

Implementatie

De implementatie start met het activeren van Threat & Vulnerability Management binnen de Microsoft 365 Defender-portal en het aansluiten van alle relevante apparaten. Gebruik Intune onboardingprofielen en Azure Arc agents om zowel Windows-, Linux- als macOS-systemen te registreren, en valideer via device collections dat minimaal 95% van de apparaten binnen 48 uur telemetrie aanlevert. Zodra TVM is geactiveerd, configureert het team de exposure score per business unit, zodat kritieke voorzieningen zoals burgerzaken, ketengerichte digitale diensten en OT-werkplekken automatisch zwaarder worden gewogen. Vervolgens worden baseline-instellingen geïmporteerd op basis van de Nederlandse Baseline voor Veilige Cloud: dit omvat beveiligingsregels voor browsers, kernapplicaties en middleware. Daarna wordt de integratie met ticketing- en patchplatformen ingericht. ServiceNow, TOPdesk of Azure DevOps ontvangen webhooks wanneer TVM een kritisch of hoog risico detecteert. Binnen dezelfde workflow wordt automatisch gecontroleerd of een update via Windows Update for Business, Configuration Manager of Azure Update Manager beschikbaar is. Als er geen patch bestaat, wordt een compensating control vastgelegd (bijvoorbeeld het blokkeren van kwetsbare modules via Attack Surface Reduction). Door deze stap te automatiseren, ontstaat er een sluitende keten tussen detectie, besluitvorming en uitvoering. Het script `vulnerability-management.ps1` fungeert als automatiseringslaag: het script verzamelt Graph-data, verrijkt bevindingen met CMDB-gegevens en publiceert samenvattingen naar het centrale beleidsdashboard. Voorzie het script van parameterbestanden per omgeving (prod, test, OT) zodat dezelfde logica met verschillende scopes kan draaien. Tijdens de implementatie wordt het script eerst lokaal getest op een geïsoleerde ontwikkelwerkplek met gesimuleerde data; daarna volgt een gecontroleerde uitrol via een Azure Automation-account met managed identity. Tijdens change- en releaseplanning is communicatie richting proceseigenaren essentieel. Organiseer werksessies waarin de impact van patches op ketens zoals DigiD-koppelingen of BAG-registraties wordt besproken. Documenteer beslissingen in het wijzigingsdossier inclusief fallbackplan en verwachte downtime. Gebruik living documentation in Confluence of SharePoint om configuratiestappen, scriptversies en lessons learned vast te leggen, zodat toekomstige iteraties sneller verlopen. De implementatie sluit af met een acceptatietest waarin wordt gecontroleerd of TVM aanbevelingen daadwerkelijk leiden tot werkorders, of exposure scores dalen na patchrondes en of rapportages voldoen aan de eisen van CISO, CIO en audit. Pas pas na deze verificatie het change record formeel af, zodat er aantoonbaar bewijs is voor toezichthouders dat kwetsbaarheidsbeheer structureel is verankerd. Na de initiële uitrol volgt een optimalisatiefase waarin het programma wordt opgeschaald. Voeg threat intelligence van het NCSC toe, breid detection uit met OT-scanners en toets regelmatig of het script nog aansluit bij gewijzigde API-versies. Door iteratief te verbeteren blijft de oplossing relevant, schaalbaar en toekomstbestendig.

Gebruik PowerShell-script vulnerability-management.ps1 (functie Invoke-Monitoring) – PowerShell-automatisering voor het ophalen van TVM-data, verrijking met CMDB-kenmerken en distributie naar dashboards en ticketsystemen..

Monitoring

Monitoring richt zich op een dagelijkse cyclus van dataverzameling, analyse en rapportage. Het TVM-dashboard fungeert als startpunt, maar de informatie krijgt pas waarde wanneer het wordt gekoppeld aan de organisatorische context. Daarom consolideert het SOC wekelijks de exposure score per domein, vergelijkt die met eerder afgesproken drempelwaarden en bespreekt de grootste stijgers in het risicoregister. Waar klassieke monitoring stopt bij technische grafieken, wordt hier een narratief opgesteld dat uitlegt waarom een nieuwe kwetsbaarheid impact heeft op processen zoals vergunningverlening, loonadministratie of noodhulp. Door deze benadering begrijpen bestuurders direct welke prioriteiten zij moeten stellen. Naast dashboards worden proactieve alerts ingericht. Azure Monitor en Microsoft Sentinel ontvangen TVM-signalen en zetten rules neer die een melding sturen wanneer een kritieke CVE langer dan drie dagen openstaat op systemen met hoge vertrouwelijkheid. Deze notificaties worden gecombineerd met EDR-signalering om te detecteren of een actieve exploitpoging plaatsvindt. Op die manier ontstaat een sluitende lus tussen preventie, detectie en respons, iets wat toezichthouders steeds nadrukkelijker eisen. De monitoringketen gebruikt het script `vulnerability-management.ps1` om ruwe Graph-data te transformeren naar begrijpelijke rapportages. Het script aggregeert kwetsbaarheden per applicatie-eigenaar, voegt lifecycle-informatie toe (bijvoorbeeld of software end-of-support nadert) en publiceert de resultaten naar Power BI. Analisten kunnen vervolgens filters toepassen voor specifieke locaties, leveranciers of compliancegebieden, wat cruciaal is voor gedistribueerde organisaties zoals waterschappen of regionale uitvoeringsdiensten. Kwaliteitsborging vindt plaats via steekproeven: aan het begin van elke maand vergelijken we TVM-data met externe scanners of penetratietesten om te verifiëren dat de detectiedekking voldoende is. Afwijkingen worden besproken in het CCB (Change Control Board) en leiden tot verbeteracties, bijvoorbeeld het aanscherpen van sensorbeleid of het toevoegen van aanvullende authenticatoren. Documenteer deze controles in het auditdossier zodat er aantoonbare verantwoordingsinformatie beschikbaar is voor ENSIA- of BIO-toetsingen. Tot slot wordt monitoring gebruikt voor gedragsverandering. Door successen zichtbaar te maken—zoals een dalende exposure score na het opschonen van verouderde software—blijven proceseigenaren gemotiveerd. Combineer de technische dashboards met korte narratieven die aangeven welke teams uitblinken en welke ondersteuning nodig hebben. Deze sociaal-technische aanpak vergroot de kans dat kwetsbaarheidsbeheer een vanzelfsprekend onderdeel wordt van de bredere cyberhygiëne. Bijkomend voordeel van deze opzet is dat trenddata kunnen worden gekoppeld aan strategische roadmapbesluiten. Door te analyseren welke applicaties consequent kwetsbaarheden veroorzaken, kan het architectuurboard prioriteit geven aan modernisering of uitfasering en zo structureel risico wegnemen.

Gebruik PowerShell-script vulnerability-management.ps1 (functie Invoke-Monitoring) – Dagelijkse export van TVM-telemetrie inclusief exposure scores en aggregaties ten behoeve van SOC- en Power BI-rapportages..

Remediatie

Remediatie draait om snelheid én kwaliteit. Elke nieuw ontdekte kwetsbaarheid krijgt een risk score die is samengesteld uit CVSS, exploitbeschikbaarheid, publieke exploitcode, assetkritikaliteit en externe verplichtingen zoals de Wet beveiliging netwerk- en informatiesystemen (Wbni). Op basis daarvan wordt automatisch bepaald of er binnen 48 uur, vijf werkdagen of één maand actie nodig is. Deze afspraken zijn vastgelegd in service-levels en gekoppeld aan contracten met leveranciers en interne devops-teams. Door met één prioriteringsmodel te werken, voorkom je dat afdelingen eigen criteria hanteren en creëer je transparantie richting directie en audit. De daadwerkelijke remediatie volgt een gestandaardiseerde route. Eerst wordt onderzocht of er een officiële patch beschikbaar is, of dat een configuratiewijziging (bijvoorbeeld het uitschakelen van kwetsbare protocollen) volstaat. Voor bedrijfskritische systemen wordt een blue/green- of canary-strategie toegepast: patches worden eerst in een representatieve testomgeving geïnstalleerd, inclusief geautomatiseerde regressietests, voordat productie aan de beurt is. Wanneer downtime noodzakelijk is, worden burgers en ketenpartners tijdig geïnformeerd via de communicatiekanalen die in het continuïteitsplan zijn vastgelegd. Het PowerShell-script ondersteunt deze fase door voor elke kwetsbaarheid de relevante KB-artikelen, vendor bulletins en change records op te vragen en toe te voegen aan het werkorder-sjabloon. Hierdoor beschikken technisch beheerders direct over de juiste context en hoeft er geen handmatig speurwerk te worden verricht. Het script valideert bovendien na implementatie of de kwetsbaarheid daadwerkelijk is verdwenen uit TVM; zo niet, dan wordt er automatisch een her-open ticket aangemaakt. Voor situaties waarin een patch niet beschikbaar is, beschrijft het beleid welke compensating controls gelden. Denk aan het aanscherpen van firewallsegmentatie, het afdwingen van striktere exploitpreventieregels via Attack Surface Reduction of het isoleren van het systeem binnen een gecontroleerde enclave. Deze maatregelen worden beoordeeld door het CISO-office en krijgen een vervaldatum zodat ze niet onbeperkt blijven bestaan. Omdat remediatie veel stakeholders raakt, is communicatie essentieel. Wekelijkse stand-ups brengen CISO, proceseigenaren, applicatiebeheerders en leveranciers samen om voortgang en blokkades te bespreken. Dashboards maken zichtbaar welke teams voorlopen of achterlopen, terwijl lessons learned worden toegevoegd aan het kenniscentrum van de Nederlandse Baseline voor Veilige Cloud. Zo groeit de organisatie in volwassenheid en wordt patchen een voorspelbare, geaccepteerde activiteit in plaats van een brandweeroefening. Deze discipline wordt verder versterkt door post-implementation reviews waarin elke grote kwetsbaarheid wordt geëvalueerd. Bespreek welke signalen eerder zichtbaar waren, hoe de samenwerking verliep en welke toolingaanpassingen nodig zijn. Koppel de uitkomsten terug naar beleid en training, zodat structurele verbeteringen duurzaam worden verankerd.

Gebruik PowerShell-script vulnerability-management.ps1 (functie Invoke-Remediation) – Automatiseert het aanmaken van werkorders, koppelt patchinformatie en valideert na afloop of kwetsbaarheden zijn opgelost..

Compliance en Auditing

Compliance en auditing eisen dat elke beslissing traceerbaar is en dat bewijsstukken beschikbaar blijven gedurende de volledige retentieperiode. Voor de BIO betekent dit dat maatregelen uit hoofdstuk 12 aantoonbaar worden toegepast, terwijl NIS2 vraagt om een risicogebaseerde aanpak met nadruk op rapportage van ernstige cyberincidenten. Kwetsbaarheidsbeheer levert hiervoor kernmateriaal: exposure trends, bewijs van patchactiviteiten, gedocumenteerde uitzonderingen en communicatie richting ketenpartners. Deze gegevens worden verzameld in een digitaal auditdossier dat automatisch wordt gevuld via het TVM-platform en aanvullende scripts. Elke patchcyclus resulteert in een set documenten: het wijzigingsverzoek met impactanalyse, testrapporten, goedkeuring van de CAB, bevestiging van succesvolle implementatie en een update van het risicoregister. Door deze bundel te standaardiseren, kan de auditafdeling steekproeven uitvoeren zonder afhankelijk te zijn van individuele beheerders. Bovendien maakt het management dankzij deze uniformiteit sneller beslissingen over investeringen, bijvoorbeeld wanneer structurele achterstanden extra budget voor modernisering vereisen. Tijdens externe audits of ENSIA-verklaringen wordt gevraagd naar bewijs dat kwetsbaarheden binnen afgesproken termijnen zijn behandeld. Het script levert hiervoor CSV-rapporten met tijdstempels en referenties naar ticketnummers, zodat auditors de keten van detectie tot oplossing kunnen volgen. Voeg screenshots van het TVM-dashboard, exports van de exposure score en referenties naar relevante beleidsdocumenten toe om de context compleet te maken. Voor apparaten die onder bijzondere regimes vallen, zoals politie- of justitiesystemen, wordt extra documentatie opgenomen over cryptografische vereisten en logging. Compliance gaat verder dan documenteren; het gaat om cultuur. Organisaties moeten aantonen dat lessons learned leiden tot beleidswijzigingen en dat het bestuur actief toezicht houdt. Daarom rapporteert de CISO elk kwartaal aan de CIO-raad over trends, afwijkingen en verbetermaatregelen. Deze rapportages worden gedeeld met de functionaris gegevensbescherming en, waar relevant, met externe toezichthouders zoals de Autoriteit Persoonsgegevens. Door deze transparantie ontstaat vertrouwen en is de organisatie aantoonbaar in control. Ten slotte wordt de retentie van bewijs geregeld. TVM-rapporten en ticketlogs worden minimaal drie jaar bewaard in een beveiligd archief binnen Microsoft Purview of een vergelijkbare oplossing. Toegang is beperkt tot geautoriseerde auditors en CISO-medewerkers. Hiermee voldoet de organisatie aan de eisen van de Archiefwet en voorkomt zij dat waardevol bewijs verloren gaat wanneer incidenten jaren later worden geëvalueerd. Plan daarnaast een jaarlijkse maturity review waarin de effectiviteit van controles, tooling en processen wordt getoetst aan de Nederlandse Baseline voor Veilige Cloud. Gebruik de bevindingen om beleid te actualiseren, contracten met leveranciers te herzien en bestuurders inzicht te geven in de benodigde investeringen voor blijvende compliance.

Compliance & Frameworks

Automation

Gebruik het onderstaande PowerShell script om deze security control te monitoren en te implementeren. Het script bevat functies voor zowel monitoring (-Monitoring) als remediation (-Remediation).

PowerShell
<# .SYNOPSIS Vulnerability Management Design .DESCRIPTION Implementation for Vulnerability Management Design .NOTES Filename: vulnerability-management.ps1 Author: Nederlandse Baseline voor Veilige Cloud Version: 1.0 Related JSON: content/design/security/vulnerability-management.json #> #Requires -Version 5.1 #Requires -Modules Microsoft.Graph [CmdletBinding()] param( [Parameter()][switch]$WhatIf, [Parameter()][switch]$Monitoring, [Parameter()][switch]$Remediation, [Parameter()][switch]$Revert ) $ErrorActionPreference = 'Stop' $VerbosePreference = 'Continue' $PolicyName = "Vulnerability Management Design" $BIOControl = "12.06" function Connect-RequiredServices { # Connection logic based on API } function Test-Compliance { Write-Verbose "Testing compliance for: $PolicyName..." $result = [PSCustomObject]@{ ScriptName = "vulnerability-management" PolicyName = $PolicyName IsCompliant = $false TotalResources = 0 CompliantCount = 0 NonCompliantCount = 0 Details = @() Recommendations = @() } # Compliance check implementation # Based on: Design Document $result.Details += "Compliance check - implementation required based on control" $result.NonCompliantCount = 1 return $result } function Invoke-Remediation { Write-Host "`nApplying remediation for: $PolicyName..." -ForegroundColor Cyan # Remediation implementation Write-Host " Configuration applied" -ForegroundColor Green Write-Host "`n[OK] Remediation completed" -ForegroundColor Green } function Invoke-Monitoring { $result = Test-Compliance Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "$PolicyName" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan Write-Host "Total: $($result.TotalResources)" -ForegroundColor White Write-Host "Compliant: $($result.CompliantCount)" -ForegroundColor Green $color = if ($result.NonCompliantCount -gt 0) { "Red" } else { "Green" } Write-Host "Non-compliant: $($result.NonCompliantCount)" -ForegroundColor $color return $result } function Invoke-Revert { Write-Host "Revert: Configuration revert not yet implemented" -ForegroundColor Yellow } try { Connect-RequiredServices if ($Monitoring) { Invoke-Monitoring } elseif ($Remediation) { if ($WhatIf) { Write-Host "WhatIf: Would apply remediation" -ForegroundColor Yellow } else { Invoke-Remediation } } elseif ($Revert) { Invoke-Revert } else { $result = Test-Compliance if ($result.IsCompliant) { Write-Host "`n[OK] COMPLIANT" -ForegroundColor Green } else { Write-Host "`n[FAIL] NON-COMPLIANT" -ForegroundColor Red } } } catch { Write-Error $_ }

Risico zonder implementatie

Risico zonder implementatie
Critical: Wanneer bekende kwetsbaarheden onbeheerd blijven, blijft het aanvalsraam open voor ransomwaregroepen en statelijke actoren; incidentdata laat zien dat meer dan zestig procent van de succesvolle aanvallen misbruik maakt van publiek bekende CVE’s die vaak al maanden een patch beschikbaar hadden. Dit leidt tot verstoring van publieke dienstverlening, datalekken onder de AVG en mogelijke sancties vanuit BIO, ENSIA en NIS2.

Management Samenvatting

Activeer TVM in Microsoft Defender voor Endpoint, voed het platform met Intune, Configuration Manager en Azure Arc inventaris, prioriteer bevindingen op basis van CVSS en assetkritikaliteit, leg geautomatiseerde koppelingen naar change-, patch- en ticketplatformen, en rapporteer de exposure score periodiek aan CISO en bestuur zodat kwetsbaarheidsbeheer een voorspelbaar, aantoonbaar proces wordt.