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

Use after free in Autofill in Google Chrome on Android prior to 149

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

This is a jammed interior door, not an unlocked front gate

CVE-2026-10934 is a use-after-free in Chrome Autofill on Android affecting versions before 149.0.7827.53. In plain English: memory tied to Autofill handling can be reused after it should be dead, which creates a path for controlled memory corruption. The key caveat is baked into Google's own description: the attacker must already have compromised the renderer process and still needs user interaction on a crafted page, so this is not a one-bug drive-by RCE story.

Google's HIGH 8.3 score is technically defensible in a lab because browser-process memory corruption can be a serious privilege step-up from renderer code execution. In enterprise reality, that baseline is too hot: this bug is Android-only, high-complexity, user-interaction-required, and explicitly post-initial-browser-compromise. That makes it valuable to exploit developers building a Chrome chain, but a weaker patching priority than unauthenticated single-bug remote compromises.

"This is a useful second-stage Chrome chain component, not a fleet-wide fire drill by itself."
02 · The Attack Path

4 steps from start to impact.

STEP 01

Land renderer execution with a separate exploit chain

The attacker first needs code execution or equivalent control inside Chrome's renderer process using some other bug or chain component. CVE-2026-10934 does not provide that initial foothold; it only becomes reachable once the renderer is already under attacker control. Weaponized tool: custom renderer exploit against Blink/V8 or a logic flaw; no public PoC for this CVE was found.
Conditions required:
  • Victim uses Chrome on Android below 149.0.7827.53
  • Victim visits attacker-controlled content
  • Attacker has a separate renderer compromise primitive
Where this breaks in practice:
  • This is a post-compromise prerequisite; most attackers will not have a reliable first-stage renderer exploit
  • Modern Chrome exploit mitigations raise the cost of landing stable renderer control
Detection/coverage: Traditional vuln scanners see the version gap, but they do not validate the prerequisite of an existing renderer compromise. Mobile EDR/MDM rarely detect the first-stage browser exploit with high confidence.
STEP 02

Drive the compromised renderer into Autofill lifetime misuse

With renderer control, the attacker manipulates form and IPC flows to hit the Autofill object lifetime bug and trigger a use-after-free in a more privileged browser-side path. On Android, Autofill interactions cross renderer/browser boundaries and can expose high-value app data paths. Weaponized tool: custom IPC/message sequence targeting Autofill; no public exploit kit or Metasploit module was found.
Conditions required:
  • Renderer compromise is already active
  • Target browsing session reaches a page state that exercises Autofill-relevant code
  • User interaction occurs as implied by the vendor CVSS
Where this breaks in practice:
  • Autofill must be engaged in a way that actually reaches the vulnerable path
  • High attack complexity means reliability work is needed across devices and OEM Android builds
  • User interaction reduces silent exploitation at scale
Detection/coverage: Coverage is weak. You may see browser crashes, unusual renderer/browser restarts, or crash telemetry spikes, but deterministic signature-based detection is poor.
STEP 03

Convert memory corruption into browser-process impact

If exploitation is reliable, the attacker can potentially pivot from renderer control into the browser app's higher-privilege context, which is the meaningful security gain here. That can enable theft of session material, broader same-app access, or stronger persistence within the browser process than renderer-only compromise. Weaponized tool: custom ROP/data-only exploit built for the target build and device.
Conditions required:
  • Successful UAF trigger with enough control for memory shaping
  • Target-specific exploit reliability against current mitigations
Where this breaks in practice:
  • Moving from crash to controlled code execution is the hard part
  • Android app sandboxing and exploit mitigations still constrain final blast radius
  • No evidence this CVE alone escapes the Android OS sandbox
Detection/coverage: Exploit success is more likely to appear as crash artifacts, anomalous Chrome restarts, or post-compromise account/session abuse than as a direct security product alert.
STEP 04

Chain onward for device-level compromise if desired

A serious actor could pair browser-process compromise with a separate Android sandbox escape or privilege-escalation bug, but that is another chain stage, not this CVE's native outcome. For most enterprises, that means CVE-2026-10934 is best understood as a middle link in an attack chain rather than the whole chain. Weaponized tool: additional Android LPE/sandbox-escape exploit; none is implied by this record.
Conditions required:
  • Attacker wants device-level impact beyond Chrome data and sessions
  • A second, separate Android privilege-escalation primitive exists
