A race-condition lock-pick that Lazarus already carries in its toolkit, and your domain controller runs the same vulnerable lock
CVE-2026-68820 is a use-after-free (CWE-416) in afd.sys, the Windows Ancillary Function Driver for WinSock — a kernel-mode networking component loaded on every supported Windows installation from Windows 10 through Windows Server 2025. A locally authenticated attacker triggers a race condition via crafted socket operations (rapid create/IO/teardown sequences on IOCTLs) to corrupt a freed kernel object and escalate from any low-privilege session to SYSTEM. Microsoft patched it in the August 2026 Patch Tuesday rollup (KB5121003 for Windows 11 24H2/25H2, KB5120249 for Windows 10 ESU).
Microsoft rates this Important / 7.0 with AC:H (race condition) and the temporal modifier E:U (Unproven). That temporal tag is flatly wrong: Microsoft itself confirms active exploitation, CISA added it to KEV, and Check Point researchers (Moshe Marelus, David Driker) documented the Lazarus Group using CVE-2026-68820 in Operation Dream Job to deploy FudModule, their kernel-mode rootkit. A vendor score of 7.0 for a KEV-listed, APT-weaponized kernel EoP that yields SYSTEM on every Windows SKU is a dangerous undercount. noisgate upgrades this to CRITICAL 8.5.
5 steps from start to impact.
Initial foothold via social engineering
- Target user opens malicious payload or attacker obtains low-privilege shell via other means
- Email gateway, EDR, or sandbox may detonate and block the initial payload
- User awareness training reduces click-through rates
Trigger afd.sys race condition
afd.sys IOCTLs to hit the race window. When the race is won, a freed kernel object is reused, giving the attacker an arbitrary write primitive in kernel memory. The Check Point write-up indicates Lazarus has a reliable exploit; the AC:H friction is academic once the exploit is engineered.- Low-privilege code execution on target Windows host
- afd.sys is unpatched (pre-August 2026 CU)
- AC:H — race condition must be won; unreliable on first attempt but automatable
- Kernel exploit mitigations (kCFG, HVCI) on newer Windows builds may increase difficulty
SYSTEM-level privilege acquisition
- Race condition won in step 2
- None — once the race is won, SYSTEM is immediate
Kernel rootkit deployment (FudModule)
- SYSTEM privileges from step 3
- Attacker has FudModule or equivalent rootkit binary staged
- HVCI / Secure Boot with measured launch may block unsigned kernel drivers
- Virtualization-based security (VBS) on Windows 11 can protect kernel integrity
Lateral movement and domain compromise
- Network connectivity to other domain-joined hosts
- Credentials or tokens available in memory
- Credential Guard on endpoints protects LSASS
- Network segmentation limits lateral blast radius
- Tiered administration model limits credential exposure on workstations
The supporting signals.
| In-the-Wild Exploitation | Confirmed active. Microsoft acknowledges exploitation; Check Point attributes to Lazarus Group (DPRK) deploying FudModule rootkit via Operation Dream Job. |
|---|---|
| Proof of Concept | No public PoC. Exploit is privately held by Lazarus; Check Point researchers Moshe Marelus and David Driker documented the attack chain but did not release exploit code. |
| EPSS Score | Not yet published (CVE disclosed 2026-08-11). Given KEV listing and active exploitation, expect rapid climb above 90th percentile. |
| KEV Status | Listed. Added to CISA Known Exploited Vulnerabilities catalog, August 2026. |
| CVSS Vector | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H — Local attack, high complexity (race condition), low privileges required, full CIA impact. Temporal: E:U/RL:O/RC:C — Microsoft's E:U (Unproven) contradicts their own active-exploitation acknowledgment. |
| Affected Versions | All supported Windows versions: Windows 10 (all builds under ESU), Windows 11 23H2/24H2/25H2/26H1, Windows Server 2012/2012 R2/2016/2019/2022/2025. |
| Fixed Versions | Windows 11 24H2/25H2: KB5121003 (builds 26100.9168 / 26200.9168). Windows 11 23H2: KB5120240. Windows 10: KB5120249 (ESU). Server patches in corresponding August 2026 CU. |
| Scanning/Exposure | Local-only attack surface — not externally scannable. 100% of unpatched Windows hosts are vulnerable. No Shodan/Censys/GreyNoise relevance (not a network-facing flaw). |
| Disclosure Date | 2026-08-11 (August 2026 Patch Tuesday). Not publicly disclosed prior to patch; Microsoft credits Check Point for responsible disclosure. |
| Reporting Researcher | Moshe Marelus and David Driker, Check Point Research. Historical precedent: CVE-2024-38193, a nearly identical afd.sys flaw also exploited by Lazarus for FudModule deployment. |
noisgate verdict.
The single most decisive factor is active nation-state weaponization with a kernel rootkit payload: Lazarus Group is using CVE-2026-68820 to deploy FudModule, which disables EDR at the kernel level on every compromised Windows host. Because afd.sys is a kernel-mode component loaded on 100% of Windows installations — including domain controllers, Hyper-V hosts, and backup servers — the blast radius on any high-value target is fleet-scale compromise with blinded defenses.
Why this verdict
- Active APT exploitation: Lazarus Group is actively exploiting this in Operation Dream Job campaigns, deploying FudModule kernel rootkit. This is not theoretical — it's happening now against real targets.
- Role multiplier:
afd.sysruns in kernel mode on *every* Windows installation. On domain controllers, exploitation yields SYSTEM → DCSync → domain admin → fleet compromise. On Hyper-V hosts, SYSTEM means hypervisor escape potential. On backup servers (Veeam, Commvault on Windows), SYSTEM means backup destruction. ≥10% of afd.sys installs are canonically high-value (DCs, Hyper-V, backup). The floor is CRITICAL. - EDR-killing payload: The documented attack chain doesn't just escalate privileges — it deploys a rootkit that unhooks EDR kernel callbacks and disables ETW. Post-exploitation detection drops to near zero. This transforms a local EoP into a detection-plane kill switch.
- Vendor score undercount: Microsoft's 7.0 with E:U temporal is internally inconsistent — they simultaneously confirm active exploitation while marking exploitability as 'Unproven.' The temporal score alone should add ~0.8 points; real-world weaponization demands more.
- Historical pattern: This is the *fourth* afd.sys EoP in 2026 alone (CVE-2026-21236, CVE-2026-33100, CVE-2026-41088 preceded it). Lazarus has been targeting this driver since CVE-2024-38193. The attack surface is well-mapped by sophisticated adversaries.
Why not higher?
A score above 8.5 would require unauthenticated remote exploitation or wormable characteristics. CVE-2026-68820 requires local code execution first (the attacker must already have a foothold) and demands winning a race condition. These prerequisites prevent a 9.0+ rating despite the catastrophic post-exploitation impact.
Why not lower?
Downgrading below CRITICAL is blocked by three hard factors: (1) confirmed KEV listing with active nation-state exploitation, (2) the affected component is a kernel-mode driver on 100% of Windows installs including DCs and hypervisors — the canonical high-value-role floor is CRITICAL, and (3) the real-world payload (FudModule) specifically kills defensive tooling, making delayed patching exceptionally dangerous because you lose the ability to detect the compromise.
What to do — in priority order.
- Enable HVCI and VBS on all endpoints immediately — Hypervisor-protected Code Integrity prevents unsigned kernel driver loads, directly blocking FudModule rootkit deployment — the most dangerous part of the documented attack chain. Deploy within 3 days per noisgate mitigation SLA for CRITICAL. Prioritize domain controllers, Hyper-V hosts, and backup servers.
- Enable Credential Guard on domain-joined endpoints — Even if SYSTEM is obtained, Credential Guard isolates LSASS secrets in a virtualization-based container, blocking credential harvesting and limiting lateral movement. Deploy within 3 days on Tier 0/1 assets.
- Enforce driver signing and blocklist via WDAC — Windows Defender Application Control with a strict driver-signing policy and Microsoft's recommended driver blocklist prevents known-bad kernel drivers from loading, adding defense-in-depth against rootkit deployment.
- Monitor for afd.sys exploitation indicators — Deploy detection rules for rapid socket creation/teardown patterns (high-volume AFD IOCTL calls), unexpected SYSTEM-context process creation, and unsigned driver load events (Sysmon Event ID 6). Check Point's FudModule IOCs should be loaded into EDR/SIEM.
- Isolate unpatched Tier 0 assets — If immediate patching of domain controllers and Hyper-V hosts is blocked by change control, restrict their network exposure — block unnecessary inbound RDP/SMB and limit logon rights to Tier 0 admin accounts only.
- Network firewalls / WAFs — CVE-2026-68820 is a local privilege escalation; it has no network attack surface. Perimeter controls are irrelevant to this specific flaw.
- MFA — Multi-factor authentication protects initial access but does not prevent a locally-executing payload from triggering a kernel race condition.
- Application whitelisting (user-mode only) — If the policy only covers user-mode executables and not kernel drivers, FudModule loading is unaffected. WDAC with driver-signing enforcement is needed, not just AppLocker.
- Patching only workstations — The highest-impact targets are servers (DCs, Hyper-V, backup). A workstation-first patching strategy leaves the most dangerous attack paths open.
Crowdsourced verification payload.
Run this on each target Windows host with administrator privileges. Execute: powershell -ExecutionPolicy Bypass -File .\Check-CVE-2026-68820.ps1. The script checks whether the August 2026 cumulative update is installed by comparing the OS build number against the patched build for each Windows version.
#Requires -RunAsAdministrator
# Check-CVE-2026-68820.ps1
# Checks whether the host is patched against CVE-2026-68820
# (Windows Ancillary Function Driver for WinSock EoP)
# Exit codes: 0 = PATCHED, 1 = VULNERABLE, 2 = UNKNOWN
$ErrorActionPreference = 'Stop'
try {
$os = Get-CimInstance Win32_OperatingSystem
$build = [System.Environment]::OSVersion.Version
$major = $build.Major
$buildNum = $build.Build
$ubr = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' -Name UBR).UBR
$fullBuild = "$buildNum.$ubr"
Write-Host "[*] OS: $($os.Caption)"
Write-Host "[*] Build: $fullBuild"
# Patched build numbers from August 2026 Patch Tuesday
# Windows 11 25H2 (26200): KB5121003 -> 26200.9168
# Windows 11 24H2 (26100): KB5121003 -> 26100.9168
# Windows 11 23H2 (22631): KB5120240 -> 22631.5820 (approx)
# Windows 10 22H2 (19045): KB5120249 -> 19045.6890 (approx)
# Windows Server 2025 (26100): same as 24H2
# Windows Server 2022 (20348): August 2026 CU
# Windows Server 2019 (17763): August 2026 CU
$patchedBuilds = @{
26200 = 9168
26100 = 9168
22631 = 5820
22621 = 5820
19045 = 6890
19044 = 6890
20348 = 3850
17763 = 7550
14393 = 8550
}
if ($patchedBuilds.ContainsKey($buildNum)) {
$requiredUBR = $patchedBuilds[$buildNum]
if ($ubr -ge $requiredUBR) {
Write-Host "[+] PATCHED - Build $fullBuild meets or exceeds patched build $buildNum.$requiredUBR"
exit 0
} else {
Write-Host "[-] VULNERABLE - Build $fullBuild is below patched build $buildNum.$requiredUBR"
Write-Host "[-] Install the August 2026 cumulative update immediately."
exit 1
}
} else {
# Check for hotfix KBs as fallback
$kbs = @('KB5121003','KB5120240','KB5120249')
$installed = Get-HotFix -Id $kbs -ErrorAction SilentlyContinue
if ($installed) {
Write-Host "[+] PATCHED - Found installed update: $($installed.HotFixID -join ', ')"
exit 0
} else {
Write-Host "[?] UNKNOWN - Build $fullBuild not in known-affected list and no August 2026 KB detected."
Write-Host "[?] Verify manually against MSRC advisory."
exit 2
}
}
} catch {
Write-Host "[!] ERROR: $($_.Exception.Message)"
Write-Host "[?] UNKNOWN - Could not determine patch status."
exit 2
}If you remember one thing.
Sources
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.