add win32k lockdown to Win RDD sandbox

RESOLVED FIXED in Firefox 67

Status

()

enhancement
P1
normal
RESOLVED FIXED
8 months ago
6 months ago

People

(Reporter: mjf, Assigned: bobowen)

Tracking

(Blocks 1 bug)

unspecified
mozilla67
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox67 fixed)

Details

Attachments

(2 attachments)

From comment 20 from Bug 1498624 [1]:
SUBSYS_WIN32K_LOCKDOWN (similar to GMP's sandbox) should be added to the Win RDD sandbox.

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1498624#c20
Priority: -- → P3

First thing that strikes me is that using the child UI loop (same as GPU) is the first problem.

Assignee: nobody → bobowencode
Status: NEW → ASSIGNED
Priority: P3 → P1
ProcessTypeRequiresWinEventHook was added when attempting to turn on win32k
lockdown for GMP processes. Having a less specific, but globally accessible,
function will make it more useful while applying win32k lockdown to other
process types.
Attachment #9039102 - Flags: review?(nfroyd)
This stops the use of some win32k calls during start-up that will fail and in some cases cause a crash.

It also moves the MITIGATION_DYNAMIC_CODE_DISABLE to be enabled after start-up.
This is required because the hooks to fake the user32 and gdi32 initialization
are applied as the DLLs load and the dynamic code disable blocks that.
Attachment #9039103 - Flags: review?(jyavenard)
Attachment #9039103 - Flags: review?(jmathies)
Attachment #9039102 - Flags: review?(nfroyd) → review+
Attachment #9039103 - Flags: review?(jmathies) → review+
Comment on attachment 9039103 [details] [diff] [review]
Part 2: Enable win32k lockdown on RDD process

Review of attachment 9039103 [details] [diff] [review]:
-----------------------------------------------------------------

Don't know enough about this code to review it
Attachment #9039103 - Flags: review?(jyavenard)

(In reply to Jean-Yves Avenard [:jya] from comment #5)

Comment on attachment 9039103 [details] [diff] [review]
Part 2: Enable win32k lockdown on RDD process

Review of attachment 9039103 [details] [diff] [review]:

Don't know enough about this code to review it

Sorry, that's why I added in jimm as well to cover the Windows widget stuff.

I should have made it clear, basically I'm asking if you are OK for me to land this on Fx67 after the merge?

Flags: needinfo?(jyavenard)

Sure, as it doesn't impact usage and working of the RDD

Flags: needinfo?(jyavenard)
Pushed by bobowencode@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/3a9c07fcc2eb
Part 1: Replace ProcessTypeRequiresWinEventHook with XRE_Win32kCallsAllowed. r=froydnj
https://hg.mozilla.org/integration/mozilla-inbound/rev/55a7c08b3b67
Part 2: Enable win32k lockdown on RDD process. r=jimm
Blocks: AV1
Status: ASSIGNED → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla67
You need to log in before you can comment on or make changes to this bug.