Checking for the existence of a private field can trigger a SecurityException on cross-origin objects
Categories
(Core :: JavaScript Engine, defect, P3)
Tracking
()
People
(Reporter: mgaudet, Assigned: mgaudet)
References
Details
Attachments
(1 file, 1 obsolete file)
|
2.47 KB,
patch
|
Details | Diff | Splinter Review |
The attached WPT test checks a cross-domain iframe's Location object for the existence of a private field.
This throws SecurityError: Permission denied to access property #x on cross-origin object".
This violates the weak-map semantics expected of private fields.
| Assignee | ||
Comment 1•4 years ago
|
||
When originally implemented, it seemed like it would make the most sense to
store private fields in the regular expando property DOM proxies already have. However,
they're subject to same-origin checking that doesn't properly map to the weak-map semantics
of private fields, and so this patch simply returns us to using the JS defined
proxy expando for private fields.
Updated•4 years ago
|
Comment 2•4 years ago
|
||
There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:mgaudet, could you have a look please?
If you still have some work to do, you can add an action "Plan Changes" in Phabricator.
For more information, please visit auto_nag documentation.
| Assignee | ||
Comment 3•4 years ago
|
||
This is actually going to get fixed under Bug 1726039; I will mark the rev as plan-changes until then. (and likely resolve this as dupe later)
| Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Description
•