← Back to Feed CACHED · 2026-05-17 09:42:19 · cache_key CVE-2025-29912
CVE-2026-10955 · CWE-843 · Disclosed 2026-06-05

Type Confusion in ANGLE in Google Chrome on Windows prior to 149

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

This is a bad seam in Chrome's graphics gearbox: a hostile page can jam it from the internet, but it still has to punch through the sandbox to wreck the host

CVE-2026-10955 is a type confusion bug in ANGLE on Google Chrome for Windows. ANGLE is Chrome's graphics translation layer on Windows and sits on hot paths for WebGL and general rendering; Google states Chrome on Windows uses it for default WebGL handling and graphics rendering. Affected builds are Chrome on Windows before 149.0.7827.53; Google shipped fixes in the 149.0.7827.53/.54 stable train published on June 2, 2026, with an early stable rollout beginning May 29, 2026.

Reality check: this deserves HIGH, not panic-button critical. The attack is remote and drive-by via a crafted HTML page, which matters enormously at enterprise scale, but the public description stops at potential out-of-bounds memory access rather than confirmed code execution or sandbox escape, there is no KEV listing, no public exploit chain surfaced in web search, and Chrome's Windows sandbox is meaningful friction if the bug lands in a renderer-adjacent path.

"Drive-by reachable on a massive Windows fleet, but sandbox friction and no exploit evidence keep it out of critical."
02 · The Attack Path

4 steps from start to impact.

STEP 01

Deliver the lure page

The attacker hosts or injects a page that exercises Chrome's Windows graphics stack, most plausibly with WebGL or other GPU-backed rendering paths. There is no sign of a public weaponized kit yet, so assume a custom crafted HTML/WebGL trigger rather than an off-the-shelf tool. This is classic browser initial access: if the user browses there, the payload runs in the browser.
Conditions required:
  • Target is using Chrome on Windows below 149.0.7827.53
  • User visits an attacker-controlled or attacker-influenced page
  • Page content is allowed to render normally in the browser
Where this breaks in practice:
  • Requires user interaction in the form of page load/navigation
  • Secure web gateways, DNS filtering, link isolation, and email filtering can kill the lure before render time
  • If the enterprise heavily restricts unknown browsing for privileged users, reachable population drops
Detection/coverage: Traditional network vuln scanners will miss this because it is a client-side trigger. Your best coverage is SWG/DNS telemetry, browser crash telemetry, and EDR correlation on the user's browsing session.
STEP 02

Hit the ANGLE bug

Once the page renders, it drives the vulnerable ANGLE code path on Windows. ANGLE is widely exercised on Windows because Chromium documents it as the default WebGL backend and part of Chrome's graphics rendering stack there. The weaponized tool is still just the crafted page; no public PoC repository was found during web search.
Conditions required:
  • ANGLE-backed rendering path is reachable on the target Windows system
  • The vulnerable code path is not bypassed by driver blocklists or disabled graphics features
  • The exact browser build is still vulnerable
Where this breaks in practice:
  • Enterprise policies that disable or constrain WebGL/GPU acceleration can reduce reachability
  • Driver, GPU model, and browser state can make reliability inconsistent across a 10,000-host fleet
  • Some crashes may be non-exploitable and end as renderer resets
Detection/coverage: Look for spikes in chrome.exe or GPU/renderer crash reports, Windows Error Reporting events, and EDR signals around browser instability following access to the same domain.
STEP 03

Turn confusion into memory access

The public advisory says the bug can potentially perform out-of-bounds memory access. That is serious because type confusion bugs can sometimes be massaged into info leaks or stronger memory corruption primitives, but Google did not publicly claim code execution here. The attacker tool at this stage remains a private exploit chain, if one exists.
Conditions required:
  • Attacker can shape heap/layout state well enough to get a useful primitive
  • Platform mitigations do not collapse the bug into a harmless crash
  • The vulnerable process exposes memory worth reading or corrupting