Where this breaks in practice:
  • Requires yet another bug and reliability engineering
  • Enterprise MDM, app isolation, and OS patching further reduce practical success
Detection/coverage: At this stage, detection shifts to broader mobile compromise telemetry, account abuse, or MDM/EDR anomaly correlation rather than browser-version scanning.
03 · Intelligence Metadata

The supporting signals.

In-the-wild statusNo public exploitation evidence found and not listed in CISA KEV as of this assessment.
Public PoC availabilityNo public PoC located for CVE-2026-10934. Nothing credible turned up in Chromium public references or mainstream exploit repos from the sources reviewed.
EPSS0.00068 per the user-provided intel — effectively background noise, consistent with a hard-to-weaponize, chain-dependent bug.
KEV statusNot KEV-listed. That matters here because browser chain components with real-world traction often surface quickly in KEV or vendor exploitation statements.
CVSS vector readCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H says network-reachable, high complexity, user interaction required, and high impact if exploited — but it does not capture the critical real-world prerequisite that the attacker already compromised the renderer.
Affected versionsGoogle Chrome on Android prior to 149.0.7827.53.
Fixed version149.0.7827.53 or later on Android. Chrome mobile updates are typically delivered through Google Play.
Exposure realityChrome on Android is massively deployed, but this is not an internet-exposed service. Shodan/Censys-style external enumeration is basically irrelevant; exposure depends on managed Android fleet presence, not open ports.
Disclosure date2026-06-04 per the user-provided intel.
Reporter / researcherNot publicly identified in the sources reviewed. Chrome often withholds detailed bug metadata until broad patch adoption.
04 · The Call

noisgate verdict.

Final Verdict
DOWNGRADED to MEDIUM (5.9/10)

The decisive downgrade factor is simple: the attacker must already have compromised the renderer, which means this CVE is not a first-hop enterprise exposure but a second-stage privilege step inside the browser. That sharply narrows the reachable population and pushes this out of emergency-patching territory absent exploitation evidence.

HIGH Downgrade driven by the explicit renderer-compromise prerequisite
MEDIUM Assessment of practical enterprise blast radius on managed Android fleets
MEDIUM Lack of public exploitation or PoC evidence at time of review

Why this verdict

  • Major downward pressure: requires prior renderer compromise. That implies the attacker has already landed an earlier browser exploit stage, which is a huge real-world filter and makes this a chain component, not an entry bug.
  • Android-only scope trims enterprise exposure. Many 10,000-host environments care far more about Windows/macOS browser exposure than a mobile-only Chrome issue, especially when mobile browsing is partly segmented by MDM and app controls.
  • High complexity plus user interaction cuts scalability. Even after initial renderer control, the attacker still needs a reliable Autofill trigger path and user-driven conditions, which is a bad recipe for broad opportunistic exploitation.
  • No KEV and near-zero EPSS remove urgency amplification. There is no public signal that attackers are actively preferring this bug right now.
  • Still not LOW because browser-process compromise matters. If an actor already has renderer execution, a browser-side memory corruption bug on a ubiquitous app is exactly the kind of second-stage primitive that can turn a crash chain into session theft or broader app compromise.

Why not higher?

Because this bug assumes too much. An unauthenticated remote attacker cannot just throw a link at your fleet and win with CVE-2026-10934 alone; they need a separate renderer compromise first, then a reliable second-stage exploit path, then user interaction. That's multiple compounding friction points, and each one narrows the real exposed population.

Why not lower?

Because post-renderer Chrome exploitation is still operationally valuable. If an attacker already has renderer control, stepping into a more privileged browser context on a widely deployed mobile browser can materially increase data access and persistence inside the app. That keeps it above backlog-only hygiene.

05 · Compensating Control

What to do — in priority order.

  1. Enforce Chrome auto-update through MDM — Make sure managed Android devices are actually pulling 149.0.7827.53+ from Google Play and not sitting on deferred app updates. For a MEDIUM verdict there is no mitigation SLA — go straight to the 365-day remediation window, but this control reduces long-tail exposure while rollout completes.
  2. Prioritize high-risk Android cohorts — Move shared-admin, executive, and research users to the front of the app-update queue because they are the most plausible targets for browser exploit chains. Again, no mitigation SLA applies at MEDIUM, so use this as risk-based scoping while you complete remediation inside the 365-day window.
  3. Reduce untrusted mobile browsing where feasible — Use MDM/browser policy to steer users away from unmanaged sideloaded browsers and high-risk browsing patterns on managed devices. This does not replace patching, but it reduces the chances of the attacker ever landing the required first-stage renderer compromise.
  4. Watch for Chrome crash outliers on Android — Correlate repeated Chrome crashes, forced restarts, and suspicious account/session reuse from mobile devices with version data from MDM. That will not catch exploitation cleanly, but it is one of the few practical interim signals for a browser memory-corruption chain.
