Microsoft Defender Voor Endpoint: Network Protection Ingeschakeld

💼 Management Samenvatting

Network Protection is een cruciale beveiligingslaag van Microsoft Defender voor Endpoint die endpoints beschermt tegen kwaadaardige URLs en IP-adressen door toegang tot deze netwerkbronnen te blokkeren voordat malware kan worden gedownload of gegevens kunnen worden gelekt. Deze functie werkt op applicatieniveau en blokkeert connecties naar malafide domeinen, IP-adressen en URLs die bekend staan om phishing, malware-distributie, command-and-control communicatie en data exfiltration. Network Protection vormt een essentiële component van defense in depth strategieën en is verplicht voor alle Nederlandse overheidsorganisaties die compliance moeten waarborgen met frameworks zoals NIS2, BIO en ISO 27001.

Aanbeveling
IMPLEMENT
Risico zonder
High
Risk Score
8/10
Implementatie
30u (tech: 20u)
Van toepassing op:
Microsoft 365 E3
Microsoft 365 E5
Microsoft Defender voor Endpoint Plan 1
Microsoft Defender voor Endpoint Plan 2

Moderne cyberbedreigingen gebruiken steeds vaker netwerkverbindingen als primaire aanvalsvector. Phishing-aanvallen leiden gebruikers naar malafide websites die malware downloaden of credentials stelen. Command-and-control servers communiceren met gecompromitteerde endpoints om instructies te geven voor ransomware-activiteiten of data exfiltration. Malware downloaders maken verbinding met externe servers om aanvullende kwaadaardige componenten te downloaden na de initiële infectie. Cryptomining malware communiceert met mining pools via het internet zonder dat gebruikers hiervan op de hoogte zijn. Data exfiltration gebeurt door gecompromitteerde endpoints die gevoelige gegevens doorsturen naar externe servers. Zonder Network Protection hebben endpoints geen bescherming tegen deze netwerkgebaseerde bedreigingen, waardoor zelfs endpoints met goede antivirusbescherming kwetsbaar blijven voor aanvallen die via het netwerk worden uitgevoerd. Volgens recente security-rapporten wordt meer dan 60% van alle malware via netwerkverbindingen gedistribueerd, en meer dan 80% van alle data breaches omvat data exfiltration via externe verbindingen. Network Protection is daarom essentieel voor het voorkomen van malware-infecties, het blokkeren van command-and-control communicatie en het voorkomen van data exfiltration, wat kritiek is voor Nederlandse overheidsorganisaties die moeten voldoen aan strikte gegevensbeschermingseisen.

PowerShell Modules Vereist
Primary API: Microsoft Defender for Endpoint API, Microsoft Graph Security API
Connection: Connect-MgGraph, Connect-MicrosoftDefender
Required Modules: Microsoft.Graph, Microsoft.Graph.Security

Implementatie

Dit artikel beschrijft een complete, stapsgewijze aanpak voor het inschakelen en configureren van Network Protection in Microsoft Defender voor Endpoint. De gids behandelt alle belangrijke aspecten van Network Protection configuratie, inclusief het begrijpen van hoe Network Protection werkt op applicatieniveau om netwerkverbindingen te blokkeren, het configureren van Network Protection via verschillende methoden zoals Group Policy, Microsoft Endpoint Manager (Intune), PowerShell en Microsoft 365 Defender portal, het implementeren van Network Protection in verschillende modi zoals Block mode voor maximale bescherming en Audit mode voor testdoeleinden, het configureren van uitzonderingen voor legitieme applicaties die mogelijk worden geblokkeerd, het monitoren van Network Protection blokkeringen en logs, en het integreren van Network Protection met andere beveiligingslagen zoals Next-Generation Protection en Endpoint Detection and Response. Voor elke configuratiemethode worden concrete implementatiestappen beschreven, inclusief configuratie-instructies, best practices voor het optimaliseren van beschermingseffectiviteit, richtlijnen voor het minimaliseren van false positives, en verificatiemethoden om te controleren dat Network Protection correct wordt toegepast op alle endpoints. Daarnaast worden best practices beschreven voor het beheren van Network Protection configuratie op de lange termijn, inclusief regelmatige reviews van blokkeringen, updates van uitzonderingen, en optimalisatie op basis van nieuwe bedreigingen en organisatorische veranderingen.

Vereisten voor Network Protection Implementatie

