Defender Scheduled Scan

πŸ’Ό Management Samenvatting

Deze security regelen waarborgt de correcte configuratie van beveiligingsinstellingen op Windows endpoints.

Aanbeveling
IMPLEMENT
Risico zonder
High
Risk Score
7/10
Implementatie
2u (tech: 1u)
Van toepassing op:
βœ“ Windows

Deze instelling is onderdeel van de Windows security baseline en beschermt tegen bekende aanvalsvectoren door het afdwingen van veilige configuraties.

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

Implementatie

Dit regelen configureert defender scheduled scan via Microsoft Intune apparaat configuratie beleid of compliance policies om Windows endpoints te beveiligen volgens security best practices.

Vereisten

Microsoft Intune via device configuratiebeleidsregels

Implementatie

Gebruik PowerShell-script defender-scheduled-scan.ps1 (functie Invoke-Monitoring) – Monitoren.

monitoring

Gebruik PowerShell-script defender-scheduled-scan.ps1 (functie Invoke-Monitoring) – Controleren.

Remediatie

Gebruik PowerShell-script defender-scheduled-scan.ps1 (functie Invoke-Remediation) – Herstellen.

Compliance en Auditing

Beleid documentatie

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 Intune Windows Defender: Scheduled Scan Configured .DESCRIPTION CIS - Scheduled scan moet geconfigureerd zijn. .NOTES Filename: defender-scheduled-scan.ps1|Author: Nederlandse Baseline voor Veilige Cloud|Setting: ScanScheduleDay|Expected: Configured #> #Requires -Version 5.1 #Requires -RunAsAdministrator [CmdletBinding()]param([switch]$WhatIf, [switch]$Monitoring, [switch]$Remediation, [switch]$Revert) $ErrorActionPreference = 'Stop' function Connect-RequiredServices { $p = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent()); return $p.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) } function Test-Compliance { $r = [PSCustomObject]@{ScriptName = "defender-scheduled.ps1"; PolicyName = "Defender Scheduled Scan"; IsCompliant = $false; CurrentValue = $null; Details = @() }; function Invoke-Revert { Set-MpPreference -ScanScheduleDay 8 } try { $pref = Get-MpPreference; if ($pref.ScanScheduleDay -ne 8) { $r.IsCompliant = $true; $r.CurrentValue = "Day: $($pref.ScanScheduleDay)"; $r.Details += "Scheduled scan configured" }else { $r.Details += "No scheduled scan (8=Never)" } }catch { $r.Details += "Error: $($_.Exception.Message)" }; return $r } function Invoke-Remediation { Set-MpPreference -ScanScheduleDay 0 -ScanScheduleTime 120; Write-Host "Scheduled scan: Every day at 02:00" -ForegroundColor Green } function Invoke-Monitoring { $r = Test-Compliance; Write-Host "`n$($r.PolicyName): $(if($r.IsCompliant){'COMPLIANT'}else{'NON-COMPLIANT'})" -ForegroundColor $(if ($r.IsCompliant) { 'Green' }else { 'Red' }); return $r } function Invoke-Revert { Set-MpPreference -ScanScheduleDay 8 } try { if (-not(Connect-RequiredServices)) { exit 1 }; if ($Monitoring) { $r = Invoke-Monitoring; exit $(if ($r.IsCompliant) { 0 }else { 1 }) }elseif ($Remediation) { if (-not $WhatIf) { Invoke-Remediation } }elseif ($Revert) { Invoke-Revert }else { $r = Test-Compliance; exit $(if ($r.IsCompliant) { 0 }else { 1 }) } }catch { Write-Error $_; exit 1 }

Risico zonder implementatie

Risico zonder implementatie
High: No auth tracking.

Management Samenvatting

Schakel in audit logging.