Where this breaks in practice:
  • Modern exploit mitigations on Windows reduce reliability
  • The advisory language is weaker than 'RCE' or 'sandbox escape', suggesting impact may often stop at crash or limited memory corruption
  • No public exploit evidence means there is no proof yet that this step is dependable outside lab conditions
Detection/coverage: EDR and crash dump analysis can sometimes spot access violations, repeated renderer deaths, or abnormal GPU-process failures, but signature coverage will be weak without a public exploit pattern.
STEP 04

Chain for real host impact

To get from browser memory access to meaningful enterprise impact, the attacker usually needs either in-sandbox code execution, a clean information disclosure path, or a second bug to break containment. Chromium's own Windows security docs emphasize that renderers are locked down and sandboxed, which is the key severity brake here. Without a follow-on chain, this is dangerous browser exploitation territory but not automatically 'domain on fire' territory.
Conditions required:
  • A useful post-corruption primitive exists
  • If the bug lands in a sandboxed process, the attacker can still achieve desired objectives from that boundary or chain another bug
  • Defender controls do not stop the follow-on behavior
Where this breaks in practice:
  • Chrome's sandbox is explicit, mature, and designed to limit file/system access
  • No public second-stage chain or in-the-wild reports were found as of 2026-06-05
  • EDR tends to improve odds of catching post-browser payload execution even if the initial bug fires
Detection/coverage: If exploitation escapes the browser, EDR should see process spawning, LOLBIN use, suspicious memory execution, or credential/file access. If it does not, the event may look only like a browser crash.
03 · Intelligence Metadata

The supporting signals.

In-the-wild statusNo public in-the-wild exploitation found in web search as of 2026-06-05. Google did not flag this release item as an actively exploited zero-day, and the CVE is not KEV-listed.
PoC availabilityNo public PoC repo or Metasploit/Exploit-DB hit found during web search. The linked Chromium issue is access-restricted, which is normal for fresh Chrome bugs but means defenders have little exploit detail today.
EPSS0.035% (11th percentile) per GHSA/FIRST. That is very low and supports a downgrade from panic assumptions.
KEV statusNot listed in CISA's Known Exploited Vulnerabilities catalog as of 2026-06-05.
Vendor severity / scoreChromium labels it High in the advisory text, but there is no authoritative CVSS score from Chrome or NVD yet. This assessment is therefore first-pass noisgate scoring, not a comparison against vendor CVSS.
Affected versionsGoogle Chrome on Windows prior to 149.0.7827.53. The flaw is explicitly scoped to Windows in the CNA/GHSA wording.
Fixed versions149.0.7827.53+ on Windows; Google's stable post lists 149.0.7827.53/54 for Windows/Mac and 149.0.7827.53 for Linux for the broader release train. No distro backport story is relevant here because this is the desktop browser, not a distro-owned server package.
Reachability amplifierANGLE is not obscure plumbing on Windows. Chromium documents it as the default WebGL backend and says Chrome uses it for all graphics rendering on Windows, which increases real attack-surface relevance.
Exposure / scanning realityGreyNoise/Shodan/Censys/FOFA are poor fits for this CVE because there is no internet-facing service to census; the asset is the endpoint browser. I found no public scanning signal tied to this CVE, which is expected for client-side browser bugs.
Disclosure / reporterGoogle's stable-channel advisory was published 2026-06-02 and lists CVE-2026-10955 as reported by Google on 2026-04-25. GHSA published the advisory entry on 2026-06-05.
04 · The Call

noisgate verdict.

Final Verdict
= UNCHANGED to HIGH (7.4/10)

The deciding factor is internet-scale reachability against a very common endpoint application: an attacker only needs to get a user onto a hostile page, and Windows Chrome is everywhere. It stays out of CRITICAL because the public impact stops at potential out-of-bounds memory access, not demonstrated host compromise, and Chrome's sandbox plus the absence of exploit evidence are real braking forces.

