HomeNewsletterCommunityMVP FeedToolsArchiveBlogToday's NewsAboutServicesQuick Links Subscribe free
← Back to Blog
Security Microsoft DefenderWindows SecurityPowerShellIntuneDefender for Endpoint

Windows Security Says Defender Antivirus Is Off. Microsoft Says It Is Not.

IA
Imran Awan
7 September 2026

Since late August 2026, Windows devices running Microsoft Defender Antivirus have been popping up a "Turn on virus protection" or "Microsoft Defender Antivirus is turned off" warning — even on machines where Defender never stopped running. Microsoft confirmed it on August 28, 2026 as a genuine bug, not a false report from a compromised or misconfigured device. As of today, it is still listed as Confirmed with no fix shipped.

This is a different bug from the "memory integrity shows as off" issue covered elsewhere on this site — that one is about the Windows Settings toggle for Virtualization-Based Security's Memory Integrity (Core Isolation) feature. This post is specifically about Microsoft Defender Antivirus — the real-time malware scanning engine — falsely reporting itself as disabled through Windows Security notifications. Different feature, different bug, same underlying lesson: don't trust a status message without checking the source of truth behind it.

Watch this post — YouTube walkthrough

Watch on YouTube · Subscribe at @EndpointWeekly

The short version

Microsoft confirmed on August 28, 2026 that recent Microsoft Defender Antivirus updates can trigger a false "Microsoft Defender Antivirus is turned off" notification, even though real-time protection, cloud-delivered protection, and Defender's own service are all still running normally. The notification bypasses Windows notification settings and Do Not Disturb, and Microsoft has not yet shipped a fix — the release-health status is still Confirmed, unresolved, as of this post. Do not act on the notification alone: verify the real state with Get-MpComputerStatus, the Windows Security app's own detail view, and — at fleet scale — the Intune or Microsoft Defender for Endpoint portal, before you escalate a "device is unprotected" incident or trigger a compliance remediation. This post gives you the exact commands, a read-only PowerShell audit script, and the Event Viewer entries that tell real from false.

The problem: a "turned off" warning that Microsoft says is wrong

Here is exactly what users are seeing. A notification appears — sometimes at sign-in, sometimes randomly while the device is in use — that reads along the lines of "Turn on virus protection" or "Microsoft Defender Antivirus is turned off." Clicking it opens the Windows Security home tab, where everything usually looks fine: no red banner, no "Off" state on the Virus & threat protection tile. The notification simply reappears later, on its own schedule.

Microsoft's own Windows release health page confirms this is real and lists it as an open issue. Quoted verbatim from the Windows 11, version 25H2 known issues page (the identical entry also appears on the 24H2 page):

Quoted directly from Microsoft Learn — "Incorrect notifications that 'Microsoft Defender Antivirus is turned off'": "After installing the latest updates for Microsoft Defender Antivirus, notifications might appear stating that 'Microsoft Defender Antivirus is turned off,' even though the antivirus is functioning correctly and all settings show it as active. These notifications can appear when Windows starts and intermittently afterward. They persist even if notification settings are turned off." Status: Confirmed. Opened 2026-08-28, 15:34 PT. Last updated 2026-08-28, 16:02 PT. Originating update: N/A — Microsoft has not named a specific KB or Defender platform/engine build as the trigger.

The affected-platforms list on that page is unusually wide. It is not scoped to one Windows version — it spans every Windows release still receiving Defender updates:

Client: Windows 11 version 26H1, 25H2, 24H2, 23H2; Windows 10 version 22H2, 21H2; Windows 10 Enterprise LTSC 2019 and 2016
Server: Windows Server 2025, 2022, 2019, 2016, 2012 R2, 2012

In plain terms: if a device has Microsoft Defender Antivirus installed and pulls the latest Defender updates, it can hit this bug, regardless of which Windows version it runs. That is a signal in itself — a bug tied to the Defender Antivirus update channel (signatures/platform), not to any one Windows build's code.

