← Back to Feed CACHED · 2026-05-17 09:42:19 · cache_key CVE-2025-29912
CVE-2026-20805 · CWE-200 · Disclosed 2026-01-13

Exposure of sensitive information to an unauthorized actor in Desktop Windows Manager

ASSESSED — NOISGATE V0.5
Vendor
Reassessed
Verdict:
01 · The Real Story

This is a burglar already inside the building finding the blueprint drawer, not the front door key

CVE-2026-20805 is a local information disclosure flaw in Desktop Window Manager (DWM). Microsoft/NVD describe it as allowing an *authorized* attacker to disclose information locally, with Microsoft-adjacent reporting indicating the leak is a section address from a remote ALPC port in user-mode memory. Affected systems span broad Windows client and server families patched in the January 13, 2026 security updates, including Windows 10 1607/1809/21H2/22H2, Windows 11 23H2/24H2/25H2, and Server 2016/2019/2022/2022 23H2/2025 below the fixed build cutoffs listed by NVD.

Microsoft's MEDIUM 5.5 base score is technically fair in isolation because this is local-only, low-privilege-required, confidentiality-only impact. Reality changes because CISA KEV says it was exploited in the wild on January 13, 2026, which means adversaries found operational value for it—most likely as a chain component that improves reliability of later privilege-escalation or sandbox-escape steps. That pushes it up one bucket for defenders, but not to CRITICAL, because it still needs a foothold first and does not by itself hand over code execution or SYSTEM.

"KEV turns this from a routine local info leak into a real patching priority, but it is still post-compromise."
02 · The Attack Path

4 steps from start to impact.

STEP 01

Land a user-context foothold

The attacker first needs code execution as a normal local user. The weaponized tooling here is whatever already got them in: phishing loader, browser exploit, unmanaged plugin, RMM abuse, or an existing commodity implant. CVE-2026-20805 is not an entry bug; it is a post-initial-access primitive.
Conditions required:
  • Local code execution on the target as at least a low-privilege user
  • A supported vulnerable Windows build
  • Ability to run native Windows API calls from user mode
Where this breaks in practice:
  • Requires the attacker to have already cleared the hardest step: getting onto the host
  • EDR, ASR, application control, email filtering, and browser hardening often stop the precondition before this CVE matters
  • Not internet-reachable; no direct remote exploit path
Detection/coverage: Traditional vulnerability scanners can identify vulnerable OS builds, but they cannot prove exploit use. EDR telemetry is more useful for spotting the prerequisite foothold than the DWM leak itself.
STEP 02

Query DWM/ALPC state to leak memory layout

With local code running, the attacker uses a custom ALPC/DWM interaction tool or exploit module to trigger the disclosure and recover a user-mode memory address tied to a remote ALPC port. The practical value is not raw data theft; it is memory layout disclosure that can weaken exploit mitigations such as ASLR and make another bug more reliable.
Conditions required:
  • Access to the vulnerable DWM behavior on the local host
  • No patch level at or above the January 2026 fixed build
  • Exploit code tailored to the target Windows build
Where this breaks in practice:
  • No broadly cited public PoC or mass-exploitation kit was readily visible in primary-source reporting
  • Info leak quality may vary by build and follow-on exploit needs
  • The output is only useful if the attacker already has another objective that benefits from leaked addresses
Detection/coverage: Patch-state assessment covers exposure. Runtime detection is weak unless EDR catches suspicious process behavior, exploit chaining, or unusual ALPC-related activity.
STEP 03

Chain the leak into a second exploit

The attacker pairs the leaked address data with a separate local privilege-escalation, sandbox-escape, or defense-evasion exploit. This is where the bug becomes operationally important: info leaks are classic chain enablers that turn flaky exploitation into reliable exploitation.
Conditions required:
  • Access to another exploitable weakness or exploit chain stage
  • A target where mitigations like ASLR materially affect exploit reliability
  • Ability to execute multiple stages without interruption
