Chrome · CustomTabs
CVE-2026-11247
Logic Error in CustomTabs
Overview
Low
Severity
—
CVSS
No
Exploited ITW
Fixed
Fix Status
Files Changed
chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
Patch
From ecf5d233be9f64edc8005a75e9c5945bb8e13689 Mon Sep 17 00:00:00 2001 From: Christian Dullweber <[email protected]> Date: Fri, 17 Apr 2026 05:57:39 -0700 Subject: [PATCH] CCT: Disable pre-warming logic for incognito intents A couple of pre-warming methods in CustomTabsConnection are hard-coded to use the regular profile. For incognito intents they have no benefit and actually leak information from the incognito intent to the regular profile so they should be disabled. Bug: 497865734 Change-Id: Ibf370f58a7743c026a31c5a84a08f38413881663 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7772429 Reviewed-by: Jinsuk Kim <[email protected]> Commit-Queue: Christian Dullweber <[email protected]> Commit-Queue: Jinsuk Kim <[email protected]> Auto-Submit: Christian Dullweber <[email protected]> Cr-Commit-Position: refs/heads/main@{#1616484} --- diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java index 9b0201fc..380dd12 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java @@ -1179,6 +1179,11 @@ return; } + if (IntentHandler.hasAnyIncognitoExtra(intent.getExtras())) { + // The prewarming logic below is hard-coded to the regular profile. + return; + } + // Conditions: // - There is a valid redirect endpoint. // - The URL's origin is first party with respect to the app. @@ -1256,6 +1261,12 @@ && !ChromeFeatureList.isEnabled(ChromeFeatureList.CCT_MULTIPLE_PARALLEL_REQUESTS)) { return ParallelRequestStatus.NO_REQUEST; } + + if (IntentHandler.hasAnyIncognitoExtra(intent.getExtras())) { + // The prewarming logic below is hard-coded to the regular profile. + return ParallelRequestStatus.NO_REQUEST; + } + String packageName = mClientManager.getClientPackageNameForSession(session); if (session == null || packageName == null @@ -1329,6 +1340,11 @@ if (!mClientManager.getAllowResourcePrefetchForSession(session)) return 0; + if (IntentHandler.hasAnyIncognitoExtra(intent.getExtras())) { + // The prewarming logic below is hard-coded to the regular profile. + return 0; + } + List<Uri> resourceList = intent.getParcelableArrayListExtra(RESOURCE_PREFETCH_URL_LIST_KEY); Uri referrer = intent.getParcelableExtra(PARALLEL_REQUEST_REFERRER_KEY); int policy =
Loading diff…
Original Bug Report
The reporter's bug is still restricted on the tracker. Chrome de-restricts security bugs ~30–90 days after the fix ships; a later run will backfill it here.
References
On This Page