Gotcha. Don't confuse this with the separate, well-known "memory integrity shows as off" issue on this site. That one is about a Settings toggle for a Virtualization-Based Security feature (Core Isolation). This bug is about Microsoft Defender Antivirus — the actual malware-scanning engine — and it manifests as a notification, not primarily a persistent toggle state in Settings. If your helpdesk ticket says "Defender is off," ask which symptom the user actually saw before assuming this is the same bug.

Why it happens: notification versus actual protection state

To understand this bug, you need to know that "Defender is off" can be reported from more than one place, and those places do not always agree with each other or with reality.

Windows Security (the app with the shield icon in your taskbar) is a front end. It does not run the antivirus engine itself — it reads status from underlying components and displays a summary. The two components that matter here are:

Microsoft has not published the specific internal defect — no root-cause writeup, no engine build number, no code path. What it has confirmed is the observable behavior: the health-reporting/notification layer is producing an incorrect "off" signal while the actual protection component (the service, real-time protection, cloud-delivered protection, and tamper protection) all continue reporting themselves as enabled. That is a reporting defect, not a protection defect — but be honest with yourself about the limits of that statement: it is Microsoft's characterization, not something this post independently verified inside the Defender binary.

Watch out — the notification bypasses your notification settings. Microsoft's own wording says this explicitly: the alert "persist[s] even if notification settings are turned off." Group Policy's Suppress all notifications setting (under Computer configuration > Administrative templates > Windows components > Microsoft Defender Antivirus > Client interface) is designed to stop exactly this kind of pop-up — but this specific bug is documented to persist regardless. Do not assume a GPO you already deployed will suppress it; treat every occurrence as something you may still need to explain to end users until Microsoft ships a fix.

The August 2026 wave of press coverage (Windows Latest, Forbes, cybersecuritynews.com, and others) lines up with Microsoft's own account: devices showing the false alert had real-time protection, cloud-delivered protection, and tamper protection all still reading On when checked directly. That consistency across independent reports — plus Microsoft's own "Confirmed" status — is why this post treats the underlying antivirus engine as unaffected, while treating the notification itself as broken.

Understanding what Windows Security is actually built on

If you want the full underlying model: Microsoft Defender Antivirus exposes its state through a WMI class, MSFT_MpComputerStatus, in the Root\Microsoft\Windows\Defender namespace. Get-MpComputerStatus is simply a PowerShell wrapper around that WMI class. It is a direct read from the antivirus engine's own service — not from the notification layer, and not from Windows Security's rendering logic. That distinction is exactly why it is the right tool to cut through this bug: it asks the engine, not the messenger.

How to verify: the commands and portals that tell the truth

Whenever you see this notification — or a helpdesk ticket that quotes it — verify before you act. Here is the full chain, from a single device up to fleet scale.

Step 1 — Ask the engine directly with PowerShell

Open PowerShell as Administrator and run this. It queries MSFT_MpComputerStatus directly, the same source Windows Security itself is supposed to be summarizing.

PowerShell (Administrator)
Get-MpComputerStatus | Select-Object AMServiceEnabled, AntivirusEnabled, RealTimeProtectionEnabled, OnAccessProtectionEnabled, NISEnabled, AMRunningMode, AntivirusSignatureVersion, AntivirusSignatureLastUpdated

Here is what a genuinely healthy device reports (real capture pattern, values illustrative — signature dates and versions will differ on your device):

Output — healthy device
AMServiceEnabled : True # The Defender engine service itself is enabled AntivirusEnabled : True # Antivirus protection is on RealTimeProtectionEnabled : True # This is the specific "real-time protection" state the notification claims is off OnAccessProtectionEnabled : True # File/program activity monitoring is active NISEnabled : False # Network Inspection System - off is normal on many consumer/business builds AMRunningMode : Normal # Normal = full protection. Watch for "Passive Mode" or "EDR Block Mode" here (see below) AntivirusSignatureVersion : 1.427.1102.0 AntivirusSignatureLastUpdated: 11/2/2026 6:14:22 AM