Where this breaks in practice:
  • Requires at least one more vulnerability or abuse path; CVE-2026-20805 does not finish the job alone
  • Modern EDR often catches exploit-chain behavior even when a single info leak is invisible
  • Blast radius stays per-host unless chained with credential theft or lateral movement tooling
Detection/coverage: Detection is stronger on the follow-on stage than on the DWM disclosure itself. Hunt for child-process anomalies, token abuse, memory tampering, LOLBin staging, and post-exploitation frameworks.
STEP 04

Escalate impact on the compromised host

If the chain succeeds, the attacker uses standard post-exploitation tooling such as credential access modules, token theft, or lateral movement frameworks to cash out the foothold. The DWM flaw is therefore best understood as a force multiplier inside a broader intrusion, not as a standalone enterprise-wide catastrophe.
Conditions required:
  • Successful chaining with another exploit or privileged action
  • Insufficient endpoint protections or missed detections
  • Valuable credentials or reachable adjacent systems
Where this breaks in practice:
  • Host impact depends entirely on the attacker having a credible second stage
  • No evidence in the source set that this bug alone causes privilege escalation or RCE
  • Containment controls can limit blast radius even after local exploitation
Detection/coverage: Post-compromise activity is where defenders have the best visibility: logon anomalies, LSASS access, token events, persistence creation, and lateral movement telemetry.
03 · Intelligence Metadata

The supporting signals.

In-the-wild statusYes. NVD flags this CVE as present in CISA KEV, and Microsoft/Talos both treated it as exploited in the wild during the January 13, 2026 Patch Tuesday cycle.
KEV statusListed in KEV on 2026-01-13 with due date 2026-02-03 in the NVD/CISA-linked record.
Proof-of-concept availabilityNo widely cited public PoC was obvious in the primary-source set reviewed. That lowers copycat risk somewhat, but KEV means somebody already has working tradecraft.
EPSS0.02955 per the user-provided intel; secondary databases place it around the 88th percentile, which is notable for a nominally medium local bug but still far below typical internet-scale wormable risk.
CVSS vector reality checkAV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N means local, already authenticated/authorized, no user click required, and confidentiality-only impact. That is a classic post-compromise chain component, not a perimeter fire.
Affected versionsBroad Windows coverage per NVD CPEs: Windows 10 1607/1809/21H2/22H2, Windows 11 23H2/24H2/25H2, Server 2016/2019/2022/2022 23H2/2025, plus Server 2012/2012 R2 entries in NVD.
Fixed versionsNVD lists patched build cutoffs including 10.0.14393.8783, 10.0.17763.8276, 10.0.19044.6809, 10.0.19045.6809, 10.0.22631.6491, 10.0.26100.7623, 10.0.26200.7623, 10.0.20348.4648, and 10.0.25398.2092 depending on branch.
Exposure / scanning realityNot meaningfully internet-enumerable. This is a local OS component, so Shodan/Censys/FOFA counts do not help much. The exposure population is effectively *every unpatched Windows endpoint that an attacker already reaches locally*.
Disclosure date2026-01-13 via Microsoft/NVD.
Reporter / discovererReporting was attributed in press coverage to Microsoft Threat Intelligence Center and Microsoft Security Response Center.
04 · The Call

noisgate verdict.

Final Verdict
UPGRADED to HIGH (7.0/10)

The decisive factor is KEV-listed active exploitation, which proves attackers value this bug in real intrusions despite the modest CVSS. It lands at HIGH—not CRITICAL—because exploitation still requires a local foothold with user privileges, making it a post-compromise amplifier rather than an initial-access event.

HIGH Affected-version and fixed-build mapping from NVD
HIGH KEV / active exploitation status
MEDIUM Assessment that the bug is mainly useful as an exploit-chain enabler
LOW Specific adversary tradecraft and exploit implementation details

