SOP-78: Security Policy Disabled / Defender Config Tampered (Tamper Protection, ASR, MDE Offboarding) Response | CyberHawk Threat Intel

·

An analytics rule fired because the endpoint security configuration itself was weakened — Tamper Protection went off, an Attack Surface Reduction rule was flipped from Block to Disabled, cloud-delivered protection stopped reporting to MAPS, or the Microsoft Defender for Endpoint (MDE) sensor was offboarded. Unlike a momentary sc stop WinDefend, these changes leave the machine in a durably degraded protective state — a blind spot the attacker can return to at will. Treat any unticketed Tamper Protection disable, ASR downgrade, or sensor offboarding as a SEV1 precursor: the actor is clearing the runway before the payload.

Key data sources: DeviceRegistryEvents (Defender Features / Policies keys, OnboardingState), DeviceProcessEvents (Set-MpPreference, reg.exe, offboarding scripts), AlertInfo / AlertEvidence (MDE tamper alerts), DeviceEvents (sensor health / setting-change telemetry).

Scope note vs SOP-28: SOP-28 covers the momentary service-stop / VSS-delete / ETW-patch ransomware "lights-out" sequence. This SOP-78 covers the persistent configuration control-plane — the settings and policy state that stay weakened after the process exits. Where the two overlap (e.g. a service stop that accompanies a config wipe), run both in parallel.

☰ Table of Contents

01 Background 02 Identification 03 Containment 04 Eradication 05 Escalation
🛠

01 — BACKGROUND

TECHNIQUE OVERVIEW
01
Technique Overview — Impair Defenses (Config Plane)
MITRE T1562

Impairing defenses through the configuration and policy layer (T1562.001) is a hands-on-keyboard tell. Rather than kill the AV process — which restarts and re-arms — a capable actor turns off the guard-rails that would otherwise prevent them from turning the AV off. The canonical opening move is disabling Tamper Protection, because Tamper Protection is what blocks local edits to Defender settings. With it off, the actor can freely add exclusions, disable ASR, cut cloud protection, and ultimately offboard the sensor — each change persisting until an admin or policy re-asserts it.

FieldValue
MITRE TechniqueT1562.001 — Impair Defenses: Disable or Modify Tools
T1562.006 — Impair Defenses: Indicator Blocking
T1112 — Modify Registry (Defender Policies / Features keys)
Kill-chain PhaseDefense Evasion — persistent posture degradation (pre-payload)
Primary Log SourceDeviceRegistryEvents, DeviceProcessEvents, AlertInfo/AlertEvidence (MDE)
Secondary Log SourcesDeviceEvents (sensor/setting telemetry), AuditLogs / IntuneAuditLogs (policy change), SecurityEvent 4657 (registry value modified)
Common Toolingpowershell.exe (Set-MpPreference / Add-MpPreference), reg.exe, MpCmdRun.exe, WdBoot/offboarding script, GPO / Intune policy edit, Defender Control-style utilities
Default SeveritySEV1 precursor — assume an active hands-on intrusion in progress
Detection WindowQuery last 24 hours; extend to 7 days when hunting slow, low-and-slow posture drift

Tamper Protection exists precisely to stop this. If it went OFF outside a documented policy change, do not rationalise it as "an admin tuning Defender" — a stolen admin token disabling Tamper Protection is the single most reliable pre-payload signal you will see. Confirm-then-isolate; do not wait.

02
Attack Paths, Log-Source Map & Severity Model
CONTEXT

Five concrete scenarios generate this alert class. The severity is driven by which control was weakened, whether it was policy-backed or a raw local edit, and whether a change ticket exists.