Every one of those property names is documented on Microsoft's own MSFT_MpComputerStatus class reference and the Get-MpComputerStatus cmdlet reference. RealTimeProtectionEnabled is the exact property this bug's notification is wrong about — Microsoft's own doc defines it plainly as: "Specifies whether real-time protection is enabled." If this reads True, the notification is false, full stop.

Tip. AMRunningMode is worth watching even outside this bug. A value of Normal means full Defender protection. Passive Mode means Defender is scanning and reporting but not actively remediating — normal when a third-party antivirus is the primary engine, or when the device is Microsoft Defender for Endpoint onboarded with a non-Microsoft AV as primary. EDR Block Mode means Defender AV itself is passive but is still available to block malicious artifacts detected by Defender for Endpoint. Neither of those two non-Normal states is what this bug is about, but they are a common source of a genuinely confusing "is my AV really protecting me" question, so check this property whenever you check the others.

Step 2 — Confirm the underlying service is actually running

Cross-check with the Windows service itself. This does not depend on the Defender health-reporting layer at all — it asks the Service Control Manager directly.

Command Prompt (Administrator)
sc query WinDefend SERVICE_NAME: WinDefend TYPE : 10 WIN32_OWN_PROCESS STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0

STATE: 4 RUNNING is what you want to see. Unlike some Windows background services that are trigger-started and legitimately show as stopped between runs, WinDefend is a continuously running protection service — if it genuinely shows STOPPED here, that is worth investigating on its own, independent of this notification bug.

Step 3 — Check the Windows Security app's own detail view, not just the home tile

The home tab of Windows Security is the least detailed view. Go one level deeper.

Windows Security Virus & threat protection Manage settings
  1. Open Windows Security (search the Start menu for "Security," or click the shield icon in the taskbar).
  2. Select Virus & threat protection.
  3. Under Virus & threat protection settings, select Manage settings.
  4. Confirm the toggles for Real-time protection, Cloud-delivered protection, and Tamper Protection all read On.

If all three read On here and Get-MpComputerStatus also reports them enabled, you are looking at exactly the bug Microsoft confirmed: a false notification with a healthy underlying state. If any of them genuinely read Off, that is a real problem unrelated to this specific bug, and you should treat it as one.

Real capture of the Windows Security Virus and threat protection home page, showing No action needed and current threats clean
Real capture — the Windows Security home tab. This is the shallow view; the toggles that actually settle the question are one click deeper, under Manage settings.
Real capture of Windows Security Manage settings page, showing Real-time protection, Dev Drive protection and Cloud-delivered protection all On, with several marked as managed by the administrator
Real capture — Manage settings on a policy-managed device. Notice the grey, locked-looking toggles next to “This setting is managed by your administrator”: that greyed style means Intune owns the setting, not that it's off. All three still read On.
Real capture continuing down the Manage settings page, showing Automatic sample submission, Tamper Protection, Controlled folder access and Exclusions
Real capture, same page continued — Tamper Protection reads On as well, which is worth checking here since a genuinely tampered device is one of the few cases where you'd want the false-off bug to actually be true.

Step 4 — Check the Windows Defender Operational event log

The event log gives you a timestamped, tamper-evident history — useful when you need to show a real change (or the absence of one) rather than a point-in-time snapshot.

Event Viewer › Applications and Services Logs › Microsoft › Windows › Windows Defender › Operational
Event Viewer — Microsoft-Windows-Windows Defender/Operational
2026-09-06 08:00:11 Event 1150 — Antimalware client is up and running in a healthy state
2026-09-06 09:00:11 Event 1151 — Endpoint Protection client health report: RTP state Enabled, OA state Enabled, BM state Enabled
2026-09-06 10:12:47 Event 2000 — The antimalware definitions updated successfully
absent No Event 5001 (Real-time protection is disabled) anywhere in the log this session
2026-09-06 10:00:11 Event 1150 — Antimalware client is up and running in a healthy state (next hourly report)

