Microsoft Defender Voor Endpoint: Geautomatiseerde Onderzoek En Respons

💼 Management Samenvatting

Geautomatiseerde onderzoek en respons (Automated Investigation and Response, AIR) vormt de kern van moderne endpoint detection and response binnen Microsoft Defender voor Endpoint. Het stelt Nederlandse overheidsorganisaties in staat om bedreigingen binnen minuten te detecteren, te analyseren en te mitigeren zonder dat security teams handmatig elk incident hoeven te onderzoeken.

Aanbeveling
IMPLEMENT
Risico zonder
Critical
Risk Score
9/10
Implementatie
70u (tech: 40u)
Van toepassing op:
Microsoft 365 E5
Microsoft Defender voor Endpoint Plan 2
Microsoft Defender XDR
Windows 11 Enterprise
Windows 10 LTSC

Zonder geautomatiseerde onderzoek en respons moeten security teams elk waarschuwingssignaal handmatig analyseren, wat leidt tot vertragingen in incident response, menselijke fouten en overbelasting van security operations centers. In een tijd waarin ransomware-aanvallen binnen uren kunnen escaleren en nation-state actors geavanceerde persistent threats gebruiken, is handmatige analyse niet langer haalbaar. Nederlandse overheidsorganisaties die werken met gevoelige data en kritieke infrastructuren kunnen zich geen vertragingen veroorloven. De BIO en NIS2 vereisen bovendien expliciet dat organisaties passende technische maatregelen treffen voor snelle detectie en respons op beveiligingsincidenten. Geautomatiseerde onderzoek en respons biedt de schaalbaarheid, snelheid en consistentie die nodig zijn om aan deze eisen te voldoen, terwijl security teams zich kunnen richten op complexe bedreigingen die menselijke expertise vereisen.

PowerShell Modules Vereist
Primary API: Microsoft Graph Security API, Microsoft Defender for Endpoint API, Microsoft 365 Defender API
Connection: Connect-MgGraph, Select-MgProfile beta, Invoke-RestMethod naar https://api.security.microsoft.com
Required Modules: Microsoft.Graph.Beta, Microsoft.Graph.Security

Implementatie

Dit artikel beschrijft hoe Nederlandse overheidsorganisaties geautomatiseerde onderzoek en respons kunnen implementeren en optimaliseren binnen Microsoft Defender voor Endpoint. We behandelen de architectuur en werking van AIR, de verschillende typen onderzoeken die kunnen worden geautomatiseerd, de integratie met Microsoft 365 Defender en Microsoft Sentinel, en de governance en monitoring die nodig zijn om AIR effectief te beheren. Het artikel bevat praktische richtlijnen voor het configureren van automatische onderzoeken, het definiëren van remediatie-acties, en het integreren van AIR in bestaande incident response-processen. Het bijbehorende PowerShell-script ondersteunt monitoring, compliance checks en rapportage van AIR-activiteiten.

Architectuur en werking van geautomatiseerde onderzoek en respons

Geautomatiseerde onderzoek en respons binnen Microsoft Defender voor Endpoint is gebouwd op een geavanceerde machine learning-engine die continu leert van miljoenen endpoints wereldwijd. Wanneer een waarschuwing wordt gegenereerd door Defender sensors, analyseert AIR automatisch de context van de waarschuwing, correleert deze met andere signalen in de omgeving, en bepaalt of er sprake is van een echte bedreiging of een false positive. Dit proces gebeurt binnen seconden, waardoor security teams direct inzicht krijgen in de ernst en omvang van een incident, zonder dat zij handmatig door honderden waarschuwingen hoeven te gaan. De AIR-engine gebruikt een combinatie van behavioral analysis, threat intelligence feeds, en historische data om te bepalen welke acties moeten worden ondernomen, waarbij rekening wordt gehouden met de unieke context van elke organisatie en de compliance-eisen die gelden.