What doesn't work
  • A network perimeter scanner does not help much here because Chrome on Android is not an externally exposed service with a port to probe.
  • WAFs and secure web gateways do not reliably stop a renderer-to-browser local exploit chain once the user is already running vulnerable client code.
  • Password rotation alone is not a meaningful control for the vulnerability itself; it only helps after compromise and does nothing to remove the exploit path.
06 · Verification

Crowdsourced verification payload.

Run this on an auditor workstation with adb installed and a managed Android device connected over USB or authorized wireless debugging. Invoke it as ./check_chrome_android_cve_2026_10934.sh or ./check_chrome_android_cve_2026_10934.sh <serial>; it needs no root on the device, only adb shell access to read package metadata.

noisgate-verify.sh
BASHREAD-ONLYSAFE
#!/usr/bin/env bash
# check_chrome_android_cve_2026_10934.sh
# Verifies whether Google Chrome on Android is below 149.0.7827.53.
# Output: VULNERABLE / PATCHED / UNKNOWN
# Exit codes: 0=PATCHED, 1=VULNERABLE, 2=UNKNOWN

set -u

TARGET_SERIAL="${1:-}"
ADB_BASE=(adb)
if [[ -n "$TARGET_SERIAL" ]]; then
  ADB_BASE+=( -s "$TARGET_SERIAL" )
fi

pkg="com.android.chrome"
fixed_version="149.0.7827.53"

have_cmd() {
  command -v "$1" >/dev/null 2>&1
}

version_lt() {
  # returns 0 if $1 < $2
  local a="$1" b="$2"
  local first
  first=$(printf '%s\n%s\n' "$a" "$b" | sort -V | head -n1)
  [[ "$a" != "$b" && "$first" == "$a" ]]
}

if ! have_cmd adb; then
  echo "UNKNOWN: adb not found in PATH"
  exit 2
fi

if ! "${ADB_BASE[@]}" get-state >/dev/null 2>&1; then
  echo "UNKNOWN: no authorized adb device available"
  exit 2
fi

# Try dumpsys first; fall back to cmd package.
version=$(
  "${ADB_BASE[@]}" shell dumpsys package "$pkg" 2>/dev/null | awk -F= '/versionName=/{print $2; exit}' | tr -d '\r'
)

if [[ -z "$version" ]]; then
  version=$(
    "${ADB_BASE[@]}" shell cmd package dump "$pkg" 2>/dev/null | awk -F= '/versionName=/{print $2; exit}' | tr -d '\r'
  )
fi

if [[ -z "$version" ]]; then
  echo "UNKNOWN: unable to read Chrome version for package $pkg"
  exit 2
fi

# Normalize possible suffixes like -beta or whitespace.
version=$(echo "$version" | awk '{print $1}')

if version_lt "$version" "$fixed_version"; then
  echo "VULNERABLE: $pkg version $version is below fixed version $fixed_version"
  exit 1
else
  echo "PATCHED: $pkg version $version is at or above fixed version $fixed_version"
  exit 0
fi
07 · Bottom Line

If you remember one thing.

TL;DR
Monday morning, do not treat this like a Chrome zero-day fire drill. Use MDM to identify Android devices with Chrome below 149.0.7827.53, validate that Play-based updates are flowing, and front-load higher-risk user groups first. Because this is a MEDIUM reassessment with no KEV or active exploitation evidence, there is noisgate mitigation SLA — go straight to the 365-day remediation window; in other words, no separate interim-control deadline is required, but the actual Chrome update should still land within the noisgate remediation SLA of 365 days and preferably much sooner as part of routine mobile app hygiene.

Sources

  1. Chrome Releases: Chrome for Android Update (May 28, 2026)
  2. Chrome Releases: Early Stable Update for Desktop (May 29, 2026)
  3. Chromium source: Android Autofill README
  4. Google Play: Google Chrome on Android
  5. CISA Known Exploited Vulnerabilities Catalog
  6. FIRST EPSS API documentation
  7. FIRST EPSS data and statistics
  8. Google Chrome update guidance
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.