The row that matters most is the one that is missing: no Event ID 5001 (MALWAREPROTECTION_RTP_DISABLED — "Real-time protection is disabled"). If real-time protection had genuinely been turned off, this event would be logged at the moment it happened. Its absence, combined with a healthy 1150/1151 pair every hour, is strong evidence the notification is the false one described in Microsoft's advisory — not the protection state.

Defender Antivirus Event ID catalog

This is the full set of Event IDs in the Windows Defender/Operational log that speak directly to protection being enabled, disabled, or blocked from changing — the complete reference for this specific "on vs. off" question, not just the one event tied to this bug:

Event IDLevelMeaning
1150InformationAntimalware client is running in a healthy state — reported roughly hourly while everything is normal
1151InformationFull client health report: real-time protection (RTP), on-access (OA), and behavior monitoring (BM) state, plus signature age — the richest single event for confirming true status over time
3002WarningA real-time protection feature (On Access, IE/Outlook attachment scanning, Behavior Monitoring, or Network Inspection) hit an error and failed — a genuine problem worth investigating, unlike this bug
3007InformationReal-time protection recovered automatically after the 3002 failure above — Microsoft recommends a full scan afterward
5000InformationReal-time protection was enabled
5001InformationReal-time protection was disabled — this is the event you should search for and NOT find if the false notification is what you're dealing with
5004InformationA specific real-time protection feature's configuration changed (On Access, IE/Outlook scanning, Behavior Monitoring, or Network Inspection)
5007InformationThe overall antimalware platform configuration changed — worth reviewing if unexpected, since Microsoft notes it can indicate tampering
5009 / 5010InformationAntispyware scanning enabled (5009) or disabled (5010)
5011 / 5012InformationAntivirus scanning enabled (5011) or disabled (5012)
5013InformationTamper Protection blocked an attempted change to a Defender setting, and names which setting was blocked — if you see this, something (or someone) tried to weaken Defender and was stopped
Gotcha. Event ID 5013 is your fastest tamper-attempt signal, but only if Tamper Protection is actually on. Verify that first with Get-MpComputerStatus's tamper protection state (surfaced in the Windows Security app's Manage settings page; the underlying property is not exposed by every PowerShell module version, so treat the Windows Security app view as authoritative if the cmdlet output on your build doesn't show it) before trusting the absence of 5013 events as proof nothing was tampered with.

Registry keys behind Defender's on/off state

These are the Group Policy-managed registry values that actually flip real-time protection and antispyware scanning off at the policy layer. They are useful to know for two reasons: to confirm nothing in your own environment is setting them, and to understand why Tamper Protection exists — it specifically blocks direct edits to keys like these outside of the Windows Security app or an approved management channel.

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\
Value name (type)Healthy valueIf wrong
DisableAntiSpyware (REG_DWORD)Absent, or 01 = antispyware/antivirus protection disabled by policy
Real-Time Protection\DisableRealtimeMonitoring (REG_DWORD)Absent, or 01 = real-time protection disabled by policy — this is the actual policy-layer equivalent of what this bug's notification falsely claims
Real-Time Protection\DisableBehaviorMonitoring / DisableOnAccessProtection (REG_DWORD)Absent, or 01 = the specific sub-feature (behavior monitoring or on-access scanning) is disabled by policy
Watch out. These keys live under HKLM\SOFTWARE\Policies\Microsoft\Windows Defender — the Group Policy-managed branch, separate from the non-policy runtime keys under HKLM\SOFTWARE\Microsoft\Windows Defender. With Tamper Protection enabled (the default on modern Windows), Microsoft's own documentation confirms direct edits to these values are blocked regardless of who or what makes them, including a local administrator using regedit.exe. If you find one of these set to a disabling value on a Tamper Protection-enabled device, that by itself is unusual and worth investigating as a potential tampering attempt, not a routine config drift.

Registry Editor view — a multi-row look at a real-time protection policy branch

Registry Editor
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender
DisableAntiSpyware REG_DWORD (value not present)
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection
DisableRealtimeMonitoring REG_DWORD (value not present) ← healthy: policy is not disabling RTP
DisableOnAccessProtection REG_DWORD (value not present)
DisableBehaviorMonitoring REG_DWORD (value not present)