MEDIUM overall severity assessment without authoritative CVSS
HIGH affected-version and fixed-build mapping
MEDIUM absence of public exploitation evidence as of 2026-06-05

Why this verdict

  • Upward pressure: unauthenticated remote delivery — the attacker position is just 'internet + lure page'; no creds, no prior foothold, no local access.
  • Upward pressure: ANGLE is hot-path code on Windows — Chromium documents ANGLE as the default WebGL backend and part of all graphics rendering on Windows, so this is not an edge feature few users ever touch.
  • Downward pressure: user interaction + Windows-only scope + sandbox + no exploitation evidence — the chain needs page load, only hits Windows Chrome, and still has to overcome renderer/process containment to become a real host-compromise event.

Why not higher?

There is no public sign of exploitation, no public PoC, and the advisory language does not claim code execution or sandbox escape. In Chrome, those details matter: a memory bug inside a browser component is not automatically a full workstation takeover unless the exploit chain proves it.

Why not lower?

This is still a drive-by browser bug in a massively deployed enterprise client, reachable over the open web by simply getting a user to render attacker-controlled content. Even with the sandbox, that combination is too operationally important to bury in backlog hygiene.

05 · Compensating Control

What to do — in priority order.

  1. Force Chrome auto-update compliance — Use your existing browser management stack to ensure Windows endpoints cannot sit indefinitely on pre-149.0.7827.53 builds. For a HIGH verdict, enforce this control within 30 days while patch rollout completes.
  2. Constrain risky graphics paths where business-tolerable — For high-risk user tiers such as admins, finance, and helpdesk, consider temporarily disabling or restricting WebGL/GPU acceleration via enterprise policy if the business can tolerate it. This reduces reachability into ANGLE and should be deployed within 30 days on the highest-risk cohorts.
  3. Isolate privileged browsing — Move privileged users and admin workflows to hardened browsing profiles, VDI, or browser isolation where available. This limits blast radius if a malicious page lands and should be in place within 30 days for your most sensitive users.
  4. Turn browser crash telemetry into an alertable signal — Collect chrome.exe crash events, GPU-process instability, and repeated renderer failures into your SIEM/EDR detection pipeline. That won't prevent exploitation, but it gives you the only realistic early warning for a client-side browser flaw, and it should be operationalized within 30 days.
What doesn't work
  • MFA does nothing here; this is a client-side memory corruption path, not an identity control problem.
  • Perimeter vuln scanning does not solve endpoint-browser version drift well and cannot validate the crafted HTML trigger path.
  • A generic WAF/IPS rule is weak protection because the trigger is likely normal HTTPS web content and there is no public stable exploit signature to match.
06 · Verification

Crowdsourced verification payload.

Run this on the target Windows endpoint or through your remote management tooling such as PowerShell Remoting/Intune. Invoke it with powershell -ExecutionPolicy Bypass -File .\check-chrome-cve-2026-10955.ps1; administrator rights are not required because it reads local file and registry metadata only.

noisgate-verify.ps1
POWERSHELLREAD-ONLYSAFE
# check-chrome-cve-2026-10955.ps1

# Purpose: Determine whether Google Chrome on Windows is vulnerable to CVE-2026-10955.

# Logic: Any installed Chrome version lower than 149.0.7827.53 is VULNERABLE.

# Output: VULNERABLE / PATCHED / UNKNOWN

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


param()

$ErrorActionPreference = 'SilentlyContinue'
$MinimumSafeVersion = [version]'149.0.7827.53'
$FoundVersions = New-Object System.Collections.Generic.List[version]

function Add-VersionIfValid {
    param([string]$VersionString)
    if ([string]::IsNullOrWhiteSpace($VersionString)) { return }
    try {
        $v = [version]$VersionString
        $FoundVersions.Add($v)
    } catch {
        # Ignore unparsable versions

    }
}

