The default bug view has changed. See this FAQ.

Docshell sandbox flags should apply to initial about:blank

RESOLVED FIXED in Firefox 17

Status

()

Core
DOM: Core & HTML
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: Louis-Rémi BABE, Assigned: smaug)

Tracking

Trunk
mozilla18
Points:
---

Firefox Tracking Flags

(firefox17+ fixed, firefox18+ fixed)

Details

Attachments

(2 attachments)

(Reporter)

Description

5 years ago
There are two use-cases where people might want to access/modify the sandbox attribute of an iframe before inserting it into the document:
- when trying to detect if the browser supports that feature (as feature-detection scripts are usually in the <head> of the document and the body isn't accessible)
- when trying to create an iframe that is sandboxed from start

In Firefox, the sandbox attribute cannot be accessed or modified before the iframe is inserted into the document.
Testcase please.
Status: NEW → UNCONFIRMED
Ever confirmed: false
(Reporter)

Comment 2

5 years ago
Writing the test-case made me realize
Status: UNCONFIRMED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → INVALID
Summary: Sandbox attribute not accessible/modifiable before the iframe is inserted into the document → Sandbox attribute not modifiable before the iframe is inserted into the document
(Reporter)

Comment 3

5 years ago
Oops, I inadvertently submitted the last comment by pressing "Enter" while editing the title, sorry about that.

Writing the test-case made me realize that accessing the attribute was actually possible (I'm pretty sure it wasn't possible a few days ago but anyway), but modifying it isn't.

Opening the attached test case in Firefox will display a text that has been inserted into the a sandboxed iframe, while opening the same test case in Chrome won't display any text but will cause sandbox access violation errors.

In practice this doesn't cause any security problem, it just made me think that it was possible to access the sandboxed iframe content from the parent document when the iframe wasn't sandboxed at all.
Status: RESOLVED → REOPENED
Ever confirmed: true
Resolution: INVALID → ---
(Reporter)

Comment 4

5 years ago
Created attachment 668056 [details]
test-case
So the issue is that we're allowing access to the sandboxed iframe, which should be using a nullprincipal, right?

That seems to be because we don't sandbox the initial about:blank?  We should.

There were comments about this in bug 341604 that (incorrectly, it seems) concluded there wasn't a problem here.

Requesting tracking, since this seems like a bad bug to ship...
tracking-firefox17: --- → ?
Summary: Sandbox attribute not modifiable before the iframe is inserted into the document → Docshell sandbox flags should apply to initial about:blank
jst, do you know when imelven gets back?
tracking-firefox18: --- → ?
Assignee: nobody → bugs
Hmm, we do set the sandbox flags to initial about:blank.
Why is that not working
Ah, principal
Created attachment 668200 [details] [diff] [review]
patch
Attachment #668200 - Flags: review?(bzbarsky)
Still trying to push to try. It is very very slow atm.
Comment on attachment 668200 [details] [diff] [review]
patch

r=me
Attachment #668200 - Flags: review?(bzbarsky) → review+
https://hg.mozilla.org/mozilla-central/rev/fd724f194a1f
Status: REOPENED → RESOLVED
Last Resolved: 5 years ago5 years ago
Resolution: --- → FIXED
(In reply to Boris Zbarsky (:bz) from comment #6)
> jst, do you know when imelven gets back?

I'm told he's back on the 15th.
Tracking based on comment 5, also updating status and milestone for 18 to help with proper triage searching.  Please nominate for uplift - if this doesn't get in before Monday October 8th on Aurora it will need to be nominated for beta.
status-firefox17: --- → affected
status-firefox18: --- → fixed
tracking-firefox17: ? → +
tracking-firefox18: ? → +
Target Milestone: --- → mozilla18
Comment on attachment 668200 [details] [diff] [review]
patch

[Approval Request Comment]
Bug caused by (feature/regressing bug #): Bug 341604
User impact if declined: sandbox doesn't work the way it should
Testing completed (on m-c, etc.): landed to m-c
Risk to taking this patch (and alternatives if risky): should be low risk
String or UUID changes made by this patch: NA
Attachment #668200 - Flags: approval-mozilla-aurora?
Comment on attachment 668200 [details] [diff] [review]
patch

thanks - please land before Monday Oct 8th merge day.
Attachment #668200 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
https://hg.mozilla.org/releases/mozilla-aurora/rev/ff90431f32c3
status-firefox17: affected → fixed

Comment 18

5 years ago
Sorry about this, thanks for handling it Olli !
You need to log in before you can comment on or make changes to this bug.