IDAttack PathSeverity
A1Stolen-admin token disables Tamper Protection, then adds exclusions / disables real-time protection — classic pre-encryption prepSEV1
A2ASR rules flipped Block→Disabled/Audit so a LOLBin or Office-child-process payload runs unblockedSEV1
A3Cloud-delivered protection / MAPS + automatic sample submission switched off to evade cloud verdicts on a novel dropperSEV2
A4MDE sensor offboarded (OnboardingState→0 / Sense stopped) — telemetry blackout on that hostSEV1
A5Sanctioned IT change (Intune/GPO baseline edit, imaging, upgrade) matching an approved ticket & windowFP
SignalWhere It SurfacesTriage Question
Tamper Protection offAlertInfo (MDE alert), DeviceRegistryEvents Features\TamperProtectionPolicy-backed change or local edit?
ASR rule downgradedDeviceProcessEvents (Set-MpPreference ASR), DeviceRegistryEvents ASR\RulesBlock→Disabled without a baseline change?
Cloud/MAPS offDeviceProcessEvents (MAPSReporting/SubmitSamplesConsent 0)Coincident with a new-file execution?
Sensor offboardedDeviceRegistryEvents OnboardingState, DeviceEvents sensor health, device stops reportingDecommission ticket for this exact host?

Severity indicators — CRITICAL/SEV1: Tamper Protection off, sensor offboarded, or ASR Block→Disabled with no change ticket, especially on a server or privileged workstation, or on multiple hosts at once. HIGH/SEV2: cloud protection/MAPS or sample submission off, single ASR rule to Audit, or PUA/network-protection disabled in isolation. LOW/FP: change verifiably maps to an approved Intune/GPO baseline edit executed by the platform service in the change window.

🔍

02 — IDENTIFICATION

5 INDICATORS + TRIAGE
▶ Investigation Workflow
T0
Alert Triage Checklist
FIRST 5 MIN
WHY CHECK

Five yes/no questions decide whether this queues or pages the on-call now. Any single YES on Q1–Q3 makes it an immediate-action SEV1.

#QuestionIf YES
Q1Was Tamper Protection turned off, or was the MDE sensor offboarded, with no matching change ticket?SEV1 → isolate
Q2Was an ASR rule flipped from Block to Disabled/Audit outside a baseline change?SEV1
Q3Did the change occur on a server, DC, or privileged workstation — or on multiple hosts within minutes?SEV1
Q4Was cloud protection/MAPS or sample submission disabled, coinciding with a new/unsigned file executing?SEV2
Q5Is the initiating account a service/platform identity acting inside an approved change window?Likely FP

Pull the change/CAB record BEFORE you query — if you already hold a ticket that names this device, this change, and this time window, the queries below become confirmation, not discovery, and you save 10 minutes.

I1
Tamper Protection Disabled
MANUAL + KQL
WHY CHECK

Tamper Protection is the lock on the Defender settings door. It is normally managed only by Microsoft (MDE cloud) or Intune — a local process turning it off is almost always malicious and is the highest-fidelity signal in this SOP.

📍 Portal Navigation — Microsoft Defender XDR
security.microsoft.com Investigation & response Hunting Advanced hunting
  • 1First check Incidents & alerts → Alerts and filter for titles containing "Tamper" — MDE raises a built-in alert when a tamper attempt is observed.
  • 2Open Advanced hunting and run the AlertInfo/DeviceRegistryEvents KQL below. Set Time range to Last 24 hours.
  • 3For any hit, open the Device timeline from the DeviceName link and read the InitiatingProcess chain — was it PowerShell, reg.exe, or an unknown binary?
  • 4Confirm the current live state in Assets → Devices → [device] → Overview — check whether Tamper Protection now reads Off.
Registry Value / SignalMeaningSeverity
Features\TamperProtection = 4 / 0Tamper Protection disabled (5 = enabled)CRITICAL
AlertInfo Title has "Tamper"MDE-generated tamper-attempt alertCRITICAL
Features\TPExclusionsTamper Protection exclusion added — carve-out for attacker pathCRITICAL
DETECTS: MDE tamper alerts joined with local edits to the Defender Features\TamperProtection registry value
KQL — Microsoft Sentinel / Defender XDR Advanced Hunting
// Tamper Protection: MDE alert + registry value change on the Features key union (AlertInfo | where Timestamp > ago(24h) | where Title has "Tamper" | project Timestamp, DeviceName=tostring(parse_json(Categories)), Title, Severity, Source="AlertInfo"), (DeviceRegistryEvents | where Timestamp > ago(24h) | where RegistryKey has @"SOFTWARE\Microsoft\Windows Defender\Features" | where RegistryValueName in~ ("TamperProtection","TamperProtectionSource","TPExclusions") | where ActionType == "RegistryValueSet" | project Timestamp, DeviceName, RegistryValueName, RegistryValueData, InitiatingProcessFileName, InitiatingProcessCommandLine, AccountName=InitiatingProcessAccountName, Source="Registry") | order by Timestamp desc
DETECTS: Splunk equivalent — registry writes to the Defender Features\TamperProtection value
SPL — Splunk
index=mde sourcetype=DeviceRegistryEvents ActionType=RegistryValueSet RegistryKey="*Windows Defender\\Features*" (RegistryValueName="TamperProtection" OR RegistryValueName="TPExclusions" OR RegistryValueName="TamperProtectionSource") | table _time DeviceName InitiatingProcessAccountName RegistryValueName RegistryValueData InitiatingProcessFileName InitiatingProcessCommandLine | sort -_time

A tamper alert with an unknown or user-writable initiating process (not MsMpEng.exe / MpCmdRun.exe under SYSTEM, not the Intune management extension) is a confirmed local tamper. Isolate the host before you finish reading the timeline.

I2
Defender Feature Disable via Set-MpPreference / Policy
MANUAL + KQL
WHY CHECK

Once Tamper Protection is down, the fastest way to blind Defender is a burst of Set-MpPreference flags or Policies-key writes — cloud protection off, sample submission off, real-time off, script/PUA scanning off. Each persists in configuration and each is individually queryable.

📍 Portal Navigation — Advanced Hunting
security.microsoft.com Hunting Advanced hunting
  • 1Run the DeviceProcessEvents KQL below for PowerShell / MpCmdRun feature-disable command lines.
  • 2Run the paired DeviceRegistryEvents query for the Policies\Microsoft\Windows Defender keys — GUI/registry disablement bypasses PowerShell logging.
  • 3Note the value data: MAPSReporting=0, SubmitSamplesConsent=0/2, DisableRealtimeMonitoring=1, DisableScriptScanning=1 all indicate a weakened engine.
  • 4Correlate the timestamp with I1 — an exclusion/feature disable that immediately follows a Tamper Protection off is a single confirmed chain.
Setting / CommandMeaningSeverity
-MAPSReporting 0Cloud-delivered protection (MAPS) reporting disabledHIGH
-SubmitSamplesConsent 0 / 2Automatic sample submission never send — evades cloud verdictsHIGH
-DisableRealtimeMonitoring $trueReal-time protection offCRITICAL
-DisableScriptScanning $trueScript (AMSI) scanning offHIGH
-PUAProtection 0Potentially-unwanted-application protection offMEDIUM
Policies\...\Windows Defender\DisableAntiSpyware=1Policy-level engine disable via registryCRITICAL
DETECTS: PowerShell / MpCmdRun command lines disabling Defender engine features
KQL — Feature Disable via Process
DeviceProcessEvents | where Timestamp > ago(24h) | where FileName in~ ("powershell.exe","pwsh.exe","MpCmdRun.exe","reg.exe") | where ProcessCommandLine has_any ( "MAPSReporting","SubmitSamplesConsent","DisableRealtimeMonitoring", "DisableScriptScanning","DisableBehaviorMonitoring","DisableIOAVProtection", "PUAProtection","DisableBlockAtFirstSeen","DisableAntiSpyware") | where ProcessCommandLine has_any ("0","2","$true","Disabled","Set-MpPreference","Add-MpPreference") | project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine, InitiatingProcessFileName, InitiatingProcessParentFileName | order by Timestamp desc
DETECTS: Registry writes to the Defender Policies keys that disable engine features without PowerShell
KQL — Policy-Key Disable via Registry
DeviceRegistryEvents | where Timestamp > ago(24h) | where RegistryKey has @"SOFTWARE\Policies\Microsoft\Windows Defender" | where RegistryValueName in~ ("DisableAntiSpyware","DisableRealtimeMonitoring", "DisableBehaviorMonitoring","DisableScriptScanning","DisableIOAVProtection") | where ActionType == "RegistryValueSet" and RegistryValueData == "1" | project Timestamp, DeviceName, RegistryKey, RegistryValueName, RegistryValueData, InitiatingProcessFileName, InitiatingProcessAccountName | order by Timestamp desc
SPL — Feature Disable via Process
index=mde sourcetype=DeviceProcessEvents (FileName="powershell.exe" OR FileName="pwsh.exe" OR FileName="MpCmdRun.exe" OR FileName="reg.exe") (ProcessCommandLine="*MAPSReporting*" OR ProcessCommandLine="*SubmitSamplesConsent*" OR ProcessCommandLine="*DisableRealtimeMonitoring*" OR ProcessCommandLine="*DisableScriptScanning*" OR ProcessCommandLine="*DisableAntiSpyware*" OR ProcessCommandLine="*PUAProtection*") | table _time DeviceName AccountName FileName ProcessCommandLine InitiatingProcessFileName | sort -_time
I3
ASR / Exploit Guard Rule Downgrade
MANUAL + KQL
WHY CHECK

Attack Surface Reduction (ASR) rules are what block the exact behaviours attackers need — Office spawning child processes, credential theft from LSASS, executable content from email. Flipping a rule from Block (1) to Disabled (0) or Audit (2) removes the block while looking like routine tuning. This is A2 and it means a specific payload is about to run unopposed.

📍 Portal Navigation — Advanced Hunting + Config Mgmt
security.microsoft.com Hunting Advanced hunting
  • 1Run the KQL below for AttackSurfaceReductionRules_Actions set to Disabled/Audit via PowerShell, plus the ASR\Rules registry path.
  • 2Map any rule GUID in the command line back to its rule name (e.g. block Office child-process, block credential stealing from LSASS) to understand what the attacker just un-blocked.
  • 3Check whether the change matches the Intune ASR policy baseline in Endpoint security → Attack surface reduction — a divergence from policy indicates local tampering, not a managed rollout.
  • 4Immediately hunt the following minutes on the same host for the behaviour the rule would have blocked (Office→cmd/PowerShell, LSASS access).
Action ValueMeaningSeverity
Actions = 0 (Disabled)ASR rule turned off — behaviour no longer blocked or loggedCRITICAL
Actions = 2 (Audit)Downgraded to log-only — attack proceeds, only recordedHIGH
ASR\Rules value deletedRule removed entirely from local configCRITICAL
DETECTS: ASR rules downgraded from Block to Disabled/Audit via PowerShell or registry
KQL — ASR Rule Downgrade
union (DeviceProcessEvents | where Timestamp > ago(24h) | where ProcessCommandLine has "AttackSurfaceReductionRules_Actions" and ProcessCommandLine has_any ("Disabled","AuditMode"," 0"," 2") | project Timestamp, DeviceName, AccountName, ProcessCommandLine, InitiatingProcessFileName, Source="Process"), (DeviceRegistryEvents | where Timestamp > ago(24h) | where RegistryKey has @"Windows Defender Exploit Guard\ASR\Rules" | where ActionType in ("RegistryValueSet","RegistryValueDeleted") | project Timestamp, DeviceName, RegistryValueName, RegistryValueData, InitiatingProcessFileName, AccountName=InitiatingProcessAccountName, Source="Registry") | order by Timestamp desc
DETECTS: Splunk equivalent — ASR action downgrades in process command lines and registry
SPL — ASR Rule Downgrade
index=mde (sourcetype=DeviceProcessEvents ProcessCommandLine="*AttackSurfaceReductionRules_Actions*" (ProcessCommandLine="*Disabled*" OR ProcessCommandLine="*AuditMode*")) OR (sourcetype=DeviceRegistryEvents RegistryKey="*Exploit Guard\\ASR\\Rules*" (ActionType=RegistryValueSet OR ActionType=RegistryValueDeleted)) | table _time DeviceName AccountName ProcessCommandLine RegistryValueName RegistryValueData InitiatingProcessFileName | sort -_time

Keep the ASR rule-GUID→name lookup table pinned in your runbook. "Rule 3B576869… set to 0" means nothing under pressure; "block executable content from email client set to OFF" tells you the delivery vector in one line.

I4
MDE Sensor Offboarding & Security-Center Tamper
MANUAL + KQL
WHY CHECK

The most complete blinding is offboarding the sensor entirely: setting OnboardingState=0 under the Advanced Threat Protection policy key and stopping the Sense service. The device stops streaming telemetry to Defender XDR — so the very absence of a device's logs is itself the indicator. Watch also for Windows Security Center provider tampering.

📍 Portal Navigation — Device Health + Hunting
security.microsoft.com Reports Device health Sensor health
  • 1Open Reports → Device health → Sensor health and look for devices flipping to "Inactive" or "Sensor communication error" without a decommission record.
  • 2Run the KQL below for OnboardingState registry writes to 0 and for sc stop sense / service-config changes on the Sense service.
  • 3Because an offboarded host stops reporting, also run a last-seen query across the fleet — a device that was healthy an hour ago and is now silent, with no shutdown event, is a prime suspect.
  • 4Check the Windows Security Center provider keys for registration tampering that would hide the degraded state from the user/Action Center.
SignalMeaningSeverity
Windows Advanced Threat Protection\OnboardingState = 0MDE sensor offboarded via policy keyCRITICAL
sc stop sense / sc config sense start=disabledSense service stopped / set not to startCRITICAL
Device Inactive, no decommission ticketTelemetry blackout — offboarding or host isolation by attackerHIGH
Security Center\Provider modifiedWSC provider registration tampered to mask AV stateHIGH
DETECTS: MDE offboarding via OnboardingState registry write or Sense service stop/disable
KQL — Sensor Offboarding
union (DeviceRegistryEvents | where Timestamp > ago(24h) | where RegistryKey has @"Windows Advanced Threat Protection" | where RegistryValueName == "OnboardingState" and RegistryValueData == "0" | project Timestamp, DeviceName, RegistryValueName, RegistryValueData, InitiatingProcessFileName, AccountName=InitiatingProcessAccountName, Source="Offboard-Reg"), (DeviceProcessEvents | where Timestamp > ago(24h) | where (FileName in~ ("sc.exe","net.exe") and ProcessCommandLine has_any ("stop sense","stop Sense","config sense","config Sense")) or (FileName =~ "powershell.exe" and ProcessCommandLine has_any ("Stop-Service Sense","Set-Service Sense")) | project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine, InitiatingProcessFileName, Source="Offboard-Proc") | order by Timestamp desc
DETECTS: Splunk equivalent — OnboardingState=0 and Sense service tampering
SPL — Sensor Offboarding
index=mde (sourcetype=DeviceRegistryEvents RegistryKey="*Windows Advanced Threat Protection*" RegistryValueName=OnboardingState RegistryValueData=0) OR (sourcetype=DeviceProcessEvents (FileName="sc.exe" OR FileName="net.exe" OR FileName="powershell.exe") (ProcessCommandLine="*stop sense*" OR ProcessCommandLine="*config sense*" OR ProcessCommandLine="*Stop-Service Sense*")) | table _time DeviceName AccountName FileName ProcessCommandLine RegistryValueName RegistryValueData InitiatingProcessFileName | sort -_time

An offboarded host is invisible to Advanced Hunting from the moment the Sense service stops. Do not assume "no further telemetry = no further activity." Pivot to Sentinel SecurityEvent / Sysmon / network logs for that host, and physically or remotely re-onboard as part of containment.

I5
IOC Extraction & FP / TP Decision Gate
VERDICT
WHY CHECK

Before escalating, pull the artifacts a responder needs and make the call. The pivotal question is always the same: does the initiating identity + a change ticket explain this, or does an unexpected process + a risky prior sign-in indict it?

Extract and record: affected DeviceName(s) and OS role; the exact setting(s) changed and their new value; InitiatingProcessFileName + full command line + parent; the AccountName and its logon type; the timestamp of first change; and any file hashes, scheduled tasks, or exclusions created in the same window. Cross-reference the account against SigninLogs for risky/impossible-travel sign-ins (pivot to SOP-04).

DETECTS: Reconstructs the full change chain on one device — every Defender config edit, its initiator and account, in time order
KQL — Config-Change Chain for One Device
let host = "VICTIM-HOST"; // set to the affected DeviceName union (DeviceRegistryEvents | where DeviceName == host and Timestamp > ago(24h) | where RegistryKey has_any (@"Windows Defender", @"Windows Advanced Threat Protection", @"Security Center") | project Timestamp, Kind="Registry", Detail=strcat(RegistryValueName," = ",RegistryValueData), InitiatingProcessFileName, AccountName=InitiatingProcessAccountName), (DeviceProcessEvents | where DeviceName == host and Timestamp > ago(24h) | where ProcessCommandLine has_any ("Set-MpPreference","Add-MpPreference","AttackSurfaceReduction","OnboardingState","stop sense","TamperProtection") | project Timestamp, Kind="Process", Detail=ProcessCommandLine, InitiatingProcessFileName, AccountName) | order by Timestamp asc
SPL — Config-Change Chain for One Device
index=mde DeviceName="VICTIM-HOST" (sourcetype=DeviceRegistryEvents (RegistryKey="*Windows Defender*" OR RegistryKey="*Advanced Threat Protection*" OR RegistryKey="*Security Center*")) OR (sourcetype=DeviceProcessEvents (ProcessCommandLine="*Set-MpPreference*" OR ProcessCommandLine="*AttackSurfaceReduction*" OR ProcessCommandLine="*OnboardingState*" OR ProcessCommandLine="*stop sense*")) | table _time DeviceName AccountName ProcessCommandLine RegistryValueName RegistryValueData InitiatingProcessFileName | sort _time
True Positive SignalsFalse Positive Signals
No change ticket for this device/windowApproved CAB/change ticket names this exact host + change + time
Initiator is PowerShell/reg.exe/unknown binary, not the Intune extension or SYSTEM policy serviceInitiator is the Intune management extension / GPO client / Configuration Manager under SYSTEM
Tamper Protection off, sensor offboarded, or ASR Block→DisabledChange is a documented Intune/GPO baseline rollout visible fleet-wide
Account has a coincident risky/impossible-travel sign-inAccount is the assigned platform/imaging service identity
Multiple hosts weakened within minutes; or new/unsigned file executed right afterIsolated single setting on one host during a scheduled maintenance window

"An admin probably did it" is a hypothesis, not a verdict. Close as FP ONLY when a change record actually names this device, this change, and this window — and the initiating identity matches the platform service. A stolen admin token is the single most common way this alert is wrongly closed.

🚫

03 — CONTAINMENT

IMMEDIATE ACTION
C1
Verdict & Containment Decision
DECISION GATE
▶ Based on Identification Findings
Confirmed
Tamper Protection off, sensor offboarded, or ASR Block→Disabled with no change ticket and an unexpected initiator → SEV1: execute C2 immediately, escalate to L2/IR
Uncertain
Single feature disable (MAPS/PUA) or ASR→Audit, initiator ambiguous, no ticket found yet → SEV2: complete I5, verify ticket, isolate if unresolved within 15 min
False Pos.
Change maps to an approved Intune/GPO baseline edit by the platform service in-window → document, close ticket, tune the rule, no action

Do not re-enable settings and walk away. If the config was tampered by an actor, re-arming it without isolating and hunting simply tells the actor you noticed — they will offboard again or pivot. Contain first, restore second.

C2
Isolate Host & Contain the Initiating Identity
MDE + ENTRA
📍 Portal Navigation — MDE Device Isolation
security.microsoft.com Assets Devices [Device] Isolate device
  • 1If the sensor is still onboarded, initiate a Live Response session and collect running processes + a memory image FIRST — isolation cuts the network but Live Response over the MDE channel still works.
  • 2Select Actions (⋮) → Isolate device → Full isolation. If the sensor was already offboarded (I4), isolate at the network/NAC layer or physically pull the host instead.
  • 3Contain the initiating account: Entra admin center → Users → [user] → Revoke sessions, then Block sign-in. Revoke BEFORE reset so an issued token cannot be reused.
  • 4Run I1–I4 across the subnet / device group to confirm whether the same change hit multiple hosts (automated push = ransomware operator).

If a stolen-admin session drove the change, the account — not just the host — is the incident. Isolating one endpoint while the token roams free lets the attacker weaken the next machine. Contain identity and endpoint together.

C3
Re-Arm Configuration & Block the Vector
RESTORATION
  • 1Re-enable Tamper Protection tenant-wide/for the device group: Settings → Endpoints → Advanced features → Tamper Protection → On, and enforce via Intune so it cannot be locally overridden.
  • 2Restore engine settings via Live Response: Set-MpPreference -DisableRealtimeMonitoring $false -MAPSReporting Advanced -SubmitSamplesConsent 1 and re-enable script/PUA scanning.
  • 3Re-apply ASR rules to Block from the Intune baseline: Endpoint security → Attack surface reduction → [policy] → assign, and confirm the rules report Block on the host.
  • 4Re-onboard the MDE sensor if it was offboarded (deploy the current onboarding package via Intune/GPO), then confirm the device returns to Active in Sensor health.
  • 5Block the initiating process hash / path and any created exclusion-path artifacts via Settings → Endpoints → Indicators.

If cloud protection or sample submission was disabled, treat any file that executed during the blind window as unverified — re-scan and re-submit those samples once cloud protection is back on. A dropper that dodged the cloud verdict is still on disk.

🗑

04 — ERADICATION

CLEANUP
E1
Remove Persistence, Verify Clean State & Close the Vector
ERADICATION
  • 1From the I5 change chain, trace the initiating process back to initial access — phishing, exposed RDP, or lateral movement from another host. That entry point, not the config change, is the root cause.
  • 2Hunt for persistence created by the same account/process in the same window: scheduled tasks, registry Run keys, services, WMI subscriptions, and any Defender exclusions left behind (cross-reference SOP-26 and SOP-30).
  • 3Delete injected AV/Tamper-Protection exclusions and remove any policy-key overrides the attacker wrote under Policies\Microsoft\Windows Defender.
  • 4Run a full Defender scan after protection is fully restored: Start-MpScan -ScanType FullScan, and quarantine anything found in previously-excluded paths.
  • 5Verify clean state: re-run I1–I4 on the host — expected result is 0 hits and all settings reporting enabled/Block/onboarded.
  • 6Close the vector: reset any compromised admin credentials, enforce Tamper Protection + ASR via policy so local override is impossible, and reconstruct the timeline (first config change → what ran in the blind window → containment).
Eradication Complete When
  • Tamper Protection is On and policy-enforced; local override blocked
  • All ASR rules report Block; cloud protection, MAPS, sample submission and real-time monitoring re-enabled
  • MDE sensor re-onboarded and reporting Active in Sensor health
  • Attacker-created exclusions, policy overrides and persistence removed
  • I1–I4 re-run returns 0 hits; full scan clean
  • Root-cause entry point closed and compromised credentials reset
  • Timeline reconstructed and documented for the incident record
📢

05 — ESCALATION

ESCALATION PATHS
ES1
Escalation Matrix & Notification
ESCALATION
TierTrigger ConditionWho to NotifyAction
L1 → L2Cannot confirm TP vs FP within 30 min; privileged account involved; or >1 endpoint affectedL2 SOC AnalystHand over I5 chain + IOCs; L2 makes the isolate call
L2 → IRConfirmed Tamper Protection off / sensor offboarded / ASR downgrade with malicious initiatorIR Team + SOC LeadOpen incident, isolate, hunt lateral movement, assume active intrusion
IR → CISOMultiple hosts weakened, a DC/server involved, or a payload executed in the blind windowCISO + Security ManagerWar room, treat as pre-ransomware, invoke BCP if VSS/backup at risk
ExternalConfirmed ransomware staging, customer-data-bearing system, or regulated environmentMSSP / DFIR retainer, Legal, Cyber-insurerEngage forensics; start regulatory clock (e.g. GDPR 72h) if data at risk
FPChange verifiably maps to approved Intune/GPO baseline by platform serviceL3 log onlyDocument justification, tune detection rule

Bring to every escalation: incident/alert ID; affected device(s) and OS role; the exact setting(s) changed and new values; initiating process + account + logon type; timeline of the config-change chain (I5); containment actions already taken; and current confidence (TP confirmed / suspected / unverified).

Tamper Protection off + sensor offboarded on the same host is a telemetry blackout by an actor who intends to act unseen — page IR and CISO in parallel and assume the payload phase is imminent. Do not wait for a second, "louder" alert; you have already been shown the loudest one.


Stay Threat-Ready

Follow CyberHawk Threat Intel for daily SOC analyst playbooks, detection engineering guides, and threat intelligence.

📺 YouTube 🎤 TikTok 🐦 X / Twitter 📡 Telegram
All SOPs Blog Web App (Free)
They can't exploit you if you are the Exploit.