Voor het implementeren van Network Protection in Microsoft Defender voor Endpoint zijn verschillende technische, organisatorische en licentievereisten noodzakelijk. Op technisch niveau is Microsoft Defender voor Endpoint vereist, wat beschikbaar is als onderdeel van Microsoft 365 E3, Microsoft 365 E5, of als standalone Microsoft Defender voor Endpoint Plan 1 of Plan 2 licentie. Network Protection is beschikbaar voor alle Windows 10 versie 1709 of hoger en Windows 11 endpoints, evenals Windows Server 2019 en 2022. Alle endpoints moeten correct zijn onboarded naar Defender voor Endpoint via verschillende methoden zoals Group Policy, Microsoft Endpoint Manager (Intune), Script-based onboarding, of Mobile Device Management (MDM) voor mobiele apparaten. Endpoints moeten ook Microsoft Defender Antivirus hebben geïnstalleerd en actief hebben, omdat Network Protection een onderdeel is van Microsoft Defender Antivirus functionaliteit. Voor volledige Network Protection functionaliteit moeten endpoints verbonden zijn met internet om toegang te krijgen tot Microsoft's cloud-gebaseerde intelligentie over malafide URLs en IP-adressen.

Op organisatorisch niveau vereist Network Protection implementatie duidelijke governance-structuren en besluitvormingsprocessen. Dit begint met het vaststellen van een Network Protection Beleid dat beschrijft welke configuratiemodus moet worden gebruikt (Block of Audit), welke uitzonderingen moeten worden geconfigureerd, wie verantwoordelijk is voor het beheren van Network Protection configuratie, en welke procedures moeten worden gevolgd wanneer Network Protection legitieme applicaties blokkeert. Dit beleid moet worden ontwikkeld in samenwerking met de CISO, security officers, IT-beheerders en applicatie-eigenaren, en moet worden goedgekeurd door het management voordat implementatie begint. Daarnaast is het essentieel om een implementatieplan op te stellen dat beschrijft in welke volgorde endpoints moeten worden geconfigureerd, wie verantwoordelijk is voor elke stap, welke testscenario's moeten worden uitgevoerd, en welke deadlines er zijn voor het voltooien van de implementatie. Dit plan moet ook rekening houden met de impact op bestaande applicaties en processen, en moet voorzieningen bevatten voor het snel terugdraaien van configuraties indien dit nodig is.

Op operationeel niveau vereist Network Protection implementatie voldoende technische expertise en resources. Organisaties moeten ervoor zorgen dat IT-beheerders beschikken over de juiste kennis en vaardigheden om Network Protection te configureren en te beheren, bijvoorbeeld door training te volgen over Defender voor Endpoint technieken, beveiligingsbest practices, troubleshooting-methoden, en het analyseren van Network Protection logs. Daarnaast moeten organisaties ervoor zorgen dat er voldoende tijd en resources beschikbaar zijn voor het implementeren van Network Protection, het testen van configuraties, het afhandelen van false positives, en het documenteren van implementaties. Dit kan betekenen dat organisaties een projectteam samenstellen dat specifiek is toegewezen aan Network Protection implementatie, of dat zij externe consultants inschakelen om ondersteuning te bieden bij de implementatie. Door deze vereisten proactief aan te pakken, kunnen organisaties ervoor zorgen dat Network Protection implementatie soepel verloopt en dat alle benodigde beveiligingsmaatregelen correct worden geïmplementeerd zonder onnodige verstoringen van bedrijfsprocessen.

Stapsgewijze Implementatie van Network Protection

Gebruik PowerShell-script network-protection-enabled.ps1 (functie Invoke-Remediation) – PowerShell script voor het inschakelen van Network Protection op Windows endpoints via Microsoft Defender Antivirus configuratie.

De implementatie van Network Protection begint met het bepalen van de juiste configuratiemodus. Network Protection kan worden geconfigureerd in drie modi: Block mode (waarde 1), waarin malafide netwerkverbindingen volledig worden geblokkeerd voor maximale bescherming; Audit mode (waarde 2), waarin verbindingen worden gelogd maar niet geblokkeerd, wat nuttig is voor testdoeleinden en het identificeren van potentiële false positives; en Disabled mode (waarde 0), waarin Network Protection is uitgeschakeld. Voor productieomgevingen wordt sterk aanbevolen om Block mode te gebruiken voor maximale bescherming, maar organisaties kunnen beginnen met Audit mode om te testen of Network Protection legitieme applicaties blokkeert voordat zij volledig overgaan naar Block mode.

De primaire configuratiemethode voor Network Protection is via Group Policy, wat ideaal is voor on-premises omgevingen en hybride configuraties. Configureer Network Protection via Group Policy door te navigeren naar Computer Configuration → Policies → Administrative Templates → Windows Components → Microsoft Defender Antivirus → Network Protection. Open de policy 'Turn on Network Protection' en stel deze in op 'Enabled'. Selecteer 'Block' voor Block mode of 'Audit' voor Audit mode. Voor Block mode worden alle malafide netwerkverbindingen geblokkeerd, terwijl Audit mode verbindingen logt zonder te blokkeren. Nadat de Group Policy is geconfigureerd, moet deze worden toegepast op alle endpoints via Group Policy update (gpupdate /force) of door endpoints opnieuw op te starten. Verifieer dat Network Protection correct is geconfigureerd door de configuratie te controleren op endpoints via PowerShell met het commando Get-MpPreference | Select-Object EnableNetworkProtection, waarbij de waarde 1 wijst op Block mode en waarde 2 wijst op Audit mode.