Why this verdict

  • Upgrade for KEV: CISA KEV means this moved from theoretical to operational on 2026-01-13.
  • Downward pressure for attacker position: AV:L and PR:L mean the attacker already has code execution as a local user. That implies prior compromise, which narrows the reachable population compared with remote bugs.
  • Downward pressure for impact shape: this is confidentiality-only and appears to leak memory-address information, not deliver code execution or privilege escalation by itself.
  • Upward pressure for deployment breadth: DWM is everywhere in Windows fleets, so once an attacker is on-host, exposure is common across enterprise endpoints.
  • Downward pressure for chain dependence: the bug becomes materially dangerous mostly when paired with another exploit or post-exploitation objective.

Why not higher?

This is not a front-door bug. An attacker must already be on the machine with at least low privileges, and the bug does not itself provide RCE, SYSTEM, or tenant-wide compromise. Even with KEV, that prerequisite chain keeps it below CRITICAL.

Why not lower?

Leaving this at MEDIUM would ignore the strongest real-world signal available: active exploitation confirmed strongly enough for KEV inclusion. In a 10,000-host estate, any bug already used in the wild across a ubiquitous component deserves faster handling than its base CVSS suggests.

05 · Compensating Control

What to do — in priority order.

  1. Harden initial-access controls — Because this CVE is post-compromise, the best short-term risk reduction is to cut off the prerequisite foothold: tighten email/web filtering, ASR rules, application control, and macro/script execution. For a HIGH verdict, deploy or verify these controls within 30 days, but because this CVE is KEV-listed, treat it as patch / mitigate immediately, within hours for exposed high-value Windows populations.
  2. Prioritize EDR containment on user-context implants — This bug matters most after a low-privileged implant lands. Tune EDR to isolate hosts showing suspicious user-context execution, exploit-chain behavior, or credential-theft precursors, and complete those detections and response playbooks within 30 days; for KEV-tracked risk, apply emergency tuning to high-risk segments within hours.
  3. Accelerate patch deployment on workstation-heavy rings — DWM sits on the endpoint estate, so large workstation fleets are the practical exposure zone. Move January 2026 Windows cumulative updates to the front of your Windows patch queue and complete temporary risk-reduction measures within hours where active intrusion risk is highest.
  4. Constrain lateral movement from user workstations — If attackers use this bug as a chain component after initial compromise, limiting where a user-context host can reach reduces payoff. Tighten admin share access, remote service creation, WinRM/RDP exposure, and privileged logon paths within 30 days, with emergency restrictions for sensitive segments within hours due to KEV status.
What doesn't work
  • A WAF does not help; this is not a web-facing request/response flaw.
  • Perimeter vulnerability scanning alone is weak here because the vulnerable component is local and not meaningfully internet-enumerable.
  • MFA is good hygiene but does not stop an attacker who already has local code execution on the endpoint.
  • Network IPS signatures are low-value unless they catch the *initial-access* stage; the DWM disclosure itself is local.
06 · Verification

Crowdsourced verification payload.

Run this on the target Windows host or through your endpoint management tool as PowerShell. Example: powershell -ExecutionPolicy Bypass -File .\Test-CVE-2026-20805.ps1. Standard user rights are usually enough because the script reads OS version data from the registry/CIM, but local admin is fine too.

noisgate-verify.ps1
POWERSHELLREAD-ONLYSAFE
# Test-CVE-2026-20805.ps1

# Checks Windows build/UBR against NVD-listed fixed build thresholds for CVE-2026-20805.

# Output: VULNERABLE / PATCHED / UNKNOWN

# Exit codes: 0=PATCHED, 1=VULNERABLE, 2=UNKNOWN, 3=ERROR


$ErrorActionPreference = 'Stop'

function Get-OsInfo {
    $cv = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'
    $os = Get-CimInstance Win32_OperatingSystem

    [pscustomobject]@{
        ProductName   = [string]$cv.ProductName
        DisplayVersion= [string]$cv.DisplayVersion
        ReleaseId     = [string]$cv.ReleaseId
        CurrentBuild  = [int]$cv.CurrentBuild
        UBR           = [int]$cv.UBR
        BuildLabEx    = [string]$cv.BuildLabEx
        Caption       = [string]$os.Caption
        Version       = [string]$os.Version
    }
}