Een cruciaal onderdeel van de AIR-architectuur is de correlatie-engine die waarschuwingen koppelt aan bredere incidenten. In plaats van elke waarschuwing als een geïsoleerd probleem te behandelen, analyseert AIR of meerdere waarschuwingen deel uitmaken van een groter aanvalspatroon. Bijvoorbeeld, wanneer een endpoint een verdachte PowerShell-script uitvoert, controleert AIR automatisch of andere endpoints in de organisatie vergelijkbare activiteiten vertonen, of er netwerkverbindingen zijn met bekende command-and-control servers, en of er indicatoren zijn van lateral movement. Deze correlatie maakt het mogelijk om de volledige omvang van een aanval te begrijpen, zelfs wanneer de aanvaller gebruik maakt van geavanceerde technieken om detectie te vermijden. Voor Nederlandse overheidsorganisaties die te maken hebben met geavanceerde persistent threats en nation-state actors, is deze correlatie essentieel om de volledige impact van een incident te kunnen beoordelen en passende maatregelen te nemen.

De remediatie-engine van AIR bepaalt automatisch welke acties moeten worden ondernomen om een bedreiging te mitigeren, op basis van de ernst van de bedreiging, de impact op de organisatie, en de configuratie van automatische remediatie. AIR kan verschillende typen acties uitvoeren, zoals het isoleren van endpoints van het netwerk, het verwijderen of quarantineren van kwaadaardige bestanden, het blokkeren van verdachte processen, en het herstellen van wijzigingen die door malware zijn aangebracht. Deze acties worden uitgevoerd met behoud van business continuity waar mogelijk, waarbij AIR rekening houdt met de kritikaliteit van endpoints en de impact van remediatie-acties op gebruikers en processen. Organisaties kunnen de automatische remediatie configureren op basis van hun risicotolerantie, waarbij gevoelige omgevingen mogelijk strengere automatische acties vereisen, terwijl andere omgevingen meer menselijke controle behouden.

Integratie met Microsoft 365 Defender en Microsoft Sentinel maakt het mogelijk om AIR te gebruiken als onderdeel van een bredere XDR-strategie. Wanneer een incident wordt gedetecteerd in Defender voor Endpoint, kan AIR automatisch correlaties maken met waarschuwingen uit Microsoft Defender voor Office 365, Microsoft Defender voor Identity, en Microsoft Cloud App Security. Dit cross-domain onderzoek maakt het mogelijk om de volledige kill chain van een aanval te begrijpen, van de initiële phishing-email tot de uiteindelijke data exfiltration. Voor Nederlandse overheidsorganisaties die werken met een Zero Trust-architectuur, is deze integratie essentieel om te voldoen aan de eis dat alle signalen worden gecorreleerd en geanalyseerd, ongeacht waar ze vandaan komen. De integratie met Sentinel maakt bovendien het mogelijk om AIR-activiteiten te loggen en te monitoren, en om geavanceerde playbooks te creëren die AIR combineren met andere security tools en processen.

Typen geautomatiseerde onderzoeken en hun toepassing

Gebruik PowerShell-script automated-investigation-response.ps1 (functie Invoke-Monitoring) – Controleert de status van geautomatiseerde onderzoeken, analyseert incidenten en genereert rapportages over AIR-activiteiten en effectiviteit..

Microsoft Defender voor Endpoint ondersteunt verschillende typen geautomatiseerde onderzoeken, elk gericht op specifieke bedreigingstypen en scenario's. Malware-onderzoeken worden automatisch geactiveerd wanneer Defender sensors kwaadaardige bestanden detecteren, waarbij AIR analyseert waar het bestand vandaan komt, welke processen het heeft uitgevoerd, en welke endpoints mogelijk zijn geïnfecteerd. Phishing-onderzoeken correleren waarschuwingen uit Defender voor Office 365 met endpoint-activiteiten om te bepalen of gebruikers zijn gecompromitteerd door phishing-campagnes. Ransomware-onderzoeken gebruiken behavioral analysis om te detecteren wanneer endpoints worden versleuteld, en proberen automatisch de verspreiding te stoppen voordat alle data verloren gaat. Advanced persistent threat-onderzoeken focussen op geavanceerde technieken zoals living-off-the-land binaries, waarbij legitieme tools worden misbruikt om detectie te vermijden.

