Closed
Bug 957688
Opened 11 years ago
Closed 11 years ago
Remove CheckAccess hooks from SpiderMonkey and CAPS
Categories
(Core :: Security: CAPS, defect)
Tracking
()
RESOLVED
FIXED
mozilla29
People
(Reporter: bholley, Assigned: bholley)
References
Details
Attachments
(10 files)
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mrbkap
:
review+
|
Details | Diff | Splinter Review |
This stuff is mostly garbage these days. The two main deps of this bug I've found are:
(1) nsISecurityCheckedComponent
(2) Our current implementation of [Unforgeable] for Location.
Marking these deps appropriately.
Assignee | ||
Comment 1•11 years ago
|
||
With efaust's hack in bug 950407, we can get rid of the second dep. And the first one is coming very soon.
No longer depends on: 832014
Comment 2•11 years ago
|
||
\o/ I *never* understood this one.
Assignee | ||
Comment 3•11 years ago
|
||
(In reply to Luke Wagner [:luke] from comment #2)
> \o/ I *never* understood this one.
Me neither.
https://tbpl.mozilla.org/?tree=Try&rev=31bbfd1c86a0
Assignee: nobody → bobbyholley+bmo
Assignee | ||
Comment 4•11 years ago
|
||
Assignee | ||
Comment 5•11 years ago
|
||
This is green modulo one jit-test that I've fixed. Uploading patches and flagging for review.
Assignee | ||
Comment 6•11 years ago
|
||
Now that we have the principal-based filtering for stack walking, we can do this.
This isn't technically equivalent to the old behavior, since a stack that goes:
A -> B -> A
would previous have only seen the second set of |A| frames, whereas now we'd
see both sets. But this seems strictly better (also, it doesn't happen on the
web).
As noted, I've filed a bug for making this context- and saveFrameChain-agnostic.
Assignee | ||
Comment 7•11 years ago
|
||
But how will we call from Gecko into the JS engine to query CAPS via a callback?
Attachment #8363100 -
Flags: review?(mrbkap)
Assignee | ||
Comment 8•11 years ago
|
||
js::CheckAccess has all sorts of crazy side-effects on its parameters. Luckily,
they mostly happen on dead values.
We have to alter a jit-test that previously threw, and doesn't anymore. I have
confirmed that the reason for throwing was not the security check itself, but
rather the lookupGeneric call that happens inside js::CheckAccess, which ends
up throwing 'undefined is not a function'. It seems like this is just an issue
of calling lookupGeneric when we shouldn't, and that the correct behavior here
is not to throw.
Attachment #8363101 -
Flags: review?(mrbkap)
Assignee | ||
Comment 9•11 years ago
|
||
Thankfully, this case was only taking the JSACC_PROTO, which is significantly
simpler than the alternative.
Attachment #8363102 -
Flags: review?(mrbkap)
Assignee | ||
Comment 10•11 years ago
|
||
There's no need for the JS shell stuff either, since vm/Runtime.cpp already
sets up NullSecurityCallbacks by default.
Attachment #8363103 -
Flags: review?(mrbkap)
Assignee | ||
Comment 11•11 years ago
|
||
Attachment #8363104 -
Flags: review?(mrbkap)
Assignee | ||
Comment 12•11 years ago
|
||
I have no idea what this is supposed to be doing, given that the compilation
scope doesn't run script. We should make sure this is reviewed by someone
who remembers why this was written.
Attachment #8363105 -
Flags: review?(mrbkap)
Assignee | ||
Comment 13•11 years ago
|
||
Attachment #8363106 -
Flags: review?(mrbkap)
Assignee | ||
Comment 14•11 years ago
|
||
Attachment #8363108 -
Flags: review?(mrbkap)
Assignee | ||
Updated•11 years ago
|
Attachment #8363099 -
Flags: review?(mrbkap)
Updated•11 years ago
|
Attachment #8363099 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363100 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363101 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363102 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363103 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363104 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363105 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363106 -
Flags: review?(mrbkap) → review+
Updated•11 years ago
|
Attachment #8363108 -
Flags: review?(mrbkap) → review+
Comment 16•11 years ago
|
||
Comment on attachment 8363109 [details] [diff] [review]
Part 10 - Remove nsIXPCSecurityManager::CanAccess and nsScriptSecurityManager::CheckPropertyAccessImpl. v1
Review of attachment 8363109 [details] [diff] [review]:
-----------------------------------------------------------------
\o/
Attachment #8363109 -
Flags: review?(mrbkap) → review+
Assignee | ||
Comment 17•11 years ago
|
||
Thanks for the reviews Blake!
Final all-platform try push:
https://tbpl.mozilla.org/?tree=Try&rev=08db96c278ab
Assignee | ||
Comment 18•11 years ago
|
||
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/f6fb2082c996
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/08b7f4b5b665
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/048746b43ad3
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/4e3c42f192f4
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/1a85688d37ea
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/7ed1607eac3a
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/4030b1beb0d4
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/5ac97770b63c
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/5db4e6d1dc02
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/cc32cb2daf27
Comment 19•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/f6fb2082c996
https://hg.mozilla.org/mozilla-central/rev/08b7f4b5b665
https://hg.mozilla.org/mozilla-central/rev/048746b43ad3
https://hg.mozilla.org/mozilla-central/rev/4e3c42f192f4
https://hg.mozilla.org/mozilla-central/rev/1a85688d37ea
https://hg.mozilla.org/mozilla-central/rev/7ed1607eac3a
https://hg.mozilla.org/mozilla-central/rev/4030b1beb0d4
https://hg.mozilla.org/mozilla-central/rev/5ac97770b63c
https://hg.mozilla.org/mozilla-central/rev/5db4e6d1dc02
https://hg.mozilla.org/mozilla-central/rev/cc32cb2daf27
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
Comment 20•11 years ago
|
||
*applause*
You need to log in
before you can comment on or make changes to this bug.
Description
•