An absent value is the healthy state for every one of these — Defender treats "key not present" the same as "explicitly 0" (not disabled). If you see any of them present and set to 1, that is a genuine policy-level disable, and no amount of dismissing the false notification will make it go away — you have found a real configuration issue instead of this bug.

The fix: what to actually do about it, one device or a whole fleet

There is no code fix you can apply yet — Microsoft has not released one. What you can do is stop the notification from causing wasted incident-response time, and make sure you would still catch a real "off" event if one happened.

On a single device: verify, document, and stand down

  1. Run the four verification steps above (Get-MpComputerStatus, sc query WinDefend, the Windows Security detail view, and the Operational event log) and confirm all report healthy.
  2. If everything reports healthy, treat the notification as the confirmed Microsoft bug. Do not reinstall Defender, do not re-run onboarding, and do not open a security incident for this device based on the notification alone — those actions do not address a bug in the reporting layer.
  3. Document the check (screenshot or command output) against the timestamp of the notification, in case the same user reports it again later. This spares your helpdesk from re-diagnosing the identical false alarm every time it recurs.
  4. Keep the device's Defender updates current anyway — Microsoft's stated plan is to ship the fix through a future Microsoft Defender Antivirus update, not a Windows quality update, so continuing normal signature/platform updates is how the fix will eventually arrive.
Tip. Bookmark the exact wording from Microsoft's release-health entry ("Incorrect notifications that 'Microsoft Defender Antivirus is turned off'") so your helpdesk team can search for it directly in their internal knowledge base and in Microsoft's release health pages, rather than re-explaining the bug in an internal ticket every time it recurs.

At fleet scale: don't let this desensitize you to a real "off" device

The real risk of a widely reported false alarm is not the alarm itself — it's the habit it creates. If your team learns to reflexively dismiss "Defender is off" tickets, a genuinely unprotected device can hide in the noise. Two places give you a fleet-wide, independent-of-the-notification view:

Microsoft Intune — Antivirus status report

Endpoint security Antivirus Windows devices
  1. Sign in to the Microsoft Intune admin center.
  2. Go to Endpoint security > Antivirus.
  3. Select the Windows devices tab to see real-time protection status, signature age, and detection counts per managed device, sourced from the device's own reported health — not from a notification.
  4. Filter or sort by Real-time protection state to spot any device that is genuinely reporting disabled, independent of what any toast on that device is showing its user.
Real capture of the Intune Antivirus Unhealthy endpoints report, showing real-time protection and product status columns per device, device names and the total record count redacted
Real capture from a live tenant — the Unhealthy endpoints view under Endpoint security > Antivirus. Device names and the total device count are redacted, but the columns that matter are untouched: Real-time protection and Product status per device, sourced from the device's own reported health, not a notification.
Intune Admin Center — Antivirus, Windows devices (illustrative)
DEVICE-A1 Real-time protection: On
DEVICE-B2 Real-time protection: Off

DEVICE-B2 above is the one that deserves a real incident — its portal-reported state, not just an on-device toast, says protection is off. That distinction is exactly why the portal view matters more than ever while this bug is unresolved.

Microsoft Defender for Endpoint — device health and antivirus health report

If your tenant has Microsoft Defender for Endpoint, its Antivirus health report and the per-device health page pull directly from the same sensor data as Get-MpComputerStatus, aggregated centrally. Go to Reports > Microsoft Defender Antivirus health in the Microsoft Defender portal to see fleet-wide real-time protection, signature currency, and engine version compliance without depending on any single device's notification state.

Real capture of the Microsoft Defender Antivirus health report, showing antivirus mode, engine version, security intelligence version and recent scan results, with device counts redacted
Real capture from a live tenant — the Microsoft Defender Antivirus health report. Every device count is redacted since fleet size identifies the organization, but the report structure is real: antivirus mode distribution, engine and intelligence version spread, and recent scan completion — the fleet-wide picture this section is about.