Elk type onderzoek volgt een gestructureerd proces dat begint met het verzamelen van context rondom de waarschuwing. AIR verzamelt automatisch informatie over de betrokken endpoints, gebruikers, processen, bestanden en netwerkverbindingen, en correleert deze met threat intelligence feeds en historische data. Vervolgens analyseert AIR de verzamelde informatie om te bepalen of er sprake is van een echte bedreiging, wat de omvang is van het incident, en welke remediatie-acties moeten worden ondernomen. Dit proces wordt continu verfijnd op basis van nieuwe threat intelligence en feedback van security teams, waardoor AIR steeds beter wordt in het onderscheiden van echte bedreigingen en false positives. Voor Nederlandse overheidsorganisaties die te maken hebben met een breed scala aan bedreigingen, van commodity malware tot geavanceerde nation-state attacks, is deze diversiteit aan onderzoekstypen essentieel om effectief te kunnen reageren op verschillende aanvalsscenario's.

De effectiviteit van geautomatiseerde onderzoeken hangt af van de kwaliteit en volledigheid van de data die beschikbaar is. AIR vereist daarom dat Defender sensors correct zijn geconfigureerd en dat endpoints volledige telemetrie verzenden. Organisaties moeten ervoor zorgen dat alle relevante endpoints zijn onboarded naar Defender voor Endpoint, dat sensor-configuraties zijn geoptimaliseerd voor de specifieke omgeving, en dat netwerksegmentatie en andere beveiligingscontroles correct zijn geconfigureerd. Wanneer endpoints niet volledig zijn geïnstrumenteerd, of wanneer netwerksegmentatie AIR beperkt in het verzamelen van context, kan de kwaliteit van automatische onderzoeken afnemen. Het is daarom essentieel om AIR te implementeren als onderdeel van een bredere security-architectuur, waarbij alle componenten correct zijn geconfigureerd en geïntegreerd.

Custom onderzoeken kunnen worden geconfigureerd om te reageren op specifieke bedreigingen of scenario's die uniek zijn voor een organisatie. Bijvoorbeeld, organisaties die werken met gevoelige data kunnen custom onderzoeken configureren die specifiek focussen op data exfiltration-pogingen, waarbij AIR automatisch analyseert of er ongebruikelijke data-transfers plaatsvinden en of deze transfers mogelijk kwaadaardig zijn. Organisaties in specifieke sectoren, zoals de gezondheidszorg of financiële dienstverlening, kunnen onderzoeken configureren die focussen op sector-specifieke bedreigingen en compliance-eisen. Deze flexibiliteit maakt het mogelijk om AIR aan te passen aan de unieke behoeften en risicoprofielen van elke organisatie, terwijl de algemene onderzoeken blijven functioneren voor standaard bedreigingen.

Configuratie, governance en monitoring van AIR

Effectieve implementatie van geautomatiseerde onderzoek en respons vereist zorgvuldige configuratie en governance om te borgen dat AIR correct functioneert zonder onbedoelde impact op business operations. Organisaties moeten eerst bepalen welke typen onderzoeken automatisch moeten worden uitgevoerd, welke remediatie-acties automatisch mogen worden genomen, en onder welke omstandigheden menselijke goedkeuring vereist is. Deze beslissingen moeten worden gebaseerd op de risicotolerantie van de organisatie, de kritikaliteit van verschillende omgevingen, en de compliance-eisen die gelden. Bijvoorbeeld, productieomgevingen die kritieke diensten ondersteunen kunnen vereisen dat alle remediatie-acties eerst worden goedgekeurd door een security team, terwijl testomgevingen mogelijk volledig automatische remediatie kunnen gebruiken.