function Get-Threshold {
    param([object]$info)

    $build = $info.CurrentBuild
    $ubr   = $info.UBR
    $name  = ($info.ProductName + ' ' + $info.Caption).ToLowerInvariant()
    $dv    = [string]$info.DisplayVersion

    # NVD fixed build thresholds observed for CVE-2026-20805

    # 14393.8783  -> Win10 1607 / Server 2016

    # 17763.8276  -> Win10 1809 / Server 2019

    # 19044.6809  -> Win10 21H2

    # 19045.6809  -> Win10 22H2

    # 20348.4648  -> Server 2022

    # 22631.6491  -> Win11 23H2

    # 25398.2092  -> Server 2022 23H2

    # 26100.7623  -> Win11 24H2 / Server 2025

    # 26200.7623  -> Win11 25H2


    switch ($build) {
        14393 { return 8783 }
        17763 { return 8276 }
        19044 { return 6809 }
        19045 { return 6809 }
        20348 { return 4648 }
        22631 { return 6491 }
        25398 { return 2092 }
        26100 { return 7623 }
        26200 { return 7623 }
        default {
            if ($name -match 'server 2012') {
                return $null
            }
            return $null
        }
    }
}

try {
    $info = Get-OsInfo
    $threshold = Get-Threshold -info $info

    Write-Output ("ProductName: {0}" -f $info.ProductName)
    Write-Output ("Caption: {0}" -f $info.Caption)
    Write-Output ("DisplayVersion: {0}" -f $info.DisplayVersion)
    Write-Output ("Version: {0}" -f $info.Version)
    Write-Output ("Build: {0}.{1}" -f $info.CurrentBuild, $info.UBR)

    if ($null -eq $threshold) {
        Write-Output 'UNKNOWN'
        Write-Output 'Reason: This script has no authoritative fixed-build threshold for this OS branch in the embedded map.'
        exit 2
    }

    if ($info.UBR -lt $threshold) {
        Write-Output 'VULNERABLE'
        Write-Output ("Reason: Build {0}.{1} is below fixed threshold {0}.{2} for CVE-2026-20805." -f $info.CurrentBuild, $info.UBR, $threshold)
        exit 1
    }
    else {
        Write-Output 'PATCHED'
        Write-Output ("Reason: Build {0}.{1} meets or exceeds fixed threshold {0}.{2} for CVE-2026-20805." -f $info.CurrentBuild, $info.UBR, $threshold)
        exit 0
    }
}
catch {
    Write-Output 'UNKNOWN'
    Write-Output ("Reason: Error while collecting OS version data: {0}" -f $_.Exception.Message)
    exit 3
}
07 · Bottom Line

If you remember one thing.

TL;DR
Monday morning: treat CVE-2026-20805 as a HIGH patching priority because it is KEV-listed and actively exploited, even though it is only a local info leak. For this one, override the normal HIGH timing and patch / mitigate immediately, within hours on high-value Windows endpoints and user workstations, then complete broad compensating controls as needed; after that, finish full patch rollout under the noisgate mitigation SLA emergency override for active exploitation and no later than 180 days under the noisgate remediation SLA. If you need triage discipline, hunt first for vulnerable builds on internet-exposed admin jump boxes, VDI pools, developer workstations, and any host already showing user-context malware telemetry.

Sources

  1. Microsoft Security Update Guide entry
  2. NVD CVE record
  3. CISA Known Exploited Vulnerabilities Catalog
  4. FIRST EPSS overview/API documentation
  5. Cisco Talos January 2026 Patch Tuesday analysis
  6. Tenable January 2026 Patch Tuesday analysis
  7. CVE.org record
  8. Wiz CVE page with EPSS percentile display
Peer Review

What defenders are saying.

Submit a review attribution: handle + country only
0 flags selected · stored anonymously
Validation Results

Crowdsourced verification outputs.

Results submitted by users who ran the verification payload against their environment.