Voor cloud-gebaseerde omgevingen of organisaties die Microsoft Endpoint Manager (Intune) gebruiken, kan Network Protection worden geconfigureerd via Endpoint Security policies. Navigeer naar het Microsoft Endpoint Manager admin center en selecteer Endpoint security → Antivirus. Maak een nieuwe policy of bewerk een bestaande policy en configureer de instelling 'Enable Network Protection' op 'Block' voor maximale bescherming of 'Audit' voor testdoeleinden. Wijs de policy toe aan de juiste device groups of user groups en wacht tot de policy is geïmplementeerd op endpoints. De policy wordt automatisch toegepast op endpoints wanneer zij verbinding maken met Intune, wat meestal binnen enkele minuten gebeurt, maar kan tot 24 uur duren afhankelijk van de Intune sync frequentie. Verifieer dat Network Protection correct is geconfigureerd via Intune door te navigeren naar Endpoint security → Antivirus en de policy status te controleren, of door de configuratie direct op endpoints te controleren via PowerShell.

Network Protection kan ook worden geconfigureerd via PowerShell voor directe configuratie op individuele endpoints of voor automatisering via scripts. Gebruik het commando Set-MpPreference -EnableNetworkProtection 1 om Network Protection in te schakelen in Block mode, of Set-MpPreference -EnableNetworkProtection 2 voor Audit mode. Voor het uitschakelen van Network Protection gebruik Set-MpPreference -EnableNetworkProtection 0. PowerShell configuratie is nuttig voor testing, troubleshooting, of voor endpoints die niet worden beheerd via Group Policy of Intune. Het is belangrijk om te onthouden dat PowerShell configuratie lokaal is op elke endpoint en kan worden overschreven door Group Policy of Intune policies. Voor productieomgevingen wordt aanbevolen om Group Policy of Intune te gebruiken voor gecentraliseerd beheer, terwijl PowerShell kan worden gebruikt voor verificatie en troubleshooting.

Na het configureren van Network Protection moeten organisaties uitzonderingen configureren voor legitieme applicaties die mogelijk worden geblokkeerd. Uitzonderingen kunnen worden geconfigureerd via Group Policy door te navigeren naar Computer Configuration → Policies → Administrative Templates → Windows Components → Microsoft Defender Antivirus → Exclusions → Exclusion Process. Voeg processen toe die uitzondering nodig hebben, bijvoorbeeld specifieke applicaties die legitiem verbinding maken met externe servers. Uitzonderingen kunnen ook worden geconfigureerd via PowerShell met het commando Add-MpPreference -ExclusionProcess 'ProcessName.exe'. Het is belangrijk om uitzonderingen zorgvuldig te configureren om te voorkomen dat security wordt verzwakt, en om regelmatig te reviewen of uitzonderingen nog steeds nodig zijn. Test uitzonderingen eerst in Audit mode voordat zij worden geïmplementeerd in Block mode om te verifiëren dat zij correct werken zonder security te compromitteren.

Monitoring en Effectiviteit Meting van Network Protection

Gebruik PowerShell-script network-protection-enabled.ps1 (functie Invoke-Monitoring) – Controleert de configuratiestatus van Network Protection op endpoints en rapporteert over compliance, blokkeringen en eventuele configuratieproblemen.

Continue monitoring van Network Protection is essentieel om te verifiëren dat het systeem correct functioneert, om de effectiviteit te meten, en om de configuratie te optimaliseren. De primaire monitoring interface is het Microsoft 365 Defender portal onder Security → Endpoints → Reports → Network Protection, waar een overzicht wordt getoond van alle Network Protection blokkeringen, gedetecteerde bedreigingen, en endpoints die zijn beschermd door Network Protection. Het dashboard toont key metrics zoals aantal geblokkeerde netwerkverbindingen, aantal gedetecteerde malafide URLs en IP-adressen, aantal endpoints met Network Protection ingeschakeld, en het percentage endpoints dat is beschermd. Deze metrics geven inzicht in de effectiviteit van Network Protection en helpen bij het identificeren van verbeterpunten.

Voor gedetailleerde analyse van individuele blokkeringen kunnen security analisten inzoomen op specifieke events via het Network Protection Events dashboard. Hier wordt een tijdlijn getoond van alle Network Protection gebeurtenissen, inclusief wanneer verbindingen werden geblokkeerd, welke URLs of IP-adressen werden geblokkeerd, welke applicaties de verbinding probeerden te maken, en welke endpoints betrokken waren. Analisten kunnen ook de verzamelde telemetrie reviewen, bijvoorbeeld door Advanced Hunting queries uit te voeren om aanvullende context te verzamelen over Network Protection gebeurtenissen, of door Threat Analytics rapporten te raadplegen voor informatie over gedetecteerde bedreigingen. Deze detailweergave is essentieel voor het begrijpen van hoe Network Protection bedreigingen blokkeert en voor het identificeren van false positives of gemiste bedreigingen.