Governance rondom AIR moet duidelijk definiëren wie verantwoordelijk is voor het configureren en monitoren van automatische onderzoeken, wie beslissingen neemt over remediatie-acties, en hoe escalatie plaatsvindt wanneer complexe incidenten worden gedetecteerd. Security teams moeten regelmatig de effectiviteit van AIR evalueren, waarbij wordt gekeken naar metrics zoals het aantal automatisch opgeloste incidenten, de tijd die wordt bespaard door automatisering, en het aantal false positives dat wordt gegenereerd. Deze evaluaties moeten worden gebruikt om AIR-configuraties te verfijnen en om te bepalen of aanvullende custom onderzoeken nodig zijn. Voor Nederlandse overheidsorganisaties is het bovendien essentieel om AIR-activiteiten te documenteren voor audit-doeleinden, waarbij wordt vastgelegd welke onderzoeken zijn uitgevoerd, welke acties zijn ondernomen, en wat de resultaten waren.

Monitoring van AIR-activiteiten is cruciaal om te verifiëren dat automatische onderzoeken correct functioneren en om problemen tijdig te identificeren. Organisaties moeten dashboards configureren die real-time inzicht geven in actieve onderzoeken, de status van remediatie-acties, en trends in incidentdetectie en -resolutie. Alerts moeten worden geconfigureerd voor scenario's waarin AIR niet in staat is om een incident automatisch op te lossen, of wanneer er indicatoren zijn dat een onderzoek mogelijk onjuiste conclusies heeft getrokken. Deze monitoring moet worden geïntegreerd met bestaande SIEM-oplossingen en incident response-processen, zodat security teams altijd op de hoogte zijn van AIR-activiteiten en kunnen ingrijpen wanneer nodig. Het bijbehorende PowerShell-script ondersteunt deze monitoring door geautomatiseerde rapportages te genereren die inzicht geven in AIR-activiteiten, compliance-status, en verbeterkansen.

Continue verbetering van AIR is essentieel om ervoor te zorgen dat automatische onderzoeken actueel blijven en effectief blijven functioneren in een veranderende threat landscape. Organisaties moeten regelmatig de configuratie van AIR evalueren op basis van nieuwe threat intelligence, wijzigingen in de omgeving, en lessons learned uit incidenten. Wanneer nieuwe bedreigingstypen opduiken, moeten custom onderzoeken worden geconfigureerd om deze te adresseren. Wanneer bestaande onderzoeken te veel false positives genereren, moeten ze worden verfijnd om de nauwkeurigheid te verbeteren. Deze continue verbetering maakt het mogelijk om AIR te optimaliseren voor de specifieke behoeften en risicoprofielen van elke organisatie, terwijl de algemene effectiviteit van automatische onderzoeken wordt behouden.

Integratie met incident response-processen en SOAR

Gebruik PowerShell-script automated-investigation-response.ps1 (functie Invoke-Remediation) – Genereert remediatieplannen voor incidenten die niet automatisch kunnen worden opgelost, inclusief prioritering en escalatie-aanbevelingen..

Geautomatiseerde onderzoek en respons moet worden geïntegreerd met bestaande incident response-processen om ervoor te zorgen dat AIR-activiteiten naadloos aansluiten bij de bredere security operations van een organisatie. Dit betekent dat AIR-incidenten moeten worden geregistreerd in hetzelfde ticketing-systeem dat wordt gebruikt voor handmatige incidenten, dat escalatie-procedures moeten worden gedefinieerd voor scenario's waarin AIR niet in staat is om een incident op te lossen, en dat post-incident reviews moeten worden uitgevoerd voor zowel automatisch als handmatig opgeloste incidenten. Deze integratie maakt het mogelijk om AIR te behandelen als een verlengstuk van het security team, waarbij automatische onderzoeken dezelfde kwaliteitsstandaarden en processen volgen als handmatige onderzoeken.

Integratie met SOAR-platforms zoals Microsoft Sentinel maakt het mogelijk om AIR te combineren met andere geautomatiseerde security tools en processen. Bijvoorbeeld, wanneer AIR een incident detecteert, kan een Sentinel-playbook automatisch worden geactiveerd die aanvullende informatie verzamelt uit andere security tools, externe threat intelligence feeds raadpleegt, en indien nodig externe experts inschakelt. Deze integratie maakt het mogelijk om complexe, multi-stap incident response-workflows te automatiseren die verder gaan dan wat AIR alleen kan doen, terwijl AIR de initiële detectie en analyse verzorgt. Voor Nederlandse overheidsorganisaties die werken met een Zero Trust-architectuur en meerdere security tools, is deze SOAR-integratie essentieel om ervoor te zorgen dat alle signalen worden gecorreleerd en geanalyseerd, ongeacht waar ze vandaan komen.

