This is a second lock behind a door the attacker already had to break open first
CVE-2026-11263 is an *insufficient policy enforcement* flaw in WebAuthentication in Google Chrome on Android affecting versions prior to 149.0.7827.53. The supplied description matters more than the vendor CVSS here: exploitation requires a remote attacker who has already compromised the renderer process and then uses a crafted HTML page to leak cross-origin data. In plain English, this is not the bug that gets an attacker into the browser; it is the bug that helps after they already landed code execution in the renderer.
The vendor's MEDIUM 6.5 overstates operational urgency for enterprise patch triage. A browser bug with PR:N/UI:R looks middling on paper, but the real attack chain has a huge hidden prerequisite: separate renderer compromise first. That turns this into a post-initial-browser-compromise, Android-only, confidentiality-only issue with narrow standalone value, so the real-world priority drops hard.
4 steps from start to impact.
Lure the user to attacker-controlled web content
- Victim uses Chrome on Android
- Victim browses to attacker-controlled content
- Chrome version is below 149.0.7827.53
- Requires user interaction
- Email/web filtering and Safe Browsing can reduce click-through
- Managed Android fleets may auto-update Chrome before the lure lands
Gain renderer-process compromise first
- Attacker has a distinct renderer compromise primitive
- Exploit mitigations in Chrome and Android are bypassed well enough to get renderer control
- This is the decisive friction point: it assumes a prior exploit stage
- Modern browser exploit mitigations, sandboxing, and site isolation raise cost materially
- No public evidence in the reviewed sources that this CVE is being used in the wild
Abuse WebAuthentication policy enforcement on Android
- Renderer already compromised
- Victim remains on vulnerable Chrome for Android
- The target browsing context exposes data worth stealing cross-origin
- Android-only scope limits affected population compared with all-platform Chrome bugs
- WebAuthentication-specific trigger path narrows reachable scenarios
- Impact is constrained to confidentiality
Exfiltrate leaked cross-origin data
- Victim has interesting authenticated web state or sensitive page data in scope
- Attacker can exfiltrate the leaked material before the browser session ends
- No integrity or availability impact stated
- Blast radius is per-user, per-session rather than fleet-wide infrastructure compromise
- Enterprise DLP/proxy controls may catch obvious exfil paths
The supporting signals.
| In-the-wild status | No public exploitation evidence found in the reviewed authoritative sources; not KEV-listed. |
|---|---|
| Public PoC availability | No public PoC located in the reviewed primary sources or obvious GitHub hits. That fits the bug class: it is a poor standalone PoC target because it needs prior renderer compromise. |
| EPSS | 0.00041 from the supplied intel, which is extremely low and directionally matches the heavy prerequisite chain. |
| KEV status | No. CISA's KEV catalog does not list this CVE as of the review date. |
| CVSS vector reality check | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N captures a web-delivered, user-driven data leak, but it does not express the hidden prerequisite that the attacker already compromised the renderer. |
| Affected versions | Google Chrome on Android prior to 149.0.7827.53. |
| Fixed versions | 149.0.7827.53 or later per the supplied intel and downstream advisories. Android Chrome inherits desktop-era security fixes in nearby release trains unless otherwise noted by Google. |
| Exposure / scanability | Not meaningfully internet-scanable via Shodan/Censys/FOFA/GreyNoise because this is a client-side mobile browser issue, not a server listening on a routable socket. Fleet exposure is instead driven by device inventory and app version management. |
| Disclosure date | 2026-06-05. |
| Researcher / reporter | Not publicly credited in the reviewed release material. Google did not expose researcher attribution in the sources reviewed. |
noisgate verdict.
The single biggest reason this lands in LOW is that the attacker must already have renderer compromise before this CVE does anything useful. That prerequisite converts a superficially reachable browser issue into a post-exploitation boundary weakening bug with Android-only scope and confidentiality-only impact.
Why this verdict
- Massive prerequisite hidden by CVSS: the description requires a *compromised renderer process* first, which implies a separate successful browser exploit stage before this CVE matters.
- Reachable population is narrower than it looks: this is Chrome on Android, not all Chrome platforms, and it depends on a WebAuthentication-specific path after compromise.
- Blast radius is limited: stated impact is cross-origin data leakage only; there is no direct RCE, no stated sandbox escape, and no availability impact.
Why not higher?
If this were a one-bug chain from web content to account/session compromise, or if there were active exploitation/KEV evidence, this would climb fast. But as documented, it is a follow-on primitive after renderer compromise, which is exactly the sort of compounding friction that should pull severity down.
Why not lower?
It is still a real security boundary failure in a massively deployed client, and once the prerequisite is met it can expose sensitive cross-origin data. That keeps it above IGNORE: if you already worry about mobile browser exploit chains for high-risk users, this bug is part of that story.
What to do — in priority order.
- Enforce Chrome auto-update on managed Android — Use EMM/MDM policy and Play managed app settings to keep
com.android.chromecurrent. For a LOW verdict there is no mitigation SLA; treat this as backlog hygiene and verify your mobile app update policy during the normal remediation cycle. - Report Chrome versions from device inventory — Pull package version telemetry from your UEM/MDM or via
adbfor sampled devices so you can identify stragglers below149.0.7827.53. For LOW, do this as part of routine fleet hygiene rather than as an emergency exception. - Harden high-risk browsing personas — For executives, admins, and targeted users, consider remote/browser isolation or stricter mobile browsing profiles because this CVE only becomes useful inside a broader browser exploit chain. That is where the defensive value sits.
- Reduce unmanaged Android browser variance — Standardize on managed Chrome channels and block stale sideloaded browsers where policy allows. The main operational risk is version drift, not internet exposure.
- A WAF does not help; the vulnerable component is the user's local mobile browser, not your server.
- Perimeter scanning will not show meaningful exposure because there is no enterprise service to probe for this client-side bug.
- A generic network IDS rule is weak coverage here; the key exploitation stage is prior renderer compromise inside the browser process.
Crowdsourced verification payload.
Run this on an auditor workstation with adb installed and a USB- or network-connected Android device. Invoke it as bash check_chrome_android_cve_2026_11263.sh <serial> or bash check_chrome_android_cve_2026_11263.sh for the default device; it needs ADB access only, no root.
#!/usr/bin/env bash
# check_chrome_android_cve_2026_11263.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
PKG="com.android.chrome"
FIXED="149.0.7827.53"
SERIAL="${1:-}"
ADB=(adb)
if [[ -n "$SERIAL" ]]; then
ADB+=( -s "$SERIAL" )
fi
have_cmd() {
command -v "$1" >/dev/null 2>&1
}
ver_lt() {
# returns 0 if $1 < $2
[[ "$(printf '%s\n%s\n' "$1" "$2" | sort -V | head -n1)" != "$2" ]]
}
if ! have_cmd adb; then
echo "UNKNOWN: adb not found in PATH"
exit 2
fi
if ! "${ADB[@]}" get-state >/dev/null 2>&1; then
echo "UNKNOWN: no reachable Android device via adb"
exit 2
fi
VERSION_RAW=$("${ADB[@]}" shell dumpsys package "$PKG" 2>/dev/null | tr -d '\r' | awk -F= '/versionName=/{print $2; exit}')
if [[ -z "$VERSION_RAW" ]]; then
VERSION_RAW=$("${ADB[@]}" shell pm list packages -f "$PKG" 2>/dev/null | tr -d '\r')
if [[ -z "$VERSION_RAW" ]]; then
echo "UNKNOWN: package $PKG not found"
exit 2
fi
echo "UNKNOWN: package found but versionName unavailable"
exit 2
fi
VERSION=$(echo "$VERSION_RAW" | sed 's/[^0-9.].*$//')
if [[ -z "$VERSION" ]]; then
echo "UNKNOWN: could not parse Chrome version from '$VERSION_RAW'"
exit 2
fi
if ver_lt "$VERSION" "$FIXED"; then
echo "VULNERABLE: Chrome Android version $VERSION is below fixed version $FIXED"
exit 1
else
echo "PATCHED: Chrome Android version $VERSION is at or above fixed version $FIXED"
exit 0
fi
If you remember one thing.
Sources
- Chrome for Android Update (149.0.7827.48 early stable)
- Chrome Early Stable Update for Desktop (149.0.7827.53/.54)
- Google Chrome on Google Play
- Update Google Chrome on Android
- How to update apps on Android
- FIRST EPSS API documentation
- CISA Known Exploited Vulnerabilities Catalog
- GovCERT.HK alert for Chrome 149 vulnerabilities
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.