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.
Writing the test-case made me realize
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.
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...
jst, do you know when imelven gets back?
Hmm, we do set the sandbox flags to initial about:blank. Why is that not working
Created attachment 668200 [details] [diff] [review] patch
Still trying to push to try. It is very very slow atm.
Comment on attachment 668200 [details] [diff] [review] patch r=me
(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.
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
Comment on attachment 668200 [details] [diff] [review] patch thanks - please land before Monday Oct 8th merge day.
Sorry about this, thanks for handling it Olli !