Training en awareness zijn cruciaal om ervoor te zorgen dat security teams effectief kunnen werken met AIR en begrijpen wanneer zij moeten ingrijpen in automatische processen. Security analysts moeten worden getraind in het interpreteren van AIR-resultaten, het identificeren van scenario's waarin handmatige interventie nodig is, en het gebruik van AIR-data voor threat hunting en forensisch onderzoek. Deze training moet worden gecombineerd met regelmatige oefeningen waarin security teams werken met AIR in gesimuleerde incidenten, zodat zij vertrouwd raken met de tooling en processen. Voor Nederlandse overheidsorganisaties is het bovendien essentieel om bestuurders en stakeholders te informeren over de voordelen en beperkingen van AIR, zodat realistische verwachtingen worden gesteld over wat automatisering kan bereiken en wat menselijke expertise vereist.

Metingen en rapportage zijn essentieel om de effectiviteit van AIR te demonstreren en om continue verbetering te ondersteunen. Organisaties moeten metrics bijhouden zoals het aantal automatisch opgeloste incidenten, de gemiddelde tijd tot resolutie voor automatische versus handmatige incidenten, de kostenbesparingen die worden gerealiseerd door automatisering, en de tevredenheid van security teams met AIR-functionaliteit. Deze metrics moeten worden gebruikt om business cases te onderbouwen voor uitbreiding van AIR-capaciteiten, om te demonstreren dat organisaties voldoen aan compliance-eisen voor snelle incident response, en om te identificeren waar verbeteringen mogelijk zijn. Voor Nederlandse overheidsorganisaties zijn deze metrics bovendien essentieel voor rapportages aan bestuurders en toezichthouders, waarbij wordt aangetoond dat passende technische maatregelen zijn getroffen voor incident detection en response.

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 Monitoring en compliance checks voor geautomatiseerde onderzoek en respons (AIR) in Microsoft Defender voor Endpoint. .DESCRIPTION Ondersteunt Nederlandse overheidsorganisaties bij het monitoren van AIR-activiteiten, het analyseren van incidenten, en het genereren van compliance-rapportages. Ondersteunt DebugMode voor lokale tests. .NOTES Filename: automated-investigation-response.ps1 Author: Nederlandse Baseline voor Veilige Cloud Created: 2025-11-27 Last Modified: 2025-11-27 Version: 1.0 Related JSON: content/m365/defender-endpoint/automated-investigation-response.json .EXAMPLE .\automated-investigation-response.ps1 -Function Invoke-Monitoring -DebugMode Voert monitoring uit met voorbeelddata zonder cloudverbinding. .EXAMPLE .\automated-investigation-response.ps1 -Function Invoke-Monitoring Controleert de status van geautomatiseerde onderzoeken en incidenten. .EXAMPLE .\automated-investigation-response.ps1 -Function Invoke-Remediation Genereert een remediatieplan voor incidenten die niet automatisch kunnen worden opgelost. #> #Requires -Version 5.1 #Requires -Modules Microsoft.Graph.Beta, Microsoft.Graph.Security [CmdletBinding()] param( [Parameter(HelpMessage = "Voer het script uit met voorbeelddata en zonder cloudverbinding.")] [switch]$DebugMode, [Parameter(HelpMessage = "Bepaal welke functie moet draaien.")] [ValidateSet("Invoke-Monitoring", "Invoke-Remediation", "Invoke-Implementation")] [string]$Function = "Invoke-Monitoring", [Parameter(HelpMessage = "Schakel WhatIf modus in om wijzigingen te simuleren.")] [switch]$WhatIf ) $ErrorActionPreference = 'Stop' $VerbosePreference = 'Continue' function Connect-RequiredServices { <# .SYNOPSIS Maakt verbinding met Microsoft Graph indien nodig. #> [CmdletBinding()] param() if ($DebugMode) { Write-Host "DebugMode actief: overslaan van cloudverbindingen." -ForegroundColor Yellow return } Write-Host "Verbinding maken met Microsoft Graph..." -ForegroundColor Gray try { $context = Get-MgContext if (-not $context) { Connect-MgGraph -Scopes @( "SecurityEvents.Read.All", "SecurityIncident.Read.All", "SecurityIncident.ReadWrite.All" ) -ErrorAction Stop | Out-Null } if ((Get-MgContext).ApiVersion -ne 'beta') { Select-MgProfile -Name 'beta' } Write-Host "Microsoft Graph sessie actief." -ForegroundColor Green } catch { Write-Error "Fout bij verbinden met Microsoft Graph: $($_.Exception.Message)" exit 1 } } function Get-AIRInvestigations { <# .SYNOPSIS Haalt een lijst op van geautomatiseerde onderzoeken. .DESCRIPTION In een productieomgeving zou deze functie onderzoeken ophalen via Microsoft Graph Security API. In deze referentie-implementatie wordt gewerkt met een eenvoudige statische lijst om lokale debugging mogelijk te maken. .OUTPUTS Array van PSCustomObject met onderzoek-informatie. #> [CmdletBinding()] param() if ($DebugMode) { return @( [PSCustomObject]@{ InvestigationId = "inv-001" InvestigationType = "Malware" Status = "Completed" StartTime = (Get-Date).AddHours(-2) EndTime = (Get-Date).AddHours(-1) DevicesAffected = 3 ActionsTaken = @("Quarantined", "Removed") AutoRemediated = $true Severity = "High" }, [PSCustomObject]@{ InvestigationId = "inv-002" InvestigationType = "Phishing" Status = "InProgress" StartTime = (Get-Date).AddMinutes(-30) EndTime = $null DevicesAffected = 1 ActionsTaken = @() AutoRemediated = $false Severity = "Medium" }, [PSCustomObject]@{ InvestigationId = "inv-003" InvestigationType = "Ransomware" Status = "Completed" StartTime = (Get-Date).AddHours(-4) EndTime = (Get-Date).AddHours(-3) DevicesAffected = 5 ActionsTaken = @("Isolated", "Quarantined", "Restored") AutoRemediated = $true Severity = "Critical" } ) } Write-Verbose "Productiedata ophalen van geautomatiseerde onderzoeken..." # Hier zou de logica komen om echte onderzoeken op te halen via Microsoft Graph Security API # Bijvoorbeeld: Get-MgSecurityIncident of Invoke-RestMethod naar https://api.security.microsoft.com return @() } function Get-AIRIncidents { <# .SYNOPSIS Haalt een lijst op van security-incidenten. .OUTPUTS Array van PSCustomObject met incident-informatie. #> [CmdletBinding()] param() if ($DebugMode) { return @( [PSCustomObject]@{ IncidentId = "inc-001" Title = "Malware detected on multiple endpoints" Severity = "High" Status = "Resolved" CreatedDateTime = (Get-Date).AddHours(-3) ResolvedDateTime = (Get-Date).AddHours(-2) InvestigationId = "inv-001" AutoRemediated = $true }, [PSCustomObject]@{ IncidentId = "inc-002" Title = "Suspicious PowerShell activity" Severity = "Medium" Status = "Active" CreatedDateTime = (Get-Date).AddMinutes(-45) ResolvedDateTime = $null InvestigationId = "inv-002" AutoRemediated = $false } ) } Write-Verbose "Productiedata ophalen van security-incidenten..." # Hier zou de logica komen om echte incidenten op te halen return @() } function Invoke-Monitoring { <# .SYNOPSIS Controleert de status van geautomatiseerde onderzoeken en incidenten. .DESCRIPTION Analyseert AIR-activiteiten, genereert rapportages over effectiviteit en compliance-status, en identificeert trends in incidentdetectie en -resolutie. .OUTPUTS PSCustomObject met monitoring-resultaten. #> [CmdletBinding()] param() Connect-RequiredServices Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "AIR Monitoring" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan $investigations = Get-AIRInvestigations $incidents = Get-AIRIncidents $totalInvestigations = $investigations.Count $completedInvestigations = ($investigations | Where-Object { $_.Status -eq "Completed" }).Count $inProgressInvestigations = ($investigations | Where-Object { $_.Status -eq "InProgress" }).Count $autoRemediated = ($investigations | Where-Object { $_.AutoRemediated -eq $true }).Count $totalIncidents = $incidents.Count $resolvedIncidents = ($incidents | Where-Object { $_.Status -eq "Resolved" }).Count $autoRemediatedIncidents = ($incidents | Where-Object { $_.AutoRemediated -eq $true }).Count Write-Host "`nGeautomatiseerde onderzoeken:" -ForegroundColor White Write-Host " Totaal: $totalInvestigations" -ForegroundColor White Write-Host " Voltooid: $completedInvestigations" -ForegroundColor $(if ($completedInvestigations -gt 0) { 'Green' } else { 'Yellow' }) Write-Host " In uitvoering: $inProgressInvestigations" -ForegroundColor $(if ($inProgressInvestigations -gt 0) { 'Yellow' } else { 'Green' }) Write-Host " Automatisch opgelost: $autoRemediated" -ForegroundColor $(if ($autoRemediated -gt 0) { 'Green' } else { 'Yellow' }) Write-Host "`nSecurity-incidenten:" -ForegroundColor White Write-Host " Totaal: $totalIncidents" -ForegroundColor White Write-Host " Opgelost: $resolvedIncidents" -ForegroundColor $(if ($resolvedIncidents -eq $totalIncidents) { 'Green' } else { 'Yellow' }) Write-Host " Automatisch opgelost: $autoRemediatedIncidents" -ForegroundColor $(if ($autoRemediatedIncidents -gt 0) { 'Green' } else { 'Yellow' }) if ($investigations.Count -gt 0) { Write-Host "`nRecente onderzoeken:" -ForegroundColor Cyan $investigations | Select-Object InvestigationId, InvestigationType, Status, Severity, AutoRemediated, DevicesAffected | Format-Table -AutoSize } if ($incidents.Count -gt 0) { Write-Host "`nRecente incidenten:" -ForegroundColor Cyan $incidents | Select-Object IncidentId, Title, Severity, Status, AutoRemediated | Format-Table -AutoSize } $complianceStatus = if ($autoRemediated -gt 0) { "Compliant" } else { "Non-Compliant" } $result = [PSCustomObject]@{ ReportDate = Get-Date TotalInvestigations = $totalInvestigations CompletedInvestigations = $completedInvestigations InProgressInvestigations = $inProgressInvestigations AutoRemediated = $autoRemediated TotalIncidents = $totalIncidents ResolvedIncidents = $resolvedIncidents AutoRemediatedIncidents = $autoRemediatedIncidents ComplianceStatus = $complianceStatus Investigations = $investigations Incidents = $incidents } # Export naar JSON voor verdere analyse $reportPath = Join-Path $PSScriptRoot "AIR_Monitoring_Report.json" $result | ConvertTo-Json -Depth 5 | Out-File -FilePath $reportPath -Encoding UTF8 Write-Host "`nRapport opgeslagen: $reportPath" -ForegroundColor Green return $result } function Invoke-Remediation { <# .SYNOPSIS Genereert een remediatieplan voor incidenten die niet automatisch kunnen worden opgelost. .DESCRIPTION Analyseert incidenten die handmatige interventie vereisen en genereert een prioriteringsplan op basis van ernst, impact en compliance-eisen. .OUTPUTS PSCustomObject met remediatieplan. #> [CmdletBinding()] param() Connect-RequiredServices Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "AIR Remediatieplan" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan $monitoringResult = Invoke-Monitoring $incidentsRequiringAction = $monitoringResult.Incidents | Where-Object { $_.Status -ne "Resolved" -or -not $_.AutoRemediated } if ($incidentsRequiringAction.Count -eq 0) { Write-Host "`nAlle incidenten zijn automatisch opgelost. Geen remediatie nodig." -ForegroundColor Green return } # Prioritering op basis van ernst $prioritizedIncidents = $incidentsRequiringAction | Sort-Object { switch ($_.Severity) { "Critical" { 1 } "High" { 2 } "Medium" { 3 } "Low" { 4 } default { 5 } } } Write-Host "`nRemediatieplan (geprioriteerd op ernst):" -ForegroundColor Yellow $priority = 1 foreach ($incident in $prioritizedIncidents) { Write-Host "`n[$priority] $($incident.Title)" -ForegroundColor Cyan Write-Host " Incident ID: $($incident.IncidentId)" -ForegroundColor White Write-Host " Ernst: $($incident.Severity)" -ForegroundColor $(if ($incident.Severity -eq "Critical") { 'Red' } else { 'Yellow' }) Write-Host " Status: $($incident.Status)" -ForegroundColor White Write-Host " Aanbevolen actie: Handmatige analyse en remediatie vereist" -ForegroundColor Gray $priority++ } $remediationPlan = [PSCustomObject]@{ ReportDate = Get-Date TotalIncidentsToRemediate = $incidentsRequiringAction.Count PrioritizedIncidents = $prioritizedIncidents EstimatedEffort = "1-4 uur per incident (afhankelijk van complexiteit)" RecommendedSteps = @( "1. Analyseer het incident in Microsoft 365 Defender", "2. Verzamel aanvullende context uit logs en telemetrie", "3. Bepaal de omvang en impact van het incident", "4. Voer passende remediatie-acties uit", "5. Verifieer dat het incident is opgelost", "6. Documenteer lessons learned", "7. Update AIR-configuratie indien nodig" ) } $planPath = Join-Path $PSScriptRoot "AIR_Remediation_Plan.json" $remediationPlan | ConvertTo-Json -Depth 5 | Out-File -FilePath $planPath -Encoding UTF8 Write-Host "`nRemediatieplan opgeslagen: $planPath" -ForegroundColor Green if ($WhatIf) { Write-Host "`n[WhatIf] Geen wijzigingen doorgevoerd." -ForegroundColor Yellow } return $remediationPlan } function Invoke-Implementation { <# .SYNOPSIS Implementeert AIR-configuratie en optimalisaties. .DESCRIPTION Dit is een geavanceerde functie die automatisch AIR-configuraties kan optimaliseren. In productie zou deze functie uitgebreide validatie en goedkeuringsworkflows bevatten. #> [CmdletBinding()] param() Write-Host "[INFO] Automatische implementatie van AIR-configuraties vereist uitgebreide validatie." -ForegroundColor Yellow Write-Host "[INFO] Gebruik Invoke-Remediation om een gedetailleerd plan te genereren." -ForegroundColor Yellow Write-Host "[INFO] Implementatie moet handmatig worden uitgevoerd op basis van het remediatieplan." -ForegroundColor Yellow Invoke-Remediation } # Hoofdlogica voor scriptuitvoering switch ($Function) { "Invoke-Monitoring" { Invoke-Monitoring } "Invoke-Remediation" { Invoke-Remediation } "Invoke-Implementation" { Invoke-Implementation } default { Write-Error "Onbekende functie: $Function" } }

Risico zonder implementatie

Risico zonder implementatie
Critical: Zonder geautomatiseerde onderzoek en respons moeten security teams elk incident handmatig analyseren, wat leidt tot vertragingen, menselijke fouten en niet-naleving van BIO en NIS2-eisen voor snelle incident response.

Management Samenvatting

Implementeer geautomatiseerde onderzoek en respons binnen Microsoft Defender voor Endpoint om bedreigingen binnen minuten te detecteren, analyseren en mitigeren. Configureer automatische onderzoeken op basis van risicotolerantie, integreer met incident response-processen en SOAR-platforms, en monitor AIR-activiteiten voor continue verbetering. Het bijbehorende PowerShell-script ondersteunt monitoring en compliance-rapportages.