# Common Chrome executable paths

$Paths = @(
    "$env:ProgramFiles\Google\Chrome\Application\chrome.exe",
    "$env:ProgramFiles(x86)\Google\Chrome\Application\chrome.exe",
    "$env:LocalAppData\Google\Chrome\Application\chrome.exe"
) | Select-Object -Unique

foreach ($Path in $Paths) {
    if (Test-Path $Path) {
        $Item = Get-Item $Path
        if ($Item -and $Item.VersionInfo) {
            Add-VersionIfValid -VersionString $Item.VersionInfo.ProductVersion
            Add-VersionIfValid -VersionString $Item.VersionInfo.FileVersion
        }
    }
}

# Registry locations that may hold Chrome version metadata

$RegistryPaths = @(
    'HKLM:\SOFTWARE\Google\Chrome\BLBeacon',
    'HKLM:\SOFTWARE\WOW6432Node\Google\Chrome\BLBeacon',
    'HKCU:\Software\Google\Chrome\BLBeacon',
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe',
    'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe'
)

foreach ($RegPath in $RegistryPaths) {
    $Props = Get-ItemProperty -Path $RegPath
    if ($Props) {
        Add-VersionIfValid -VersionString $Props.version
        Add-VersionIfValid -VersionString $Props.pv
        if ($Props.'(default)') {
            $ExePath = $Props.'(default)'
            if (Test-Path $ExePath) {
                $Item = Get-Item $ExePath
                if ($Item -and $Item.VersionInfo) {
                    Add-VersionIfValid -VersionString $Item.VersionInfo.ProductVersion
                    Add-VersionIfValid -VersionString $Item.VersionInfo.FileVersion
                }
            }
        }
        if ($Props.Path) {
            $ExePath = Join-Path $Props.Path 'chrome.exe'
            if (Test-Path $ExePath) {
                $Item = Get-Item $ExePath
                if ($Item -and $Item.VersionInfo) {
                    Add-VersionIfValid -VersionString $Item.VersionInfo.ProductVersion
                    Add-VersionIfValid -VersionString $Item.VersionInfo.FileVersion
                }
            }
        }
    }
}

if ($FoundVersions.Count -eq 0) {
    Write-Output 'UNKNOWN - Chrome not found or version metadata unavailable'
    exit 2
}

$HighestVersion = $FoundVersions | Sort-Object -Descending | Select-Object -First 1

if ($HighestVersion -lt $MinimumSafeVersion) {
    Write-Output ("VULNERABLE - Detected Chrome version {0}; requires >= {1}" -f $HighestVersion, $MinimumSafeVersion)
    exit 1
} else {
    Write-Output ("PATCHED - Detected Chrome version {0}; meets minimum safe version {1}" -f $HighestVersion, $MinimumSafeVersion)
    exit 0
}
07 · Bottom Line

If you remember one thing.

TL;DR
Monday morning, treat this as a high-priority Windows endpoint browser update, not a stop-the-world zero-day. Start by inventorying all Windows Chrome builds, fast-track managed rollout of 149.0.7827.53/54 or later, and apply temporary risk reduction for high-risk user groups such as WebGL/GPU restrictions or browser isolation where feasible within 30 days per the noisgate mitigation SLA; finish patching remaining Windows endpoints, VDI images, and gold builds within 180 days per the noisgate remediation SLA.

Sources

  1. Chrome Releases - Stable Channel Update for Desktop (June 2, 2026)
  2. Chrome Releases - Early Stable Update for Desktop (May 29, 2026)
  3. GitHub Advisory Database - GHSA-v8cp-r57p-rcv9 / CVE-2026-10955
  4. NVD - CVE-2026-10955
  5. ANGLE official repository README
  6. Chromium - chrome://sandbox Diagnostics for Windows
  7. Chromium - Multi-process Architecture
  8. Canadian Centre for Cyber Security - Google Chrome security advisory AV26-544
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.