Chromium Code Reviews
Help | Chromium Project | Gerrit Changes | Sign in
(44)

Issue 1180923003: Add window access checks for Suborigins (Closed)

Created:
4 years, 10 months ago by jww
Modified:
4 years, 10 months ago
CC:
aaj, arv+blink, blink-reviews, blink-reviews-bindings_chromium.org, blink-reviews-dom_chromium.org, dglazkov+blink, eae+blinkwatch, rwlbuis, sof, vivekg_samsung, vivekg
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Add window access checks for Suborigins As a first enforcement step, this adds access control checks for windows and JavaScript objects for Suborigins. In short, two origins can only access each other's objects if they are in the same scheme, host, and port (as always), but also the same Suborigin. This also sets up the infrastructure to later start working checks for requests as well. This does not add any CORS check dependencies on Suborigins yet. R=jochen@chromium.org BUG=336894 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=197195

Patch Set 1 #

Total comments: 2

Patch Set 2 : Add to checkAccess* and checkRequest* comments. #

Patch Set 3 : Rebase on ToT #

Patch Set 4 : Unit test fix #

Patch Set 5 : Fix tests on Windows #

Unified diffs Side-by-side diffs Delta from patch set Stats (+382 lines, -297 lines) Patch
D LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror.php View 1 chunk +0 lines, -28 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror-expected.txt View 1 chunk +0 lines, -3 lines 0 comments Download
A + LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror-no-cors.php View 2 chunks +4 lines, -1 line 0 comments Download
A + LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror-no-cors-expected.txt View 1 chunk +5 lines, -5 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror-redirected.php View 1 chunk +0 lines, -26 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-script-window-onerror-redirected-expected.txt View 1 chunk +0 lines, -3 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-window-event-exception-expected.txt View 1 chunk +2 lines, -2 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/crossorigin/suborigin-cross-origin-window-open-exception-expected.txt View 1 chunk +2 lines, -2 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/multiple-suborigins-disallowed.html View 1 chunk +0 lines, -23 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/multiple-suborigins-disallowed.php View 1 chunk +12 lines, -0 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/multiple-suborigins-disallowed-expected.txt View 1 chunk +1 line, -3 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/resources/child-changes-document-domain.php View 1 chunk +8 lines, -5 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/resources/childsuborigin.php View 1 chunk +0 lines, -12 lines 0 comments Download
A + LayoutTests/http/tests/security/suborigins/resources/cors-script-suborigin.php View 1 chunk +2 lines, -2 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/resources/iframe-reaches-into-parent.php View 1 chunk +21 lines, -0 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/resources/multiple-suborigins.php View 1 chunk +0 lines, -8 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/resources/post-document-to-parent.php View 1 chunk +11 lines, -0 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/resources/post-to-parent.php View 1 chunk +18 lines, -0 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/resources/reach-into-iframe.php View 1 chunk +28 lines, -0 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-allow-in-http-header.php View 1 chunk +0 lines, -26 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-allow-in-http-header-expected.txt View 1 chunk +0 lines, -5 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/suborigin-allow-same-suborigin-access.html View 1 chunk +48 lines, -0 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/suborigin-blocked-different-suborigins.html View 1 chunk +15 lines, -0 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-blocked-different-suborigins.php View 1 chunk +0 lines, -26 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-blocked-different-suborigins-expected.txt View 1 chunk +0 lines, -5 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-blocked-not-in-suborigin-to-suborigin.php View 1 chunk +4 lines, -12 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-blocked-not-in-suborigin-to-suborigin-expected.txt View 1 chunk +0 lines, -5 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-change-document-domain.html View 1 chunk +2 lines, -2 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-change-document-domain-expected.txt View 1 chunk +0 lines, -6 lines 0 comments Download
A + LayoutTests/http/tests/security/suborigins/suborigin-document-suborigin.html View 2 chunks +5 lines, -5 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-document-suborigin.php View 1 chunk +0 lines, -15 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-document-suborigin-expected.txt View 1 chunk +0 lines, -5 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-in-meta-disallowed.html View 1 chunk +16 lines, -6 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/suborigin-in-meta-disallowed-console-warning.html View 1 chunk +10 lines, -0 lines 0 comments Download
A LayoutTests/http/tests/security/suborigins/suborigin-in-meta-disallowed-console-warning-expected.txt View 1 chunk +2 lines, -0 lines 0 comments Download
D LayoutTests/http/tests/security/suborigins/suborigin-in-meta-disallowed-expected.txt View 1 chunk +0 lines, -5 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-invalid-names.html View 1 2 3 4 2 chunks +15 lines, -16 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-invalid-names-expected.txt View 1 chunk +13 lines, -5 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-valid-names.html View 1 2 3 4 2 chunks +16 lines, -17 lines 0 comments Download
M LayoutTests/http/tests/security/suborigins/suborigin-valid-names-expected.txt View 1 chunk +5 lines, -4 lines 0 comments Download
M Source/bindings/core/v8/BindingSecurity.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/dom/ExecutionContext.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/frame/DOMWindow.cpp View 3 chunks +3 lines, -3 lines 0 comments Download
M Source/core/frame/LocalDOMWindow.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/platform/weborigin/SecurityOrigin.h View 1 3 chunks +17 lines, -0 lines 0 comments Download
M Source/platform/weborigin/SecurityOrigin.cpp View 3 chunks +21 lines, -0 lines 0 comments Download
M Source/platform/weborigin/SecurityOriginHash.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/platform/weborigin/SecurityOriginTest.cpp View 1 2 3 1 chunk +69 lines, -0 lines 0 comments Download