Naast het monitoren van individuele blokkeringen is het belangrijk om trends en patronen te identificeren over langere perioden. Het Network Protection dashboard biedt verschillende rapportage-opties waarmee organisaties kunnen analyseren welke typen bedreigingen het meest voorkomen, welke URLs of IP-adressen het meest worden geblokkeerd, en welke endpoints het meest worden aangevallen. Deze data kan worden gebruikt om de configuratie te optimaliseren, bijvoorbeeld door extra uitzonderingen toe te voegen voor legitieme applicaties die regelmatig worden geblokkeerd, of door specifieke bedreigingsindicatoren te prioriteren. Organisaties kunnen ook custom reports genereren voor management en compliance doeleinden, waarbij wordt getoond hoe Network Protection bijdraagt aan de overall security posture en hoeveel bedreigingen worden geblokkeerd.

Een kritiek aspect van monitoring is het identificeren en corrigeren van false positives. Wanneer Network Protection een legitieme verbinding blokkeert, moet deze false positive worden gedocumenteerd en geanalyseerd om te voorkomen dat soortgelijke verbindingen in de toekomst opnieuw worden geblokkeerd. Het Defender voor Endpoint systeem leert van deze feedback, maar organisaties kunnen ook expliciet uitzonderingen configureren voor specifieke scenario's via Group Policy of PowerShell. Daarnaast moeten organisaties regelmatig reviewen of Network Protection alle relevante bedreigingen blokkeert. Wanneer security analisten handmatig bedreigingen detecteren die door Network Protection niet zijn geblokkeerd, moet worden geanalyseerd waarom dit is gebeurd en of de configuratie moet worden aangepast om deze bedreigingen in de toekomst wel automatisch te blokkeren.

Voor compliance en audit doeleinden moeten alle Network Protection configuraties en blokkeringen worden gelogd en bewaard. De Microsoft 365 Defender portal biedt uitgebreide logging mogelijkheden, maar organisaties moeten ook zorgen dat deze logs worden geëxporteerd naar een centraal logging systeem zoals een SIEM voor langetermijn opslag en correlatie met andere security events. Audit logs moeten informatie bevatten over wanneer verbindingen werden geblokkeerd, welke URLs of IP-adressen werden geblokkeerd, welke applicaties de verbinding probeerden te maken, welke endpoints betrokken waren, en welke acties werden uitgevoerd. Deze logs zijn essentieel voor het aantonen van compliance met NIS2 vereisten voor bedreigingsdetectie en voor het ondersteunen van interne en externe audits.

Remediatie en Troubleshooting van Network Protection

Gebruik PowerShell-script network-protection-enabled.ps1 (functie Invoke-Remediation) – Schakelt Network Protection in op endpoints die deze functie nog niet hebben geactiveerd of herstelt ontbrekende configuraties.

Wanneer problemen optreden met Network Protection zijn verschillende remediatiestrategieën beschikbaar. Een veelvoorkomend probleem is dat Network Protection legitieme applicaties blokkeert, wat leidt tot false positives en gebruikersfrustratie. Dit kan worden opgelost door uitzonderingen te configureren via Group Policy of PowerShell voor specifieke processen of applicaties. Uitzonderingen kunnen worden geconfigureerd op basis van procesnamen, bestandspaden, of gebruikersgroepen. Het is belangrijk om uitzonderingen zorgvuldig te configureren om te voorkomen dat security wordt verzwakt, en om regelmatig te reviewen of uitzonderingen nog steeds nodig zijn. Test uitzonderingen eerst in Audit mode voordat zij worden geïmplementeerd in Block mode om te verifiëren dat zij correct werken zonder security te compromitteren.

Een ander veelvoorkomend probleem is dat Network Protection niet correct is geconfigureerd op endpoints, waardoor endpoints niet worden beschermd. Dit kan worden geverifieerd via PowerShell met het commando Get-MpPreference | Select-Object EnableNetworkProtection, waarbij de waarde moet zijn 1 voor Block mode of 2 voor Audit mode. Endpoints met waarde 0 hebben Network Protection niet ingeschakeld en moeten worden geconfigureerd via Group Policy, Intune, of PowerShell. Het monitoring script kan helpen bij het identificeren van endpoints die Network Protection niet hebben ingeschakeld en kan aanbevelingen doen voor remediatie. Voor endpoints die worden beheerd via Group Policy moet worden gecontroleerd of de Group Policy correct is toegepast, of de Group Policy moet worden geüpdatet, of de endpoints moeten opnieuw worden opgestart om de Group Policy te laten gelden.

