Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Issue 2042483002: Fix web_accesible_resources enforcement for Site Isolation. (Closed)

Created:
4 years, 6 months ago by nasko
Modified:
4 years, 6 months ago
Reviewers:
Devlin
CC:
chromium-reviews, extensions-reviews_chromium.org, creis+watch_chromium.org, nasko+codewatch_chromium.org, jam, darin-cc_chromium.org, loading-reviews_chromium.org, chromium-apps-reviews_chromium.org, site-isolation-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix web_accesible_resources enforcement for Site Isolation. When --isolate-extensions or --site-per-process modes are enabled, all extensions frames run in extension processes and are not mixed in regular web renderers. This causes a problem with security checks for web_accessible_resources, which allow all navigations to extension pages when they are performed in extension process. This is no longer true and this patch addresses this by using a NavigationThrottle to perform the proper checks on the UI thread (also PlzNavigate compatible). BUG=616488 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/b9164c43d2900c967f4fdb5ebfc4812f7e914116 Cr-Commit-Position: refs/heads/master@{#398189}

Patch Set 1 #

Total comments: 17

Patch Set 2 : Fix test expectations. #

Patch Set 3 : Fixes for code review, removed filter exceptions. #

Total comments: 2

Patch Set 4 : Remove stale comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+160 lines, -21 lines) Patch
M chrome/browser/chrome_content_browser_client.cc View 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/browser/extensions/extension_protocols_unittest.cc View 1 2 3 chunks +5 lines, -5 lines 0 comments Download
M chrome/test/data/extensions/platform_apps/web_view/shim/main.js View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/frame_host/navigation_handle_impl.cc View 4 chunks +5 lines, -4 lines 0 comments Download
M content/browser/loader/navigation_resource_throttle.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M content/public/browser/navigation_throttle.h View 1 chunk +6 lines, -0 lines 0 comments Download
A extensions/browser/extension_navigation_throttle.h View 1 2 1 chunk +36 lines, -0 lines 0 comments Download
A extensions/browser/extension_navigation_throttle.cc View 1 2 1 chunk +93 lines, -0 lines 0 comments Download
M extensions/browser/extension_protocols.cc View 1 2 3 1 chunk +2 lines, -3 lines 0 comments Download
M extensions/extensions.gypi View 1 chunk +2 lines, -0 lines 0 comments Download
M extensions/test/data/web_view/apitest/main.js View 1 1 chunk +1 line, -1 line 0 comments Download
M testing/buildbot/filters/isolate-extensions.browser_tests.filter View 1 2 1 chunk +0 lines, -3 lines 0 comments Download
M testing/buildbot/filters/site-per-process.browser_tests.filter View 1 2 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 15 (6 generated)
nasko
Hey Devlin, Can you review this CL for me? It enforces web_accessible_resources through a NavigationHandle, ...
4 years, 6 months ago (2016-06-03 21:37:03 UTC) #3
Devlin
Looks like there's some test failures, but nothing too bad. Also, the NavigationThrottle makes this ...
4 years, 6 months ago (2016-06-03 22:22:46 UTC) #4
nasko
https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.cc File extensions/browser/extension_navigation_throttle.cc (right): https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.cc#newcode46 extensions/browser/extension_navigation_throttle.cc:46: navigation_handle()->GetWebContents()->GetAllFrames(); On 2016/06/03 22:22:45, Devlin wrote: > nit: I'd ...
4 years, 6 months ago (2016-06-06 17:40:44 UTC) #6
nasko
On 2016/06/03 22:22:46, Devlin wrote: > Looks like there's some test failures, but nothing too ...
4 years, 6 months ago (2016-06-06 17:45:40 UTC) #7
Devlin
lgtm https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.h File extensions/browser/extension_navigation_throttle.h (right): https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.h#newcode29 extensions/browser/extension_navigation_throttle.h:29: ThrottleCheckResult WillStartRequest() override; On 2016/06/06 17:40:44, nasko (slow) ...
4 years, 6 months ago (2016-06-06 22:17:22 UTC) #8
nasko
https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.h File extensions/browser/extension_navigation_throttle.h (right): https://codereview.chromium.org/2042483002/diff/1/extensions/browser/extension_navigation_throttle.h#newcode29 extensions/browser/extension_navigation_throttle.h:29: ThrottleCheckResult WillStartRequest() override; On 2016/06/06 22:17:22, Devlin wrote: > ...
4 years, 6 months ago (2016-06-06 23:23:03 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2042483002/80001
4 years, 6 months ago (2016-06-06 23:48:23 UTC) #12
commit-bot: I haz the power
Committed patchset #4 (id:80001)
4 years, 6 months ago (2016-06-07 01:22:05 UTC) #13
commit-bot: I haz the power
4 years, 6 months ago (2016-06-07 01:25:14 UTC) #15
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/b9164c43d2900c967f4fdb5ebfc4812f7e914116
Cr-Commit-Position: refs/heads/master@{#398189}

Powered by Google App Engine
This is Rietveld 408576698