The companion script: verifying true Defender status from the command line

The script for this post, Get-DefenderTrueStatusReport.ps1, runs every check from the "How to verify" section above in one pass: Get-MpComputerStatus's protection properties, the WinDefend service state, and a scan of the last 24 hours of the Windows Defender Operational log for Event ID 5001 (real-time protection disabled) or 5013 (Tamper Protection blocked a change). It is entirely read-only — it never calls Set-MpPreference or any other state-changing cmdlet, and it does not attempt to dismiss, suppress, or interact with the notification itself (Windows does not expose a supported API for that from a script, and this post is not going to guess at an unsupported one).

Context — why there is no companion "Remediate" script. This post's fix is verification and incident-triage judgment, not a device configuration change. There is nothing broken on a genuinely healthy device to remediate — Microsoft's own fix, when it ships, will land through a Defender Antivirus platform/engine update, not through anything an admin-run script can apply locally. Writing a "Remediate" script here would mean either doing nothing meaningful or taking an action (like forcing a Defender reinstall) that Microsoft has not asked anyone to take. This is a deliberate deviation from this site's usual Detect/Remediate pair, made because the situation genuinely does not call for one.

Run it locally first and confirm the output against what Get-MpComputerStatus and Event Viewer show you directly, before relying on it operationally.

PowerShell — real captured run
.\Get-DefenderTrueStatusReport.ps1 Checking Microsoft Defender Antivirus true protection status... [Get-MpComputerStatus] AMServiceEnabled : True AntivirusEnabled : True RealTimeProtectionEnabled : True OnAccessProtectionEnabled : True AMRunningMode : Normal AntivirusSignatureLastUpdated: 09/06/2026 06:14:22 [Service: WinDefend] Status: Running # Matches sc query WinDefend STATE: 4 RUNNING [Event log scan - last 24 hours] Event ID 5001 (Real-time protection disabled) : NOT FOUND Event ID 5013 (Tamper Protection blocked change): NOT FOUND RESULT: HEALTHY - Defender Antivirus protection is genuinely active. If a "turned off" notification appeared on this device, it matches Microsoft's confirmed false-notification bug (release health, opened 2026-08-28). No remediation action required. # Exit code 0

Run with -CsvPath to log one row per run, so a helpdesk team can build a simple audit trail of "checked, confirmed healthy" against every ticket this notification generates.

Proof it worked: reading the script's output correctly

"Proof it worked" here means proof your verification was thorough enough to trust, not proof of a fix — there isn't one yet. Three things to look for in a healthy result:

If your script (or your manual checks) come back any other way — a real False on RealTimeProtectionEnabled, a stopped WinDefend service, or a genuine 5001/5013 event in the log — stop treating it as this bug. You have found a real Defender health issue, and it deserves the normal incident response your team already has for that, not a shrug because "everyone's seeing the false alert this month."

PowerShell — companion script

Download Get-DefenderTrueStatusReport.ps1 from Imran76Awan/Windows-Patching-Scripts — no sign-in required. It is read-only: it never calls Set-MpPreference or any other state-changing cmdlet, and never touches the notification itself. Validate it in your own environment before relying on its output.

Get-DefenderTrueStatusReport.ps1 — Read-only check of Get-MpComputerStatus, the WinDefend service, and recent Event IDs 5001/5013
View all scripts on GitHub

References

Was this post helpful?
React below — no account needed
Share this post
LinkedIn X / Twitter Reddit Bluesky

More from EndpointWeekly

Security
Your RMM Tool Has a Service Principal in Your Tenant. Does It…
DragonForce ransomware breached an MSP through its RMM platform and pivoted into…
Security
Intune, Defender, and Entra ID in 2026: What Is Actually Unified…
A practitioner audit of what genuinely works as one system across Intune, Defender, and…
Security
Windows LAPS vs Legacy LAPS: The Migration Drift Where Two…
You migrated from legacy Microsoft LAPS to Windows LAPS and the portal looks clean. But…