Wanneer Network Protection niet correct werkt kan dit wijzen op configuratieproblemen, licentieproblemen, of connectivity problemen. Configuratieproblemen kunnen worden geïdentificeerd door de configuratie-instellingen te reviewen via PowerShell of Group Policy en te verifiëren dat alle vereiste settings correct zijn geconfigureerd. Licentieproblemen kunnen worden geïdentificeerd door te controleren of de juiste licenties zijn toegewezen aan gebruikers en endpoints, en of Microsoft Defender voor Endpoint correct is geactiveerd. Connectivity problemen kunnen optreden wanneer endpoints geen verbinding kunnen maken met Microsoft's cloud-gebaseerde intelligentie over malafide URLs en IP-adressen. Dit kan worden geverifieerd door te controleren of endpoints internettoegang hebben en of er geen firewallregels zijn die de verbinding blokkeren. Voor problemen met cloud-connectiviteit moet worden gecontroleerd of endpoints correct zijn geconfigureerd voor cloud-delivered protection en of er voldoende netwerkverbinding is.

Compliance en Framework Mapping voor Network Protection

Network Protection is essentieel voor compliance met verschillende security frameworks. Voor CIS Microsoft 365 Foundations Benchmark is dit relevant voor control 8.3 (Network protection - Web filtering en URL blocking capabilities), wat vereist dat organisaties endpoints beschermen tegen kwaadaardige URLs en IP-adressen door netwerkverbindingen te blokkeren. Deze control is essentieel voor het voorkomen van phishing-aanvallen, malware downloads, en data exfiltration via netwerkverbindingen, wat kritiek is voor moderne endpointbeveiliging.

Voor de BIO Baseline Informatiebeveiliging Overheid is Network Protection relevant voor Thema 12.01 (Endpoint protection - Netwerkfiltering en web protection), wat vereist dat organisaties endpoints beschermen tegen kwaadaardige netwerkverbindingen door web filtering en URL blocking te implementeren. BIO vereist dat organisaties proactief bedreigingen voorkomen door netwerkverbindingen te blokkeren voordat malware kan worden gedownload of gegevens kunnen worden gelekt, waarbij Network Protection essentieel is om aan deze vereisten te voldoen, vooral gezien het belang van het voorkomen van data exfiltration voor Nederlandse overheidsorganisaties.

ISO 27001:2022 vereist in A.8.19 (Network security - Web filtering en content filtering) dat organisaties endpoints beschermen tegen kwaadaardige netwerkverbindingen door web filtering en URL blocking te implementeren. Network Protection voldoet aan deze vereisten door automatisch malafide URLs en IP-adressen te blokkeren op applicatieniveau, wat verder gaat dan traditionele netwerkfirewalls die alleen op netwerkniveau werken. De uitgebreide logging van alle Network Protection gebeurtenissen ondersteunt ook A.12.4.1 (Logging - Security event logging) door alle blokkeringen en gedetecteerde bedreigingen te documenteren voor audit doeleinden.

Voor NIS2 is Network Protection essentieel voor Artikel 10 (Beveiligingsmaatregelen - Endpoint security en netwerkfiltering) en Artikel 21 (Cybersecurity risicobeheer - Preventieve beveiligingsmaatregelen). NIS2 vereist dat essentiële en belangrijke entiteiten endpoints beschermen tegen kwaadaardige netwerkverbindingen door web filtering en URL blocking te implementeren, waarbij Network Protection kritiek is om aan deze vereisten te voldoen. De automatische blokkering van malafide URLs en IP-adressen die Network Protection biedt, helpt organisaties om proactief bedreigingen te voorkomen voordat zij endpoints kunnen compromitteren, wat essentieel is voor NIS2 compliance.

