[local] Windows Defender (MsMpEng.exe) - Race Condition
漏洞
High · CVSS N/A📋 漏洞基础信息
| CVE | 未分配CVE |
|---|---|
| 漏洞类型 | 漏洞 |
| 受影响版本 | 详见原文 |
| 危害等级 | High · CVSS N/A |
| 发布日期 | 2026-07-06 |
| 提交者 | nu11secur1ty |
| 来源 | Exploit-DB 原文 ↗ |
⚔️ 原始 PoC
https://gitlab.com/nu11secur1ty/0/-/raw/main/README.md?ref_type=heads
## Description:
A race condition exists between Windows Defender's
`MpCleanCallbackFunction` (cleanup routine) and Volume Shadow Copy
creation. Successful exploitation results in:
1. LPE (Local Privilege Escalation) to NT AUTHORITY\SYSTEM via
`CreateProcessAsUser`
2. Use-after-free condition causing Windows Defender (`MsMpEng.exe`) to
crash
3. System remains without antivirus protection for the session
The exploit uses:
- Fake ISO mount via `OpenVirtualDisk` / `AttachVirtualDisk`
- Real-time priority escalation (`REALTIME_PRIORITY_CLASS` +
`THREAD_PRIORITY_TIME_CRITICAL`)
- Speed racing against Defender's cleanup routine
**STATUS: HIGH - Critical (0-Day / LPE)**
Exploit:
[url](https://gitlab.com/nu11secur1ty/0.git)
Demo:
[url](https://www.patreon.com/nu11secur1ty/posts/honda-exploit-160798929)
Time spent:
9:10:00
--
System Administrator - Infrastructure Engineer
Penetration Testing Engineer
Exploit developer at https://packetstormsecurity.com/
https://cve.mitre.org/index.html
https://cxsecurity.com/ and https://www.exploit-db.com/
home page: https://www.asc3t1c-nu11secur1ty.com/
hiPEnIMR0v7QCo/+SEH9gBclAAYWGnPoBIQ75sCj60E=
nu11secur1ty https://www.asc3t1c-nu11secur1ty.com/
--
System Administrator - Infrastructure Engineer
Penetration Testing Engineer
Exploit developer at https://packetstorm.news/
https://cve.mitre.org/index.html
https://cxsecurity.com/ and https://www.exploit-db.com/
0day Exploit DataBase https://0day.today/
home page: https://www.asc3t1c-nu11secur1ty.com/
hiPEnIMR0v7QCo/+SEH9gBclAAYWGnPoBIQ75sCj60E=
nu11secur1ty <http://nu11secur1ty.com/>🔬 深度技术分析
<<SCRIPT_LANG>>
PowerShell
<<SCRIPT>>
<#
.SYNOPSIS
Windows Defender (MsMpEng.exe) Race Condition - Environment Verification / Crash Detection
.DESCRIPTION
这是一个“防御性检测/验证脚本”,不是漏洞利用代码。
它不会挂载虚拟磁盘、不会设置实时优先级、不会触发 Defender
cleanup callback 竞态,也不会尝试任何本地提权。
该脚本仅用于验证目标环境是否出现公开报告中的“信号”:
1) MsMpEng.exe 是否存在/正在运行
2) Windows Defender 实时保护状态
3) MsMpEng.exe 最近是否发生过崩溃 (Event ID 1000)
4) VSS 服务状态
5) 当前进程是否具有管理员权限
用法:
powershell.exe -ExecutionPolicy Bypass -File MsMpEng_Race_Check.ps1
.NOTES
作者:安全研究员(防御方向)
日期:2026-06-11
说明:该公开漏洞报告没有分配 CVE,且公开资料未提供完整可复现步骤,
因此本脚本只做环境检测/崩溃监测,不作为 Exp 使用。
#>
$ErrorActionPreference = 'Continue'
function Write-Info {
param(
[string]$Name,
[object]$Value
)
"[*] {0,-34}: {1}" -f $Name, $Value
}
Write-Info "脚本开始" (Get-Date -Format "yyyy-MM-dd HH:mm:ss")
Write-Info "当前用户" ([Security.Principal.WindowsIdentity]::GetCurrent().Name)
1. 当前进程权限检查
$currentIdentity = [Security.Principal.WindowsIdentity]::GetCurrent()
$principal = New-Object Security.Principal.WindowsPrincipal($currentIdentity)
$isAdmin = $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Write-Info "IsAdministrator" $isAdmin
2. 检查 MsMpEng.exe 进程
$mp = Get-Process -Name "MsMpEng" -ErrorAction SilentlyContinue
if ($mp) {
Write-Info "MsMpEng PID" $mp.Id
Write-Info "MsMpEng 路径" $mp.Path
Write-Info "MsMpEng 响应状态" $mp.Responding
} else {
Write-Info "MsMpEng 进程" "未发现/未运行"
}
3. 检查 Windows Defender 服务
try {
$svc = Get-Service -Name "WinDefend" -ErrorAction Stop
Write-Info "WinDefend 服务状态" $svc.Status
}
catch {
Write-Info "WinDefend 服务状态" "获取失败: $($_.Exception.Message)"
}
4. 检查 Defender 实时保护状态
try {
$mpStatus = Get-MpComputerStatus -ErrorAction Stop
Write-Info "RealTimeProtectionEnabled" $mpStatus.RealTimeProtectionEnabled
Write-Info "AntivirusEnabled" $mpStatus.AntivirusEnabled
}
catch {
Write-Info "Defender 状态" "不可用/已被其他安全软件接管: $($_.Exception.Message)"
}
5. 检查 MsMpEng.exe 最近 7 天崩溃事件 (Application Error / Event ID 1000)
$since = (Get-Date).AddDays(-7)
try {
$crashEvents = @(
Get-WinEvent -FilterHashtable @{
LogName = 'Application'
Id = 1000
StartTime = $since
} -ErrorAction SilentlyContinue |
Where-Object { $_.Message -like '*MsMpEng.exe*' }
)
Write-Info "MsMpEng 崩溃事件数(7天)" $crashEvents.Count
$crashEvents | Select-Object -First 5 TimeCreated, Id, ProviderName, Message |
Format-List
}
catch {
Write-Info "崩溃事件查询" "无权限或日志不存在: $($_.Exception.Message)"
}
6. 检查 VSS 服务
try {
$vss = Get-Service -Name "VSS" -ErrorAction SilentlyContinue
if ($vss) {
Write-Info "VSS 服务状态" $vss.Status
} else {
Write-Info "VSS 服务状态" "未安装/不存在"
}
}
catch {
Write-Info "VSS 服务状态" "获取失败: $($_.Exception.Message)"
}
7. 系统启动时间 / 在线时长
try {
$os = Get-CimInstance -ClassName Win32_OperatingSystem -ErrorAction Stop
$uptime = (Get-Date) - $os.LastBootUpTime
Write-Info "最近启动时间" $os.LastBootUpTime
Write-Info "系统运行时长(小时)" ([math]::Round($uptime.TotalHours, 2))
}
catch {
Write-Info "系统启动时间" "获取失败: $($_.Exception.Message)"
}
Write-Info "脚本结束" (Get-Date -Format "yyyy-MM-dd HH:mm:ss")
<#
🛡️ 修复建议
请升级到厂商最新安全版本。
📎 参考链接
🚨 威胁评估
| 📈 EPSS 利用概率 | 暂无数据 |
| 🚨 CISA KEV | 未被已知利用 |
| 🔧 公开 PoC | 暂无公开 PoC |
⚠️ 本文基于公开漏洞数据库,仅供安全研究与防御参考。生成时间: 2026-08-03 08:30 | 来源: Exploit-DB