New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 779028 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Sep 20
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac , Fuchsia
Pri: 1
Type: Bug-Security



Sign in to add a comment

Security: content security policy bypass by writing to loading Frame's ContentDocument

Reported by ma7h1a...@gmail.com, Oct 27 2017

Issue description

AFFECTED PRODUCTS
--------------------
chrome 62.0.3202.62 stable


DESCRIPTION
--------------------
online demo:
http://xsser.math1as.com/csp2.html

this problem occurs because of when load a http URL , the csp would lost,but as a matter of fact, the document.domain is "about:blank" until finally load it.
i guess this issue is in order to prevent chrome from spoof attack, but caused new problem.

 

Comment 1 by ma7h1a...@gmail.com, Oct 27 2017

again, ff and safari would block it
even chrome 59 would block the request.
ff.jpg
47.3 KB View Download

Comment 2 by ma7h1a...@gmail.com, Oct 27 2017

so here is the patch:
when load a new URL ,for example, google.com
1.deal it as about:blank first, and inhreit the topframe's CSP
2.when finally load google.com , use the new CSP
Components: Blink>SecurityFeature>ContentSecurityPolicy
Status: Untriaged (was: Unconfirmed)
Summary: Security: content security policy bypass by writing to loading Frame's ContentDocument (was: Security: content security policy bypass (with google.com for example))
Repros in Chrome 64

Comment 4 by palmer@chromium.org, Oct 31 2017

Cc: mkwst@chromium.org
Labels: Security_Impact-Stable M-63 OS-Android OS-Chrome OS-Fuchsia OS-Linux OS-Mac OS-Windows Pri-1
Owner: andypaicu@chromium.org
Status: Assigned (was: Untriaged)
I'm not sure what to rate the severity at. Any thoughts, mkwst or andypaicu? Medium?

Comment 5 by ma7h1a...@gmail.com, Oct 31 2017

Re #4
similar with  issue 669086  and  issue 747847 
bypass the following CSP
default-src 'self';script-src 'unsafe-inline';

Comment 6 by palmer@chromium.org, Oct 31 2017

Labels: Security_Severity-Medium
I'm going with Medium, since it breaks a security boundary and enables XSS (but not UXSS directly) if the site has an XSS vulnerability but for CSP. One could possibly argue Low, if you consider the latter condition a mitigating factor, but I think XSS is common enough that I wouldn't consider it much of a mitigation.
Re #6: Maybe I'm missing something, but in order for this to work, doesn't the attacker already have to have the ability to execute script (to drive the subframe)? 

Turning script execution into script execution doesn't seem terribly exciting.
Project Member

Comment 8 by sheriffbot@chromium.org, Nov 10 2017

andypaicu: Uh oh! This issue still open and hasn't been updated in the last 14 days. This is a serious vulnerability, and we want to ensure that there's progress. Could you please leave an update with the current status and any potential blockers?

If you're not the right owner for this issue, could you please remove yourself as soon as possible or help us find the right one?

If the issue is fixed or you can't reproduce it, please close the bug. If you've started working on a fix, please set the status to Started.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 9 by est...@chromium.org, Nov 10 2017

Labels: Hotlist-EnamelAndFriendsFixIt
Project Member

Comment 10 by sheriffbot@chromium.org, Nov 25 2017

andypaicu: Uh oh! This issue still open and hasn't been updated in the last 29 days. This is a serious vulnerability, and we want to ensure that there's progress. Could you please leave an update with the current status and any potential blockers?

If you're not the right owner for this issue, could you please remove yourself as soon as possible or help us find the right one?

If the issue is fixed or you can't reproduce it, please close the bug. If you've started working on a fix, please set the status to Started.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 11 by sheriffbot@chromium.org, Jan 25 2018

Labels: -M-63 M-64
Labels: -Hotlist-EnamelAndFriendsFixIt
Project Member

Comment 13 by sheriffbot@chromium.org, Mar 7 2018

Labels: -M-64 M-65
Project Member

Comment 14 by sheriffbot@chromium.org, Apr 19 2018

Labels: -M-65 M-66
Project Member

Comment 15 by sheriffbot@chromium.org, May 30 2018

Labels: -M-66 M-67
Project Member

Comment 16 by sheriffbot@chromium.org, Jul 25

Labels: -M-67 Target-68 M-68
Project Member

Comment 17 by sheriffbot@chromium.org, Sep 5

Labels: -M-68 M-69 Target-69
I suspect this bug has been fixed in the meantime together with one of the related ones (we did fix a bunch of inheritance issues in CSP) but the original link is not available and there is no exact description of how the bypass worked

Is there any chance to get the original link back up, or does anyone that commented here know enough details to help test this?
Hi , I could confirm this was fixed in august , but I lost the original POC. 
Status: Fixed (was: Assigned)
Thank you, I will marked it as fixed then.
Project Member

Comment 21 by sheriffbot@chromium.org, Sep 20

Labels: -Restrict-View-SecurityTeam Restrict-View-SecurityNotify
Labels: reward-topanel
Labels: -reward-topanel reward-unpaid reward-1000
*** Boilerplate reminders! ***
Please do NOT publicly disclose details until a fix has been released to all our users. Early public disclosure may cancel the provisional reward. Also, please be considerate about disclosure when the bug affects a core library that may be used by other products. Please do NOT share this information with third parties who are not directly involved in fixing the bug. Doing so may cancel the provisional reward. Please be honest if you have already disclosed anything publicly or to third parties. Lastly, we understand that some of you are not interested in money. We offer the option to donate your reward to an eligible charity. If you prefer this option, let us know and we will also match your donation - subject to our discretion. Any rewards that are unclaimed after 12 months will be donated to a charity of our choosing.
*********************************
Thanks for the report ma7h1as.l@ the VRP panel decided to award $1,000. Cheers!
Labels: M-70
Labels: -M-70 Release-to_be_noted

Comment 27 Deleted

re #24 thank you,  could you please change the credit information to "Wenxu Wu (@ma7h1as) of Tencent Security Xuanwu Lab" for all of my bugs in the future?
I've updated our records, thanks!
Labels: -reward-unpaid reward-inprocess
could you please assign a CVE-ID for it when releases M70 chrome,  thank you.
Project Member

Comment 32 by sheriffbot@chromium.org, Dec 27

Labels: -Restrict-View-SecurityNotify allpublic
This bug has been closed for more than 14 weeks. Removing security view restrictions.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment