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

Issue 1256833004: Move Service Worker %2f validation logic from browser into Blink (3) (Closed)

Created:
5 years, 4 months ago by jeremyarcher
Modified:
5 years, 4 months ago
Reviewers:
falken, nhiroki
CC:
chromium-reviews, michaeln, jsbell+serviceworker_chromium.org, tzik, serviceworker-reviews, jam, nhiroki, darin-cc_chromium.org, horo+watch_chromium.org, kinuko+serviceworker, kinuko+watch, blink-worker-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Move Service Worker %2f validation logic from browser into Blink (3) This patch ensures that a compromised renderer is still unable to register Service Workers with an invalid scope or scriptURL (see bug for spec details). 1. (Chromium) https://codereview.chromium.org/1259213002 2. (Blink) https://codereview.chromium.org/1260003003/ 3. (Chromium) This CL. BUG=513622 R=nhiroki, falken Committed: https://crrev.com/950451079244693e16f3326eb8bee9263d8276d1 Cr-Commit-Position: refs/heads/master@{#342601}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Switch back to previous validation routine for %2f in scopes. #

Total comments: 1

Patch Set 3 : Fix merge conflicts with earlier patch. #

Patch Set 4 : Add tests for dangerous %5c and %2f in SW URLs. #

Total comments: 3

Patch Set 5 : Fix copypasta in testing identifier. #

Total comments: 2

Patch Set 6 : Clean up test for style. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+33 lines, -4 lines) Patch
M content/browser/service_worker/service_worker_dispatcher_host.cc View 1 2 3 1 chunk +1 line, -4 lines 0 comments Download
M content/browser/service_worker/service_worker_dispatcher_host_unittest.cc View 1 2 3 4 5 1 chunk +32 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (6 generated)
jeremyarcher
This might be silly, but for some reason the validation (..., std::string *error) functions feel ...
5 years, 4 months ago (2015-07-28 05:01:44 UTC) #1
nhiroki
https://codereview.chromium.org/1256833004/diff/1/content/browser/service_worker/service_worker_dispatcher_host.cc File content/browser/service_worker/service_worker_dispatcher_host.cc (right): https://codereview.chromium.org/1256833004/diff/1/content/browser/service_worker/service_worker_dispatcher_host.cc#newcode355 content/browser/service_worker/service_worker_dispatcher_host.cc:355: ContainsDisallowedCharacter(script_url)) { I'd prefer to reuse ServiceWorkerUtils::ContainsDisallowedCharacter because it's ...
5 years, 4 months ago (2015-07-28 05:32:13 UTC) #2
jeremyarcher
On 2015/07/28 05:32:13, nhiroki wrote: > https://codereview.chromium.org/1256833004/diff/1/content/browser/service_worker/service_worker_dispatcher_host.cc > File content/browser/service_worker/service_worker_dispatcher_host.cc (right): > > https://codereview.chromium.org/1256833004/diff/1/content/browser/service_worker/service_worker_dispatcher_host.cc#newcode355 > ...
5 years, 4 months ago (2015-07-28 07:09:50 UTC) #3
nhiroki
lgtm
5 years, 4 months ago (2015-07-28 08:20:36 UTC) #4
nhiroki
Let me add one more comment... https://codereview.chromium.org/1256833004/diff/20001/content/browser/service_worker/service_worker_dispatcher_host.cc File content/browser/service_worker/service_worker_dispatcher_host.cc (right): https://codereview.chromium.org/1256833004/diff/20001/content/browser/service_worker/service_worker_dispatcher_host.cc#newcode337 content/browser/service_worker/service_worker_dispatcher_host.cc:337: bad_message::ReceivedBadMessage(this, bad_message::SWDH_REGISTER_CANNOT); Can ...
5 years, 4 months ago (2015-07-31 07:39:36 UTC) #5
jeremyarcher
On 2015/07/31 07:39:36, nhiroki wrote: > Let me add one more comment... > > https://codereview.chromium.org/1256833004/diff/20001/content/browser/service_worker/service_worker_dispatcher_host.cc ...
5 years, 4 months ago (2015-08-05 03:56:04 UTC) #8
falken
https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc File content/browser/service_worker/service_worker_dispatcher_host_unittest.cc (right): https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc#newcode370 content/browser/service_worker/service_worker_dispatcher_host_unittest.cc:370: TEST_F(ServiceWorkerDispatcherHostTest, RegisterWithBadCharactersShouldFail) { These test names look reversed.
5 years, 4 months ago (2015-08-05 06:55:35 UTC) #9
jeremyarcher
https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc File content/browser/service_worker/service_worker_dispatcher_host_unittest.cc (right): https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc#newcode370 content/browser/service_worker/service_worker_dispatcher_host_unittest.cc:370: TEST_F(ServiceWorkerDispatcherHostTest, RegisterWithBadCharactersShouldFail) { On 2015/08/05 06:55:35, falken wrote: > ...
5 years, 4 months ago (2015-08-10 03:29:40 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1256833004/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1256833004/100001
5 years, 4 months ago (2015-08-10 06:18:43 UTC) #13
nhiroki
https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc File content/browser/service_worker/service_worker_dispatcher_host_unittest.cc (right): https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc#newcode370 content/browser/service_worker/service_worker_dispatcher_host_unittest.cc:370: TEST_F(ServiceWorkerDispatcherHostTest, RegisterWithBadCharactersShouldFail) { On 2015/08/10 03:29:40, jeremyarcher wrote: > ...
5 years, 4 months ago (2015-08-10 08:03:17 UTC) #15
jeremyarcher
On 2015/08/10 08:03:17, nhiroki wrote: > https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc > File content/browser/service_worker/service_worker_dispatcher_host_unittest.cc > (right): > > https://codereview.chromium.org/1256833004/diff/100001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc#newcode370 ...
5 years, 4 months ago (2015-08-10 08:06:15 UTC) #16
nhiroki
Now I can see the patchset. Thanks :) https://codereview.chromium.org/1256833004/diff/120001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc File content/browser/service_worker/service_worker_dispatcher_host_unittest.cc (right): https://codereview.chromium.org/1256833004/diff/120001/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc#newcode337 content/browser/service_worker/service_worker_dispatcher_host_unittest.cc:337: TEST_F(ServiceWorkerDispatcherHostTest, ...
5 years, 4 months ago (2015-08-10 08:15:51 UTC) #17
jeremyarcher
On 2015/08/10 08:15:51, nhiroki wrote: > Now I can see the patchset. Thanks :) > ...
5 years, 4 months ago (2015-08-10 08:22:59 UTC) #18
nhiroki
lgtm
5 years, 4 months ago (2015-08-10 08:30:55 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1256833004/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1256833004/140001
5 years, 4 months ago (2015-08-10 08:32:08 UTC) #21
commit-bot: I haz the power
Committed patchset #6 (id:140001)
5 years, 4 months ago (2015-08-10 10:10:01 UTC) #22
commit-bot: I haz the power
5 years, 4 months ago (2015-08-10 10:10:55 UTC) #23
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/950451079244693e16f3326eb8bee9263d8276d1
Cr-Commit-Position: refs/heads/master@{#342601}

Powered by Google App Engine
This is Rietveld 408576698