Tot slot ondersteunt Network Protection ook AVG compliance door het voorkomen van data exfiltration via netwerkverbindingen, wat kan leiden tot datalekken. Artikel 32 (Beveiliging van de verwerking) vereist dat organisaties passende technische maatregelen implementeren om persoonsgegevens te beschermen, waarbij het voorkomen van data exfiltration essentieel is. Network Protection helpt bij het voorkomen van data exfiltration door het blokkeren van verbindingen naar externe servers die worden gebruikt voor data exfiltration, waardoor organisaties beter kunnen voldoen aan AVG vereisten voor gegevensbescherming. Daarnaast ondersteunt de uitgebreide logging van alle Network Protection gebeurtenissen ook Artikel 30 (Register van verwerkingsactiviteiten) door alle security events en blokkeringen te documenteren die relevant zijn voor gegevensbescherming.

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 Microsoft Defender voor Endpoint: Network Protection Ingeschakeld .DESCRIPTION Schakelt Network Protection in op Windows endpoints via Microsoft Defender Antivirus configuratie. Network Protection blokkeert toegang tot kwaadaardige URLs en IP-adressen om endpoints te beschermen tegen malware downloads, phishing-aanvallen, command-and-control communicatie en data exfiltration. Ondersteunt configuratie via Group Policy, Intune, of direct via PowerShell. .NOTES Filename: network-protection-enabled.ps1 Author: Nederlandse Baseline voor Veilige Cloud Created: 2025-01-27 Last Modified: 2025-01-27 Version: 1.0 Related JSON: content/m365/defender-endpoint/network-protection-enabled.json .LINK https://github.com/[org]/m365-tenant-best-practise .EXAMPLE .\network-protection-enabled.ps1 -Monitoring Controleert of Network Protection is ingeschakeld op endpoints .EXAMPLE .\network-protection-enabled.ps1 -Remediation Schakelt Network Protection in op endpoints waar deze functie nog niet is geactiveerd #> #Requires -Version 5.1 #Requires -RunAsAdministrator [CmdletBinding()] param( [Parameter()] [switch]$WhatIf, [Parameter()] [switch]$Monitoring, [Parameter()] [switch]$Remediation, [Parameter()] [switch]$Revert ) $ErrorActionPreference = 'Stop' $VerbosePreference = 'Continue' # Configuratie $NetworkProtectionBlockMode = 1 $NetworkProtectionAuditMode = 2 $NetworkProtectionDisabled = 0 $ExpectedValue = $NetworkProtectionBlockMode function Connect-RequiredServices { <# .SYNOPSIS Controleert of de vereiste services beschikbaar zijn .OUTPUTS Boolean - True als services beschikbaar zijn #> [CmdletBinding()] param() Write-Verbose "Controleren van administrator rechten..." $currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent()) $isAdmin = $currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) if (-not $isAdmin) { Write-Error "Dit script vereist administrator rechten. Voer het script uit als administrator." return $false } Write-Verbose "Controleren van Microsoft Defender Antivirus beschikbaarheid..." try { $defenderStatus = Get-MpComputerStatus -ErrorAction Stop if (-not $defenderStatus) { Write-Error "Microsoft Defender Antivirus is niet beschikbaar op dit systeem." return $false } Write-Verbose "Microsoft Defender Antivirus: Beschikbaar" Write-Verbose " Antivirus Engine: $($defenderStatus.AntivirusEnabled)" Write-Verbose " Real-time Protection: $($defenderStatus.RealTimeProtectionEnabled)" return $true } catch { Write-Error "Kon Microsoft Defender Antivirus status niet controleren: $_" return $false } } function Test-NetworkProtectionConfiguration { <# .SYNOPSIS Test of Network Protection correct is geconfigureerd .OUTPUTS PSCustomObject met compliance resultaten #> [CmdletBinding()] param() Write-Verbose "Controleren van Network Protection configuratie..." $results = [PSCustomObject]@{ ScriptName = "network-protection-enabled.ps1" PolicyName = "Network Protection" IsCompliant = $false CurrentValue = $null ExpectedValue = $ExpectedValue Mode = $null Details = @() } try { $preferences = Get-MpPreference -ErrorAction Stop $currentValue = $preferences.EnableNetworkProtection $results.CurrentValue = $currentValue # Bepaal de mode switch ($currentValue) { 0 { $results.Mode = "Disabled" } 1 { $results.Mode = "Block" } 2 { $results.Mode = "Audit" } default { $results.Mode = "Unknown" } } if ($currentValue -eq $ExpectedValue) { $results.IsCompliant = $true $results.Details += "Network Protection: $($results.Mode) mode (Compliant)" } elseif ($currentValue -eq $NetworkProtectionAuditMode) { $results.IsCompliant = $false $results.Details += "Network Protection: $($results.Mode) mode (Niet-compliant - moet Block mode zijn voor productie)" $results.Details += " Actie vereist: Wijzig naar Block mode voor maximale bescherming" } elseif ($currentValue -eq $NetworkProtectionDisabled) { $results.IsCompliant = $false $results.Details += "Network Protection: $($results.Mode) mode (Niet-compliant - moet ingeschakeld zijn)" $results.Details += " Actie vereist: Schakel Network Protection in" } else { $results.IsCompliant = $false $results.Details += "Network Protection: Onbekende waarde ($currentValue)" $results.Details += " Mogelijke waarden: 0=Disabled, 1=Block, 2=Audit" } # Controleer aanvullende configuratie $results.Details += " Cloud-delivered protection: $($preferences.MAPSReporting)" $results.Details += " Real-time protection: Enabled (vereist voor Network Protection)" # Check Defender status try { $computerStatus = Get-MpComputerStatus -ErrorAction SilentlyContinue if ($computerStatus) { if (-not $computerStatus.AntivirusEnabled) { $results.Details += " Waarschuwing: Microsoft Defender Antivirus is niet ingeschakeld" } if (-not $computerStatus.RealTimeProtectionEnabled) { $results.Details += " Waarschuwing: Real-time protection is niet ingeschakeld (vereist voor Network Protection)" } } } catch { Write-Verbose "Kon computer status niet ophalen: $_" } } catch { $results.Details += "Error: $($_.Exception.Message)" Write-Error "Fout tijdens Network Protection configuratie check: $_" } return $results } function Invoke-Monitoring { <# .SYNOPSIS Monitort de status van Network Protection configuratie #> [CmdletBinding()] param() Write-Host "" Write-Host "Monitoring: Network Protection Configuratie" -ForegroundColor Yellow Write-Host "===========================================" -ForegroundColor Yellow $result = Test-NetworkProtectionConfiguration Write-Host "" Write-Host " $($result.PolicyName):" -ForegroundColor Cyan if ($result.IsCompliant) { Write-Host " Status: ✅ COMPLIANT" -ForegroundColor Green Write-Host " Mode: $($result.Mode) mode" -ForegroundColor Green Write-Host " Configuratie: Correct geconfigureerd" -ForegroundColor Green } else { Write-Host " Status: ❌ NON-COMPLIANT" -ForegroundColor Red Write-Host " Huidige mode: $($result.Mode) (Waarde: $($result.CurrentValue))" -ForegroundColor Red Write-Host " Verwachte mode: Block (Waarde: $($result.ExpectedValue))" -ForegroundColor Yellow } Write-Host "" Write-Host " Details:" -ForegroundColor Cyan foreach ($detail in $result.Details) { if ($detail -match "Error|Waarschuwing") { Write-Host " $detail" -ForegroundColor Red } elseif ($detail -match "Compliant") { Write-Host " $detail" -ForegroundColor Green } elseif ($detail -match "Niet-compliant|Actie vereist") { Write-Host " $detail" -ForegroundColor Yellow } else { Write-Host " $detail" -ForegroundColor White } } Write-Host "" Write-Host " Aanbevelingen:" -ForegroundColor Cyan Write-Host " - Network Protection moet zijn ingeschakeld in Block mode (waarde: 1) voor maximale bescherming" -ForegroundColor White Write-Host " - Audit mode (waarde: 2) kan worden gebruikt voor testdoeleinden" -ForegroundColor White Write-Host " - Verifieer configuratie via: Get-MpPreference | Select-Object EnableNetworkProtection" -ForegroundColor White Write-Host " - Voor gecentraliseerd beheer gebruik Group Policy of Intune" -ForegroundColor White Write-Host " - Check logs in Microsoft 365 Defender portal voor blokkeringen" -ForegroundColor White if ($result.IsCompliant) { Write-Host "" Write-Host "✅ Network Protection is correct geconfigureerd" -ForegroundColor Green exit 0 } else { Write-Host "" Write-Host "❌ Network Protection configuratie vereist aandacht" -ForegroundColor Red Write-Host " Gebruik -Remediation om Network Protection in te schakelen" -ForegroundColor Yellow exit 1 } } function Invoke-Remediation { <# .SYNOPSIS Schakelt Network Protection in op endpoints #> [CmdletBinding()] param() Write-Host "" Write-Host "Remediatie: Network Protection Inschakelen" -ForegroundColor Yellow Write-Host "==========================================" -ForegroundColor Yellow $result = Test-NetworkProtectionConfiguration if ($result.IsCompliant) { Write-Host "" Write-Host " Network Protection is reeds correct geconfigureerd (Block mode)" -ForegroundColor Green Write-Host " Geen actie vereist" -ForegroundColor Green exit 0 } Write-Host "" Write-Host " Huidige configuratie:" -ForegroundColor Cyan Write-Host " Mode: $($result.Mode)" -ForegroundColor White Write-Host " Waarde: $($result.CurrentValue)" -ForegroundColor White Write-Host "" Write-Host " Nieuwe configuratie:" -ForegroundColor Cyan Write-Host " Mode: Block" -ForegroundColor White Write-Host " Waarde: $ExpectedValue" -ForegroundColor White if ($WhatIf) { Write-Host "" Write-Host " [WhatIf] Zou Network Protection inschakelen in Block mode" -ForegroundColor Yellow Write-Host " [WhatIf] Gebruik Set-MpPreference -EnableNetworkProtection $ExpectedValue" -ForegroundColor Yellow exit 0 } try { Write-Host "" Write-Host " Network Protection inschakelen..." -ForegroundColor Cyan Set-MpPreference -EnableNetworkProtection $ExpectedValue -ErrorAction Stop Write-Host " ✅ Network Protection is ingeschakeld in Block mode" -ForegroundColor Green # Verifieer configuratie Start-Sleep -Seconds 2 $verifyResult = Test-NetworkProtectionConfiguration if ($verifyResult.IsCompliant) { Write-Host "" Write-Host " ✅ Verificatie geslaagd: Network Protection is correct geconfigureerd" -ForegroundColor Green Write-Host "" Write-Host " Volgende stappen:" -ForegroundColor Cyan Write-Host " - Monitor Network Protection blokkeringen in Microsoft 365 Defender portal" -ForegroundColor White Write-Host " - Configureer uitzonderingen voor legitieme applicaties indien nodig" -ForegroundColor White Write-Host " - Review logs regelmatig voor false positives" -ForegroundColor White } else { Write-Host "" Write-Host " ⚠️ Verificatie: Configuratie is mogelijk nog niet volledig toegepast" -ForegroundColor Yellow Write-Host " Wacht enkele minuten en voer -Monitoring uit om te verifiëren" -ForegroundColor Yellow } exit 0 } catch { Write-Error "Fout tijdens Network Protection inschakelen: $_" Write-Host "" Write-Host " Troubleshooting:" -ForegroundColor Yellow Write-Host " - Controleer of Microsoft Defender Antivirus actief is" -ForegroundColor White Write-Host " - Verifieer administrator rechten" -ForegroundColor White Write-Host " - Controleer of Group Policy of Intune configuratie de instelling niet overschrijft" -ForegroundColor White exit 1 } } function Invoke-Revert { <# .SYNOPSIS Schakelt Network Protection uit (alleen voor testdoeleinden) #> [CmdletBinding()] param() Write-Host "" Write-Host "Revert: Network Protection Uitschakelen" -ForegroundColor Yellow Write-Host "=======================================" -ForegroundColor Yellow Write-Host "" Write-Host " ⚠️ WAARSCHUWING: Network Protection uitschakelen vermindert endpointbeveiliging" -ForegroundColor Red Write-Host " Deze actie wordt alleen aanbevolen voor testdoeleinden" -ForegroundColor Yellow if ($WhatIf) { Write-Host "" Write-Host " [WhatIf] Zou Network Protection uitschakelen" -ForegroundColor Yellow Write-Host " [WhatIf] Gebruik Set-MpPreference -EnableNetworkProtection 0" -ForegroundColor Yellow exit 0 } $confirm = Read-Host " Weet u zeker dat u Network Protection wilt uitschakelen? (Ja/Nee)" if ($confirm -ne "Ja") { Write-Host " Actie geannuleerd" -ForegroundColor Yellow exit 0 } try { Write-Host "" Write-Host " Network Protection uitschakelen..." -ForegroundColor Cyan Set-MpPreference -EnableNetworkProtection $NetworkProtectionDisabled -ErrorAction Stop Write-Host " ✅ Network Protection is uitgeschakeld" -ForegroundColor Yellow Write-Host "" Write-Host " ⚠️ Belangrijk: Schakel Network Protection weer in voor productieomgevingen" -ForegroundColor Red exit 0 } catch { Write-Error "Fout tijdens Network Protection uitschakelen: $_" exit 1 } } # ============================================================================ # MAIN EXECUTION # ============================================================================ try { Write-Host "" Write-Host "========================================" -ForegroundColor Cyan Write-Host "Network Protection Configuratie" -ForegroundColor Cyan Write-Host "Nederlandse Baseline voor Veilige Cloud" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan # Connect to required services if (-not (Connect-RequiredServices)) { Write-Error "Vereiste services niet beschikbaar. Script wordt afgebroken." exit 1 } # Execute based on parameters if ($Monitoring) { Invoke-Monitoring } elseif ($Remediation) { Invoke-Remediation } elseif ($Revert) { Invoke-Revert } else { # Default: Compliance check $result = Test-NetworkProtectionConfiguration Write-Host "" Write-Host " Network Protection Status:" -ForegroundColor Cyan if ($result.IsCompliant) { Write-Host "" Write-Host " ✅ COMPLIANT" -ForegroundColor Green Write-Host " Mode: $($result.Mode)" -ForegroundColor Green } else { Write-Host "" Write-Host " ❌ NON-COMPLIANT" -ForegroundColor Red Write-Host " Huidige mode: $($result.Mode)" -ForegroundColor Red Write-Host " Verwachte mode: Block" -ForegroundColor Yellow } Write-Host "" Write-Host " Run met -Monitoring voor gedetailleerde rapportage" -ForegroundColor Yellow Write-Host " Run met -Remediation om Network Protection in te schakelen" -ForegroundColor Yellow if ($result.IsCompliant) { exit 0 } else { exit 1 } } } catch { Write-Error "Error: $_" throw } finally { Write-Host "" Write-Host "========================================`n" -ForegroundColor Cyan }

Risico zonder implementatie

Risico zonder implementatie
High: Kritiek - Zonder Network Protection loopt een organisatie het risico op malware-infecties via kwaadaardige URLs, phishing-aanvallen, command-and-control communicatie, data exfiltration en niet-naleving van compliance-vereisten. Voor Nederlandse overheidsorganisaties kan dit leiden tot datalekken, niet-naleving van BIO-vereisten, NIS2-sancties, AVG-boetes van toezichthouders en verlies van vertrouwen bij burgers.

Management Samenvatting

Schakel Network Protection in voor alle endpoints in Microsoft Defender voor Endpoint om endpoints te beschermen tegen kwaadaardige URLs en IP-adressen door netwerkverbindingen te blokkeren. Configureer Network Protection in Block mode voor maximale bescherming via Group Policy of Intune. Dit waarborgt dat endpoints worden beschermd tegen netwerkgebaseerde bedreigingen en dat organisaties voldoen aan BIO-, NIS2- en AVG-vereisten voor netwerkfiltering en endpointbeveiliging.