Messages

Total messages: 29 (13 generated)
jww
Hey Jochen. This is a first enforcement CL that adds enforcement for Window objects between ...
4 years, 10 months ago (2015-06-11 23:03:08 UTC) #1
jochen (gone - plz use gerrit)
I'd expect that you'd also update WindowProxy::setSecurityToken - v8 uses the security token of two ...
4 years, 10 months ago (2015-06-12 12:50:24 UTC) #2
jochen (gone - plz use gerrit)
overall, the approach looks good
4 years, 10 months ago (2015-06-12 12:50:38 UTC) #4
jww
On 2015/06/12 12:50:24, jochen wrote: > I'd expect that you'd also update WindowProxy::setSecurityToken - v8 ...
4 years, 10 months ago (2015-06-12 15:39:59 UTC) #5
jww
I tried to improve the comment. Let me know what you all think, and if ...
4 years, 10 months ago (2015-06-12 15:40:44 UTC) #6
jochen (gone - plz use gerrit)
lgtm
4 years, 10 months ago (2015-06-15 14:47:00 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1180923003/20001
4 years, 10 months ago (2015-06-15 16:32:24 UTC) #9
commit-bot: I haz the power
Try jobs failed on following builders: mac_blink_compile_dbg on tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/mac_blink_compile_dbg/builds/47525) mac_blink_rel on tryserver.blink (JOB_FAILED, ...
4 years, 10 months ago (2015-06-15 16:36:04 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1180923003/40001
4 years, 10 months ago (2015-06-15 16:41:43 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: mac_blink_rel on tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/mac_blink_rel/builds/58949)
4 years, 10 months ago (2015-06-15 17:16:49 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1180923003/60001
4 years, 10 months ago (2015-06-15 17:43:59 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: win_blink_rel on tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/win_blink_rel/builds/66671)
4 years, 10 months ago (2015-06-15 20:42:42 UTC) #21
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1180923003/60001
4 years, 10 months ago (2015-06-15 21:05:17 UTC) #23
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_blink_rel on tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/win_blink_rel/builds/66694)
4 years, 10 months ago (2015-06-15 23:01:29 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1180923003/80001
4 years, 10 months ago (2015-06-16 20:06:16 UTC) #28
commit-bot: I haz the power
4 years, 10 months ago (2015-06-16 21:08:54 UTC) #29
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=197195

Powered by Google App Engine
This is Rietveld 408576698