Chrome · Network › Internals>Network
CVE-2026-113342
Memory Corruption in Network (Internals>Network)
Overview
Medium
Severity
—
CVSS
No
Exploited ITW
Fixed
Fix Status
Changed Functions
| Function | Change | Notes |
|---|---|---|
ifchrome/browser/resources/inspect/inspect.js |
modified |
Files Changed
chrome/browser/ui/webui/inspect/inspect_ui.ccchrome/browser/ui/webui/chrome_web_ui_controller_factory.ccchrome/browser/resources/inspect/inspect.jschrome/browser/ui/webui/inspect/BUILD.gn
Patch
From e34d8eaec5fa6c2d528275d6e225a4a24ab84e88 Mon Sep 17 00:00:00 2001 From: Maks Orlovich <[email protected]> Date: Wed, 16 Sep 2026 18:07:11 -0700 Subject: [PATCH] Drop network access permission from chrome://inspect By using chrome://favicon2/ Bug: 41382586, 562024413 Change-Id: I2322c0bf3a1389211c0ff355569f226063db8da1 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8407331 Reviewed-by: John Lee <[email protected]> Commit-Queue: Maks Orlovich <[email protected]> Reviewed-by: Yang Guo <[email protected]> Cr-Commit-Position: refs/heads/main@{#1699390} --- diff --git a/chrome/browser/resources/inspect/inspect.js b/chrome/browser/resources/inspect/inspect.js index 4e3545d..533ad677 100644 --- a/chrome/browser/resources/inspect/inspect.js +++ b/chrome/browser/resources/inspect/inspect.js @@ -600,7 +600,9 @@ function addFavicon(row, data) { const favicon = document.createElement('img'); if (data['faviconUrl']) { - favicon.src = data['faviconUrl']; + const internalURL = new URL('chrome://favicon2/'); + internalURL.searchParams.set('iconUrl', data['faviconUrl']); + favicon.src = internalURL; } const propertiesBox = row.querySelector('.properties-box'); propertiesBox.insertBefore(favicon, propertiesBox.firstChild); diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc index 08682b2..cb75415c 100644 --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc @@ -345,8 +345,6 @@ return // https://crbug.com/40571286 origin.host() == chrome::kChromeUISyncConfirmationHost || - // https://crbug.com/41382586 - origin.host() == chrome::kChromeUIInspectHost || // https://crbug.com/40583261 origin.host() == chrome::kChromeUIDownloadsHost || // https://crbug.com/376417346 diff --git a/chrome/browser/ui/webui/inspect/inspect_ui.cc b/chrome/browser/ui/webui/inspect/inspect_ui.cc index 57a00b8..9202f39f 100644 --- a/chrome/browser/ui/webui/inspect/inspect_ui.cc +++ b/chrome/browser/ui/webui/inspect/inspect_ui.cc @@ -28,12 +28,14 @@ #include "chrome/browser/ui/browser_window/public/browser_window_interface.h" #include "chrome/browser/ui/navigator/browser_navigator_params.h" #include "chrome/browser/ui/singleton_tabs.h" +#include "chrome/browser/ui/webui/favicon_source.h" #include "chrome/browser/ui/webui/theme_source.h" #include "chrome/common/chrome_paths.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" #include "chrome/grit/inspect_resources.h" #include "chrome/grit/inspect_resources_map.h" +#include "components/favicon_base/favicon_url_parser.h" #include "components/prefs/pref_service.h" #include "components/ui_devtools/devtools_server.h" #include "components/ui_devtools/switches.h" @@ -589,6 +591,11 @@ // Set up the chrome://theme/ source. content::URLDataSource::Add(profile, std::make_unique<ThemeSource>(profile)); + + // As as well as chrome://favicon2/ + content::URLDataSource::Add( + profile, std::make_unique<FaviconSource>( + profile, chrome::FaviconUrlFormat::kFavicon2)); } InspectUI::~InspectUI() { diff --git a/chrome/browser/ui/webui/inspect/BUILD.gn b/chrome/browser/ui/webui/inspect/BUILD.gn index 4acddb9..95685709 100644 --- a/chrome/browser/ui/webui/inspect/BUILD.gn +++ b/chrome/browser/ui/webui/inspect/BUILD.gn @@ -19,6 +19,7 @@ "//chrome/browser/profiles:profile", "//chrome/browser/resources/inspect:resources", "//chrome/browser/ui:singleton_tabs", + "//chrome/browser/ui/webui:favicon_source", "//chrome/browser/ui/webui:theme_source", "//chrome/common", "//components/prefs",
Loading diff…
Original Bug Report
reported by [email protected]
Favicon requests from chrome://inspect get excessive cookie permissions.
…due to being issued by a page with a chrome:// scheme; so one could trick them into bypassing things like XSS protection of SameSite cookies.
Likely fix: https://chromium-review.googlesource.com/c/chromium/src/+/8407331 … if that’s still the only thing chrome://inspect needs network for.
References
On This Page