Commit Graph

1002 Commits

Author SHA1 Message Date
Jed Davis
873f611a48 Bug 1401786 - Move the Linux sandboxing parts of GeckoChildProcessHost into security/sandbox. r=gcp
MozReview-Commit-ID: JknJhF5umZc

--HG--
extra : rebase_source : 2fa246e9a8b350becc21ed5bfd69820d3a321064
2017-10-06 17:15:46 -06:00
Alex Gaynor
af821e1fe3 Bug 1365257 - Further consolidate the configuration of the content sandbox; r=gcp
This patch moves handling of the "MOZ_DISABLE_CONTENT_SANDBOX" environment
variable into GetEffectiveContentSandboxLevel. It also introduces
IsContentSandboxEnabled and ports many users of GetEffectiveContentSandboxLevel
to use it.

MozReview-Commit-ID: 4CsOf89vlRB

--HG--
extra : rebase_source : b9130f522e860e6a582933799a9bac07b771139b
2017-06-01 10:38:22 -04:00
shindli
897ae925f7 Backed out 1 changesets (bug 1365257) for failing gl in \build\build\src\obj-firefox\dist\include\mozilla/ServoStyleSet.h:97 r=backout on a CLOSED TREE
Backed out changeset 00edc1ac58f9 (bug 1365257)

--HG--
extra : rebase_source : d33f3bba71d1899e0f4a5051369c240e00ea42fe
2017-11-10 19:23:58 +02:00
Alex Gaynor
31e67fc86a Bug 1365257 - Further consolidate the configuration of the content sandbox; r=gcp
This patch moves handling of the "MOZ_DISABLE_CONTENT_SANDBOX" environment
variable into GetEffectiveContentSandboxLevel. It also introduces
IsContentSandboxEnabled and ports many users of GetEffectiveContentSandboxLevel
to use it.

MozReview-Commit-ID: 4CsOf89vlRB

--HG--
extra : rebase_source : 10234bd7d837eae8dc915e4a0c0a37040fd0a280
2017-06-01 10:38:22 -04:00
Bob Owen
cd430d0c58 Bug 1415250 Part 1: Block prntm64.dll and guard32.dll in sandboxed child processes. r=jimm 2017-11-08 08:06:14 +00:00
Jed Davis
0b91cda795 Bug 1413312 - Fix media plugin sandbox policy for sched_get_priority_{min,max}. r=gcp
MozReview-Commit-ID: Bz4EWU13HAJ

--HG--
extra : rebase_source : 848880e083827a6f40e6ba289a5357ff6b4fa5f6
2017-10-31 18:12:43 -06:00
Jed Davis
de1cbf125f Bug 1412464 - Change sandboxing inotify denial from seccomp-bpf to symbol interception. r=gcp
MozReview-Commit-ID: DY0qdGYGNdL

--HG--
extra : rebase_source : 02448ea28e8c1ea0d25776455d9ebb30d829b482
2017-10-30 19:45:39 -06:00
Jed Davis
a2451f13e5 Bug 1412480 - Statically check for overly large syscall arguments. r=gcp
See the previous patch for an explanation of the mistake that this is
meant to catch.

Note that, even for arguments that really are 64-bit on 32-bit platforms
(typically off_t), it's generally not safe to pass them directly to
syscall(): some architectures, like ARM, use ABIs that require such
arguments to be passed in aligned register pairs, and they'll be aligned
differently for syscall() vs. the actual system call due to the leading
system call number argument.  The syscall(2) man page discusses this
and documents that such arguments should be split into high/low halves,
passed separately, and manually padded.

Therefore, this patch rejects any argument types larger than a word.

MozReview-Commit-ID: FVhpri4zcWk

--HG--
extra : rebase_source : 0329fe68be2a4e16fb71736627f0190e005c9972
2017-10-27 19:51:26 -06:00
Jed Davis
6d4b2907e1 Bug 1412480 - Fix syscall argument types in seccomp-bpf sandbox traps. r=gcp
The values in arch_seccomp_data::args are uint64_t even on 32-bit
platforms, and syscall takes varargs, so the arguments need to be
explicitly cast to the word size in order to be passed correctly.

MozReview-Commit-ID: 5ldv6WbL2Z3

--HG--
extra : rebase_source : c6ef37d8b367ad6025e510e58e6ab4d2f96cfc9e
2017-10-27 20:51:25 -06:00
Sebastian Hengst
1133016f04 Backed out 6 changesets (bug 1386404) for XPCshell failures, at least on Linux. r=backout on a CLOSED TREE
Backed out changeset c80acdea24c1 (bug 1386404)
Backed out changeset 6224ffae752a (bug 1386404)
Backed out changeset 9eba087cf64a (bug 1386404)
Backed out changeset eac6eb517096 (bug 1386404)
Backed out changeset 802a00ea50e7 (bug 1386404)
Backed out changeset d7f697bac6ef (bug 1386404)
2017-11-03 20:28:00 +01:00
Gian-Carlo Pascutto
859dfba3ed Bug 1386404 - Whitelist the prefix used by the XPCOM leak logs. r=haik
MozReview-Commit-ID: HI68lvyJIPQ

--HG--
extra : rebase_source : 95804e003ae2cde2b4baa1f5d1bba43d2d0830b5
2017-11-03 13:18:56 +01:00
Gian-Carlo Pascutto
9dd0bca893 Bug 1386404 - Only do the tmp remapping if needed. r=jld
This helps with getting the tests that are running out of /tmp
to pass, who get confused if their paths change underneath them.

It's also a bit faster.

MozReview-Commit-ID: CWtngVNhA0t

--HG--
extra : rebase_source : b7fe3ad6317fafa382a2ad38c7d9d5338aeafc9b
2017-10-26 18:02:10 +02:00
Gian-Carlo Pascutto
12fb914457 Bug 1386404 - Intercept access to /tmp and rewrite to content process tempdir. r=jld
MozReview-Commit-ID: 2h9hw6opYof

--HG--
extra : rebase_source : 821381f48b822415ae3d477341071099e7c1db54
2017-10-26 17:50:49 +02:00
Gian-Carlo Pascutto
88fc2f8563 Bug 1386404 - Enable access to the entire chrome dir from content. r=jld
This may be required if people have @import in their userContent.css, and
in any case our tests check for this.

MozReview-Commit-ID: 8uJcWiC2rli

--HG--
extra : rebase_source : 38bd2a2ffc593bf94b3c16f0c755d169d5998f7f
2017-10-26 18:57:03 +02:00
Gian-Carlo Pascutto
fff36a228d Bug 1386404 - Enable content-process specific tmpdir on Linux. r=haik
MozReview-Commit-ID: 6Hijq0to9MG

--HG--
extra : rebase_source : 083bf3d52e228ce953d31ef997f969a0e4a562ec
2017-10-12 11:18:25 +02:00
Haik Aftandilian
a6836496b3 Bug 1403260 - [Mac] Remove access to print server from content process sandbox. r=mconley
MozReview-Commit-ID: Ia21je8TTIg

--HG--
extra : rebase_source : 8a6859d411b332aca404bb6a78b91cdae6b498c0
2017-10-30 11:14:08 -07:00
Sebastian Hengst
6979ea37b4 merge mozilla-central to autoland. r=merge a=merge 2017-10-30 23:58:16 +01:00
Bob Owen
e67fce9b1f Bug 1412827: Add Symantec DLLs ffm64 and ffm to the sandboxed child blocklist. r=jimm
This patch also adds k7pswsen.dll unconditionally as it is still appearing
in many crash reports despite the block working in a test VM.
2017-10-30 16:28:26 +00:00
Jed Davis
6557099666 Bug 1411115 - Allow F_SETLK fcntl in sandboxed content processes. r=gcp
MozReview-Commit-ID: ARc7EpfN73o

--HG--
extra : rebase_source : 21c35a65a7c45387e2bd7fd7aba5f82ecf7c9ab3
2017-10-27 18:05:53 -06:00
Jed Davis
ee247f0d5f Bug 1409900 - Handle sandboxed statfs() by replacing it with open+fstatfs. r=gcp
MozReview-Commit-ID: 4Q0XMWcxaAc

--HG--
extra : rebase_source : e6065c91ddb271b71b5577ca0d6c39349565724c
2017-10-27 19:32:37 -06:00
Jed Davis
27d4543313 Bug 1409900 - Disallow quotactl in sandboxed content processes. r=gcp
MozReview-Commit-ID: 3svUgLLTZKL

--HG--
extra : rebase_source : 2f51310f19cff45313cafd2bdcc60f2999b729b3
2017-10-25 12:43:13 -06:00
Sebastian Hengst
d67d120cc4 Backed out 4 changesets (bug 1386404) for mass failures, e.g. in browser-chrome's dom/tests/browser/browser_xhr_sandbox.js. r=backout on a CLOSED TREE
Backed out changeset 36556e1a5ac7 (bug 1386404)
Backed out changeset b136f90dc49f (bug 1386404)
Backed out changeset 4600c2d575f9 (bug 1386404)
Backed out changeset c2c40e4d9815 (bug 1386404)
2017-10-30 19:10:01 +01:00
Gian-Carlo Pascutto
3d94d8e8e1 Bug 1386404 - Only do the tmp remapping if needed. r=jld
This helps with getting the tests that are running out of /tmp
to pass, who get confused if their paths change underneath them.

It's also a bit faster.

MozReview-Commit-ID: CWtngVNhA0t

--HG--
extra : rebase_source : 304481a18c371c3253448971f48064bcbd681a81
2017-10-26 18:02:10 +02:00
Gian-Carlo Pascutto
577b3a7731 Bug 1386404 - Intercept access to /tmp and rewrite to content process tempdir. r=jld
MozReview-Commit-ID: 2h9hw6opYof

--HG--
extra : rebase_source : f3121d7afff22e3f72c66e3a5553e731a83a2e1c
2017-10-26 17:50:49 +02:00
Gian-Carlo Pascutto
6a66615d8d Bug 1386404 - Enable access to the entire chrome dir from content. r=jld
This may be required if people have @import in their userContent.css, and
in any case our tests check for this.

MozReview-Commit-ID: 8uJcWiC2rli

--HG--
extra : rebase_source : 3542ea305aabaca0500d66f8e86f5c12170d793e
2017-10-26 18:57:03 +02:00
Gian-Carlo Pascutto
802f1b9395 Bug 1386404 - Enable content-process specific tmpdir on Linux. r=haik
MozReview-Commit-ID: 6Hijq0to9MG

--HG--
extra : rebase_source : c7a3559e4cbdfd1885d13a489c4eeb311ca973fa
2017-10-12 11:18:25 +02:00
Attila Craciun
21363323fd Backed out 2 changesets (bug 1409900) for failing browser chrome on Linux opt at browser/base/content/test/general/browser_bug590206.js r=backout a=backout.
Backed out changeset 83296a355dd4 (bug 1409900)
Backed out changeset 072007f83431 (bug 1409900)
2017-10-27 16:15:47 +03:00
Jed Davis
76b1bdf7de Bug 1408497 - Disallow inotify in sandboxed content processes. r=gcp
MozReview-Commit-ID: nKyIvMNQAt

--HG--
extra : rebase_source : 5347e8da745d6f4a0cd4e81e76fe6b94d94eac30
2017-10-25 13:35:47 -06:00
Jed Davis
5f10d1f416 Bug 1409900 - Handle sandboxed statfs() by replacing it with open+fstatfs. r=gcp
MozReview-Commit-ID: 4Q0XMWcxaAc

--HG--
extra : rebase_source : 6bd36df3155fc5cdda67720e313028a68e2f0901
2017-10-25 13:08:26 -06:00
Jed Davis
fce1017953 Bug 1409900 - Disallow quotactl in sandboxed content processes. r=gcp
MozReview-Commit-ID: 3svUgLLTZKL

--HG--
extra : rebase_source : 54623b48c65a1319905cab5aa520928681ec0023
2017-10-25 12:43:13 -06:00
Jed Davis
160e1dcfe0 Bug 1410191 - Correctly handle errors when using syscalls in sandbox trap handlers. r=gcp
MozReview-Commit-ID: JX81xpNBMIm

--HG--
extra : rebase_source : c7334f3e0b61b4fb4e0305cc6fc5d3173d08c032
2017-10-25 16:38:20 -06:00
Jed Davis
b8aa6b6de9 Bug 1410241 - Don't call destructors on objects we use in the SIGSYS handler. r=gcp
MozReview-Commit-ID: LAgORUSvDh9

--HG--
extra : rebase_source : b39836ebb7405202c60b075b30b48966ac644e71
2017-10-25 17:58:22 -06:00
Jed Davis
aa4363afaa Bug 1410280 - Re-allow PR_GET_NAME for sandboxed content processes. r=gcp
This prctl is used by PulseAudio; once bug 1394163 is resolved, allowing
it can be made conditional on the media.cubeb.sandbox pref.

MozReview-Commit-ID: 6jAM65V32vK

--HG--
extra : rebase_source : abb039aff7cefc0aa3b95f4574fdf1e3fb0d93a6
2017-10-25 11:04:34 -06:00
Phil Ringnalda
a173b09db6 Backed out changeset ccc0e72f2152 (bug 1403260) for hanging Mac browser-chrome in printing tests
MozReview-Commit-ID: IZNT5Jh8nzB
2017-10-25 23:00:17 -07:00
Haik Aftandilian
362316451f Bug 1403260 - [Mac] Remove access to print server from content process sandbox r=mconley
MozReview-Commit-ID: Ia21je8TTIg

--HG--
extra : rebase_source : 656e9e3ac8d1fb741d46881458bb0b7fb402d688
2017-10-22 23:02:58 -07:00
Jed Davis
9bac6e88bd Bug 1328896 - Restrict fcntl() in sandboxed content processes. r=gcp
MozReview-Commit-ID: BDBTwlT82mf

--HG--
extra : rebase_source : 9036abfb23768e7b17181fbc680692468d66ccd0
2017-07-24 17:33:07 -06:00
Haik Aftandilian
90adeb05d8 Bug 1404919 - Whitelist Extensis Suitcase Fusion fontvaults and /System/Library/Fonts. r=Alex_Gaynor
MozReview-Commit-ID: 5UaqiHBKd90

--HG--
extra : rebase_source : 3497f97815d57e9e3fa0cc13482af5d0d81cfd87
2017-10-12 18:29:42 -07:00
Sebastian Hengst
32f7c8fec3 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 1h3kZyrtqSt
2017-10-17 11:45:16 +02:00
Matthew Gregan
28e8f43756 Bug 1408821 - Allow FIONBIO ioctl from the content sandbox. r=jld
--HG--
extra : rebase_source : c6a1b525bc7d9207583200fd5d5059a8155b889f
2017-10-16 14:54:46 +13:00
Sebastian Hengst
f7efb5fc2c Merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE 2017-10-12 12:03:15 +02:00
Jim Mathies
17a6cb2cbf Bug 1407766 - Remove symantec dlls from the content process dll blocklist due to process startup issues associated with symantec av products. r=bobowen
MozReview-Commit-ID: JMOIptO2y7F
2017-10-11 18:00:18 -05:00
Jed Davis
a9b7865141 Bug 1316153 - Remove base::ChildPrivileges from IPC. r=billm,bobowen
ChildPrivileges is a leftover from the B2G process model; it's now
mostly unused, except for the Windows sandbox using it to carry whether
a content process has file:/// access.

In general, when sandboxing needs to interact with process launch, the
inputs are some subset of: the GeckoProcessType, the subtype if content,
various prefs and even GPU configuration; and the resulting launch
adjustments are platform-specific.  And on some platforms (e.g., OS X)
it's all done after launch.  So a simple enum used cross-platform isn't
a good fit.

MozReview-Commit-ID: K31OHOpJzla

--HG--
extra : rebase_source : 3928b44eb86cd076bcac7897536590555237b76b
2017-09-08 16:16:50 -06:00
Gian-Carlo Pascutto
433feb3f7e Bug 1387837 - Add library paths from /etc/ld.so.conf to broker read access policy. r=jld
MozReview-Commit-ID: S5vq6suTU4

--HG--
extra : rebase_source : b82f3ff902ca6e4929a8458aa952f409e30356b5
2017-10-06 12:35:35 +02:00
Jed Davis
55a0096f3c Bug 1320834 - Reduce prctl policy for desktop content processes. r=gcp
This removes the allow-all override in the content policy, which means it will
fall back to the more restrictive prctl policy in SandboxPolicyCommon.

MozReview-Commit-ID: CncoGi0HLxR

--HG--
extra : rebase_source : 6cb1834c56a1781f1512b7b078ba3469c3dd8537
2017-04-12 18:41:20 -06:00
Jed Davis
2a020d2e77 Bug 1408493 - Don't restrict ioctl() in sandboxed content if ALSA might be used. r=gcp
MozReview-Commit-ID: 61AmLLcPaWw

--HG--
extra : rebase_source : ba3ad2886b871a8753e9ac30c46fc3356f4fb1c4
2017-10-13 14:34:10 -06:00
Jed Davis
b61d9d2cbe Bug 1408498 - Allow FIONREAD in sandboxed content processes, for libgio. r=gcp
MozReview-Commit-ID: 23mO3vCb7Gu

--HG--
extra : rebase_source : b0183cb4d8d6a5e6ab03e9d4e1db1a3bb76a3569
2017-10-13 14:32:43 -06:00
Jed Davis
df2e63a6ff Bug 1408568 - Handle SandboxReport::ProcType::FILE correctly in XPCOM bindings. r=gcp
MozReview-Commit-ID: EwNTeG4cbZG

--HG--
extra : rebase_source : feed835fd56053644c5fa390d95884fc9b17439b
2017-10-13 17:33:01 -06:00
Bob Owen
ff9470afb1 Bug 1406068: Expand the list of DLLs that are suspected of causing a crash in ImageBridgeChild::InitForContent. r=jimm
I think that trying to slice this up by feature is just going to lead to complications down the line,
so to keep it simple I've moved this to the launch code for all sandboxed children, not just when the
Alternate Desktop is enabled.
This also, similar to chromium, only adds them to the blocklist if they are loaded in the parent.
2017-10-10 10:42:22 +01:00
Sebastian Hengst
c2d6023454 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 36L7JL73CzG
2017-10-09 23:52:04 +02:00
David Keeler
2a15781174 Bug 1369561 - Address misc. SnprintfLiteral correctness nits. r=jld, r=froydnj 2017-09-15 14:47:54 -07:00
Jed Davis
3709f8d1e4 Bug 1406233 - Include sys/sysmacros.h for major()/minor() macros in Linux sandbox broker. r=gcp
MozReview-Commit-ID: G1D4yxLAAqg

--HG--
extra : rebase_source : 2b13a20e324a3160ce393f7eb7913d78cc274419
2017-10-05 18:10:49 -06:00
Jed Davis
860bc842e2 Bug 1405891 - Block tty-related ioctl()s in sandboxed content processes. r=gcp
MozReview-Commit-ID: KiBfibjLSfK

--HG--
extra : rebase_source : e0cdbb5026c03d2b5a12fb49161aee392efb4189
2017-10-05 19:53:31 -06:00
Haik Aftandilian
9d77bd9d20 Bug 1393805 - Part 5 - Test that the system extensions dev dir is readable from content. r=bobowen
MozReview-Commit-ID: 7YN7S7R39CU

--HG--
extra : rebase_source : 092f1046a3f6b44c807f7632275615a6bdd674dd
2017-09-27 16:01:57 -07:00
Haik Aftandilian
1e86039b0d Bug 1393805 - Part 4 - Add Linux whitelisted directory for system extensions development. r=gcp
MozReview-Commit-ID: 2eTx1eM1fCM

--HG--
extra : rebase_source : c9c40b552b65a36b1ddb94e31ab04d84571e8d87
2017-10-04 10:50:48 -07:00
Haik Aftandilian
35249752a0 Bug 1393805 - Part 3 - Add Windows whitelisted directory for system extensions development. r=bobowen
MozReview-Commit-ID: 8K5c3mUlqna

--HG--
extra : rebase_source : 0f5a47e8504a38939a1c34a4bc4073bcdc1545d3
2017-10-02 15:17:15 -07:00
Haik Aftandilian
c0bfbc91e0 Bug 1393805 - Part 2 - Add Mac whitelisted directory for system extensions development. r=Alex_Gaynor
MozReview-Commit-ID: ADkcqFAsKaY

--HG--
extra : rebase_source : 02db543e05109e764228862ef5c760a0132eb4c2
2017-10-05 16:06:36 -07:00
Sylvestre Ledru
e0ca72f574 Bug 1406845 - AddMesaSysfsPaths: Resource leak on dir r=gcp
MozReview-Commit-ID: 3ul84cttRAF

--HG--
extra : rebase_source : 6d5306ef859f2db6101c08fb6aad405ffce30696
2017-10-09 09:29:29 +02:00
Sebastian Hengst
6c211079d0 Backed out changeset 8198bc4c7e3c (bug 1393805) 2017-10-05 00:20:11 +02:00
Sebastian Hengst
d60d5571f3 Backed out changeset 45695eda1c1c (bug 1393805) 2017-10-05 00:20:06 +02:00
Sebastian Hengst
072e34c960 Backed out changeset 1ba3220d84fa (bug 1393805) 2017-10-05 00:20:00 +02:00
Sebastian Hengst
e8b4c9dc97 Backed out changeset 4fe99f70e199 (bug 1393805) 2017-10-05 00:19:55 +02:00
Haik Aftandilian
9a88df4221 Bug 1393805 - Part 5 - Test that the system extensions dev dir is readable from content. r=bobowen
MozReview-Commit-ID: 7YN7S7R39CU

--HG--
extra : rebase_source : 01e3fe0acb051723219d9d5de5b1fd19d9751c34
2017-09-27 16:01:57 -07:00
Haik Aftandilian
e1dd4bac03 Bug 1393805 - Part 4 - Add Linux whitelisted directory for system extensions development. r=gcp
MozReview-Commit-ID: 2eTx1eM1fCM

--HG--
extra : rebase_source : 25cff10f2887795ce954b5fbca74df41fefa5c3e
2017-10-04 10:50:48 -07:00
Haik Aftandilian
213bec3e84 Bug 1393805 - Part 3 - Add Windows whitelisted directory for system extensions development. r=bobowen
MozReview-Commit-ID: 8K5c3mUlqna

--HG--
extra : rebase_source : 33b71d3ab20c0fdf24bcee39d4395757031213be
2017-10-02 15:17:15 -07:00
Haik Aftandilian
165980edfa Bug 1393805 - Part 2 - Add Mac whitelisted directory for system extensions development. r=Alex_Gaynor
MozReview-Commit-ID: ADkcqFAsKaY

--HG--
extra : rebase_source : 492194ea7914d6f09b349f95b3eeea0bd003256a
2017-09-27 13:27:39 -07:00
Jed Davis
ae5c1fb5c6 Bug 1401666 - Adjust sandbox policy to allow Mesa 12 to use libudev for device identification. r=gcp
MozReview-Commit-ID: JRRI9nd83TP

--HG--
extra : rebase_source : 3c5e3edd6606f33468120100f2a63533f1757935
2017-10-03 20:35:28 -06:00
Alex Gaynor
535c9e8dc3 Bug 1380674 - remove the ability to create directories in the content temp directory on macOS; r=haik
MozReview-Commit-ID: 8SDcDTqp2F5

--HG--
extra : rebase_source : e8094606e5a302db41f7d7fd22656b7e8697d549
2017-10-03 09:49:44 -04:00
Wes Kocher
83fd890d27 Merge m-c to autoland, a=merge CLOSED TREE
MozReview-Commit-ID: HeJwJwwTzhQ
2017-10-02 16:26:42 -07:00
Wes Kocher
382a7d90d6 Merge inbound to central, a=merge
MozReview-Commit-ID: CvJ9hmTQBcR
2017-10-02 16:22:37 -07:00
Gian-Carlo Pascutto
4ebb238032 Bug 1384804 - Allow reading /proc/self/status for libnuma. r=jld
MozReview-Commit-ID: LLwmPVtj0PE

--HG--
extra : rebase_source : 13d3a0cfce2ffc05280ce80d5d84e37b48f242e9
extra : histedit_source : e4e63c8a90c7b7ef16078d6ad9228b685e681c7e
2017-09-28 16:19:02 +02:00
Alex Gaynor
d755224ded Bug 1403567 - Remove unused access to AppleGraphicsPolicyClient iokit from content process; r=haik
MozReview-Commit-ID: 9yTMgo2FNKm

--HG--
extra : rebase_source : 72cc3a295d8823460aae21ebe149ece2df69d087
2017-09-26 13:05:18 -04:00
Haik Aftandilian
414270b14a Bug 1403669 - [Mac] Per-user and system extensions dir regexes only work for 1-character subdirectory names. r=Alex_Gaynor
MozReview-Commit-ID: L9vNruzMEez

--HG--
extra : rebase_source : 8530cbf1baef919a5a379564d190fb08674aa28d
2017-09-27 11:48:39 -07:00
Alex Gaynor
d1aef777b6 Bug 1404426 - Simplify the macOS content sandbox policy; r=haik
This does two things:

1) Move the level 3 rules to always be applicable, and simplifies level 2 accordingly
2) Consistently uses the raw string literal syntax for regexes

MozReview-Commit-ID: 6iwjOvRVMM7

--HG--
extra : rebase_source : 3ac59219ad0793a98bdb203fb3d247561216a560
2017-09-29 13:13:49 -04:00
Sebastian Hengst
5a95ac34b4 merge mozilla-central to autoland. r=merge a=merge 2017-09-29 11:49:46 +02:00
Haik Aftandilian
f39cc5cc25 Bug 1401756 - [Mac] Remove unneeded mach-lookups from plugin sandbox rules. r=Alex_Gaynor
MozReview-Commit-ID: JsgBzNJC4zF

--HG--
extra : rebase_source : deffeff5e6d39318c55bf3d487071139abaf3c92
2017-09-20 14:05:27 -07:00
David Parks
29d5db60ba Bug 1403707 - Change content sandbox job level to JOB_LOCKDOWN. r=bobowen
Changing definition of Windows content sandbox level 4 (the current Nightly default) to increase the job level from JOB_RESTRICTED to JOB_LOCKDOWN.
2017-09-27 13:36:06 -07:00
Haik Aftandilian
fa37753064 Bug 1403744 - Part 2 - Test that the per-user extensions dir is readable from content on Windows. r=bobowen
MozReview-Commit-ID: 7YN7S7R39CU

--HG--
extra : rebase_source : c86998b1738ee1f4d24562105acf63c20811b8a1
2017-09-29 12:44:22 -07:00
Haik Aftandilian
d54db04ac2 Bug 1403744 - Part 1 - Whitelist the per-user extensions dir XRE_USER_SYS_EXTENSION_DIR on Windows. r=bobowen
MozReview-Commit-ID: 8K5c3mUlqna

--HG--
extra : rebase_source : 00f91b3e1112766731119c1cbe14a08387202f60
2017-09-27 16:14:30 -07:00
Wes Kocher
9d9610f6a3 Merge m-c to autoland, a=merge
MozReview-Commit-ID: Kjjgw1Pdb3U
2017-09-26 17:15:46 -07:00
Bob Owen
8cf423ff54 Bug 1403230: Block WRusr.dll in child processes when using Alternate Desktop. r=jimm 2017-09-26 19:23:39 +01:00
Alex Gaynor
79cf374320 Bug 1403210 - Remove unused access to AppleSNBFBUserClient iokit from content process; r=haik
MozReview-Commit-ID: K4Z48UFfq2w

--HG--
extra : rebase_source : 8664f3e04503ecc48813d45d26b5433afcc65251
2017-09-26 11:32:01 -04:00
Jed Davis
d64e9b800d Bug 1396542 - Let sandboxed content processes read /var/lib/dbus/machine-id. r=gcp
PulseAudio is the only thing that's known to need this.  Note that the
same file often exists as /etc/machine-id, and we currently allow reading
all of /etc (which includes other fingerprinting hazards as well).

MozReview-Commit-ID: FoyKQzhAV6M

--HG--
extra : rebase_source : 593ee0b94cf507681a034d22cd06a9050d56b86a
2017-09-19 19:54:41 -06:00
Gian-Carlo Pascutto
38ecd4cad0 Bug 1399392 - Don't hardcode .config, use XDG_* environment vars. r=jld
MozReview-Commit-ID: 30j9VbHUjFn

--HG--
extra : rebase_source : f36d5ff8d54215899862621908d48b57ffa78af3
2017-09-13 15:55:07 +02:00
Jed Davis
bb7bbfa321 Bug 1363378 - Set close-on-exec in sandbox-related sockets held by parent process. r=gcp
If these aren't close-on-exec, they can be inherited by the crash
reporter process after the parent process has crashed and exited,
causing child processes to continue running when the IPC I/O thread blocks
in the file broker trying to open a GeckoChildCrash temp file.
(Empirically, the main thread then blocks waiting for the I/O thread.)

Operations that run on dedicated threads, like playing media, may
continue even though the main and IPC threads are locked up, resulting in
videos that keep playing sound even though the browser seems to no longer
exist.

If the broker socket is closed as expected when the parent process
exits, the child will return failure from the brokered file operation
and then go on to get an IPC error due to the parent process's
nonexistence, and will exit as normal.

This patch makes the same change to rejected syscall reporting, even
though that's a one-way asynchronous message with no response to wait
for, just in case something goes wrong enough to fill the entire socket
buffer but not so badly broken that it would wind up in an infinite loop
anyway.

SOCK_CLOEXEC has been present since Linux 2.6.26, and it would be used
only if seccomp-bpf is available, so it should be safe to use
unconditionally.

MozReview-Commit-ID: 7tDPBJILzlj

--HG--
extra : rebase_source : b797655dff2eea88c406d83dcee4a859f2a038b7
2017-09-13 12:25:35 -06:00
Sebastian Hengst
45bab258b7 merge mozilla-central to autoland. r=merge a=merge 2017-09-14 00:11:28 +02:00
Gian-Carlo Pascutto
bda88cac9f Bug 1396733 - Add flatpak font dirs to the sandbox whitelist. r=jld
Also clean up the order of paths a bit.

MozReview-Commit-ID: GM62r4N9wL7

--HG--
extra : rebase_source : 7cf620e020808d01a38f38be1fcf2a841df26367
2017-09-13 13:41:21 +02:00
Bob Owen
2e66e542ea Bug 1314801 Part 2: Enable MITIGATION_IMAGE_LOAD_NO_LOW_LABEL and MITIGATION_IMAGE_LOAD_NO_REMOTE on Windows content sandbox. r=jimm 2017-09-13 11:19:41 +01:00
Bob Owen
5e9dff873e Bug 1314801 Part 1: Compile chromium sandbox features that require at least UCRT SDK version 10.0.10586.0. r=jimm 2017-09-13 11:19:41 +01:00
Jed Davis
e6cee20f4d Bug 1397753 - Disallow kill() in sandboxed content processes. r=gcp
As a special case to deal with PulseAudio, testing for a process's
existence with kill(pid, 0) quietly fails with EPERM instead.

(I also added some commentary on umask, since I was touching that part of
the code anyway.)

MozReview-Commit-ID: CM0Aqii13j4

--HG--
extra : rebase_source : 44ef05e9a39a9eea4a649399c63b865f5523d43b
2017-09-07 08:29:02 -06:00
Jed Davis
db2eef4339 Bug 1299581 - Fail waitpid et al. with ECHILD in sandboxed content processes. r=gcp
MozReview-Commit-ID: 7Qjcnrd7KqK

--HG--
extra : rebase_source : 98e9bcb247edad657d8e45e30901861a9193f249
2017-09-07 08:27:32 -06:00
Sebastian Hengst
ecf716b8bb merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: CmMBcpJapLy
2017-09-12 11:35:15 +02:00
Bob Owen
6b4635da55 Bug 1395952: Enhance telemetry for failed launch of Windows sandboxed process by process type/error code key. r=jimm, data-r=rweiss
Only one telemetry accumlation will occur for each key per session.
2017-09-12 07:53:52 +01:00
Chris Manchester
c0a229d4c3 Bug 1386876 - Replace all uses of DISABLE_STL_WRAPPING with a template, remove DISABLE_STL_WRAPPING. r=glandium
MozReview-Commit-ID: FMEtb5PY7iP

--HG--
extra : rebase_source : 3cdee7528846462c758e623d6bcd2e6e17dbabff
2017-09-11 11:33:26 -07:00
Eric Rahm
0617c21c24 Bug 1393230 - Part 2: Fix more improper string usages. r=njn
This fixes improper usages of Find where an offset was actually being use for
the boolean ignore case flag. It also fixes a few instances of passing in a
literal wchar_t to our functions where a NS_LITERAL_STRING or char16_t should
be used instead.

--HG--
extra : rebase_source : 5de1e9335895d65e6db06c510e8887d27be3390f
extra : source : f762f605dd83fc6331161a33e1ef5d54cafbd08d
2017-08-31 15:52:30 -07:00
Alex Gaynor
f7ab109d5e Bug 1229829 - Part 2 - Use an alternate desktop on the local winstation for content processes; r=bobowen
MozReview-Commit-ID: ES52FwM5oFZ

--HG--
extra : rebase_source : 3893d3022f203eb0962f3bcc3490b35514285781
2017-08-16 09:55:19 -04:00
Alex Gaynor
dc31e19e84 Bug 1229829 - Part 1 - Apply chromium sandbox patches from upstream which improves alternate desktop support; r=bobowen
This is 0cb5dadc2b1f84fbbd9c6f75056e38d05a5b07d3 and
db4c64b63d6098294ed255e962700fd2d465575e in the chromium repository.

This allows a single process to create sandboxed children with alternate
desktops on both an alternate winstation and the local winstation.

MozReview-Commit-ID: 8sS7LjoveOk

--HG--
extra : rebase_source : 6915af73743f87ed74ddefe04210dbdd95bb56ed
2017-08-16 09:54:31 -04:00
Jed Davis
d7992cb0de Bug 1383888 - Restrict sandboxed readlinkat() the same as readlink(). r=gcp
MozReview-Commit-ID: 3VLXp7AJePQ

--HG--
extra : rebase_source : f0116599e133d3f7cc079ecdbf0dfaee7168be2d
2017-07-27 17:22:23 -06:00
Bob Owen
60cdfbd0a2 Bug 1392570: On Windows 7 don't attempt to use a job object for the sandbox when it will fail. r=jimm, data-r=rweiss
This patch also adds telemetry for when this occurs, breaking it down for local and remote sessions.
2017-09-01 14:05:49 +01:00
Gian-Carlo Pascutto
180dfb1325 Bug 1391494 - Enforce use of our own copy of strlcpy. r=jld
MozReview-Commit-ID: GQgGJBj1Hjc

--HG--
extra : rebase_source : ac110f76f199e8739b6eebaf123c7e6b58f77135
2017-08-24 19:12:14 +02:00
Haik Aftandilian
2cce1be1b0 Bug 1392988 - Firefox 55.02 on macOS High Sierra cannot play AES encrypted video. r=Alex_Gaynor
Adds access to video encoding/decoding services when running on macOS 10.13 High Sierra.

MozReview-Commit-ID: 6h4dZ6gkFtp

--HG--
extra : rebase_source : 8c5078b336631e3254fcaaf6727dff281c840159
2017-08-28 19:06:07 -07:00
James Forshaw
0b3b189961 Bug 1385928: Take new implementation of GetProcessBaseAddress from chromium commit f398005bc4ca0cc2dab2198faa99d4ee8f4da60d. r=jimm
This should fix issues we have seen with running Firefox from short name paths or moved binaries.
2017-08-15 09:29:46 +00:00
Jed Davis
11d8d1c88e Backed out 3 changesets (bug 1380701, bug 1384804)
Backed out changeset afdd35ed8902 (bug 1384804)
Backed out changeset 9fb892c41a9e (bug 1380701)
Backed out changeset 0d56979a6efa (bug 1380701)
2017-08-24 15:02:48 -06:00
Haik Aftandilian
3fbdb1b349 Bug 1382260 - Patch 2 - [Mac] Allow reading of font files from the content sandbox. r=Alex_Gaynor
MozReview-Commit-ID: 9W5aqQweFmd

--HG--
extra : rebase_source : 9aa778bc08bee206e7f3340eac32ca2f46a4f81b
2017-08-18 16:12:07 -07:00
Haik Aftandilian
c90d8c6594 Bug 1382260 - Patch 1 - Fix file access test bug. r=Alex_Gaynor
Fix the file access check by adding missing parentheses to isDirectory method call.

Don't run the cookies file check on Linux because the test profile is read accessible due to being in /tmp.

MozReview-Commit-ID: lps2hk8f5U

--HG--
extra : rebase_source : 5fba75d65081e56df5a0d171c41689c489a3aace
2017-08-22 10:11:01 -07:00
Jed Davis
a2bdc51dd8 Bug 1384986 - Adjust sandbox policy for dconf's mkdir -p behavior. r=gcp
MozReview-Commit-ID: HNvOXNJTc1W

--HG--
extra : rebase_source : 76edd1008731838fc89a5581fee818328d5847e1
2017-08-10 19:02:22 -06:00
Jed Davis
3460ce99ac Bug 1384986 - Prevent sandbox file broker rules from removing rights granted by more general rules. r=gcp
Generally, the intent for the Add* methods is that they always grant
rights in addition to what's already in the policy, not remove them;
this makes subtree rules that overlap single-file rules follow that
principle.

This requires a global analysis because the conflicting rules can be
added in any order.  It does not currently attempt to handle prefix
rules that aren't at a path component boundary, because that's not a
problem we currently have.

MozReview-Commit-ID: 4kv6QoGCBTV

--HG--
extra : rebase_source : 9e41263bbb1c07b8cde40ec2e72d746f17278fcb
2017-08-10 21:38:25 -06:00
Phil Ringnalda
366675feaa Merge m-c to autoland
MozReview-Commit-ID: GCxEZcmHL2w
2017-08-19 15:34:44 -07:00
Phil Ringnalda
9359f5bf39 Merge inbound to m-c, a=merge
MozReview-Commit-ID: LCCoXUsCtmv
2017-08-19 15:29:10 -07:00
Sebastian Hengst
4a4349b10c Backed out changeset 10660affe7a3 (bug 1387569) 2017-08-19 20:21:55 +02:00
Chris Peterson
9ce1ea9579 Bug 1389851 - sandbox: Suppress -Wunreachable-code-return warning in third-party Chromium sandbox code. r=jld
security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc:277:12: warning: 'return' will never be executed [-Wunreachable-code-return]

This return statement is unreachable because SANDBOX_DIE() is a noreturn function:

https://searchfox.org/mozilla-central/rev/a887f0edbd9f6b176b64111455ba62bb0cf356a6/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc#270-274

MozReview-Commit-ID: HDxBJe2ZtPN

--HG--
extra : rebase_source : 07f6cbcf901a54901cc5ea85b84030ea27a668ba
extra : source : f39f78b1a9851d97c6fd7dcbbd1d7ba93e933e08
2017-08-09 18:45:16 -07:00
Sylvestre Ledru
7b612087c3 Bug 1387569 - Also enable -Wno-implicit-fallthrough for gcc for a chromium file (exists from gcc 7) r=gcp
MozReview-Commit-ID: cuQuFcAnWL

--HG--
extra : rebase_source : d67074f94feabc1b32f64e6e988fa2222db626d7
2017-08-06 19:06:36 +02:00
Sylvestre Ledru
e15bcf0f43 Bug 1387569 - Also enable -Wno-implicit-fallthrough for gcc for a chromium file (exists from gcc 7) r=gcp
MozReview-Commit-ID: cuQuFcAnWL

--HG--
extra : rebase_source : 37dec684e14b1d02dab04729c718b5da1fcb25a4
2017-08-06 19:06:36 +02:00
Phil Ringnalda
1ca83fd296 Backed out 5 changesets (bug 1387569) for Windows static build bustage
Backed out changeset eeda521ba0ad (bug 1387569)
Backed out changeset 8d23caf2ccc7 (bug 1387569)
Backed out changeset b5f969313f81 (bug 1387569)
Backed out changeset f642bc883aa5 (bug 1387569)
Backed out changeset 20151eabffea (bug 1387569)

MozReview-Commit-ID: IH0XXePvhiL
2017-08-19 12:20:26 -07:00
Sylvestre Ledru
deeb6caa20 Bug 1387569 - Also enable -Wno-implicit-fallthrough for gcc for a chromium file (exists from gcc 7) r=gcp
MozReview-Commit-ID: cuQuFcAnWL

--HG--
extra : rebase_source : 28b30810aa4cf45d1d393bd94815b39ca81f43da
2017-08-06 19:06:36 +02:00
Haik Aftandilian
74e07cd141 Bug 1388580 - [Mac] Remove miscellaneous iokit open permissions r=Alex_Gaynor
MozReview-Commit-ID: 3StDmeSwZUG

--HG--
extra : rebase_source : 66d73d82f54a9bdd0ebbc35abf0badc2657e5750
2017-08-08 15:57:21 -07:00
Gian-Carlo Pascutto
2254f82025 Bug 1387742 - Whitelist default dynamic linker paths, including /lib64. r=jld
MozReview-Commit-ID: B4HpKZQL8Y0

--HG--
extra : rebase_source : 8303bcc547d5802280c1a1b18fd98c632cc4d387
2017-08-17 17:53:11 +02:00
Gian-Carlo Pascutto
137d2bb87a Bug 1384804 - Allow libnuma to read /proc/self/status, block get_mempolicy. r=jld
MozReview-Commit-ID: EHPVoFQ6jVZ

--HG--
extra : rebase_source : 7945f44a8b95a9e0d9d4dfaabc934aab6e6fd5be
extra : source : 76935696a618b2b6243988595bdd913b5209c200
2017-08-17 16:59:41 +02:00
Jed Davis
898bd21752 Bug 1380701 - Remove the file broker protocol support for two-path operations. r=gcp
Now that all of the operations that took two paths are removed, we can
have less string manipulation running on untrusted inputs in a trusted
context.

Note that the path isn't null-terminated in transit, because we know
the message length and there's no longer any need to delimit anything.
(This is how the protocol worked before the two-path operations were
added.)

MozReview-Commit-ID: 5VHkMoPlWmU

--HG--
extra : rebase_source : 2108a4f7c7bf5098f2ef63786c3675367bd56e19
2017-08-16 15:09:56 -06:00
Jed Davis
a7d1fe2b5f Bug 1380701 - Remove brokering for link, unlink, and rename. r=gcp
In testing (local and CI) these seem to no longer be used.

MozReview-Commit-ID: 2D3C8eWoIsB

--HG--
extra : rebase_source : dde2015af1d036c32631d185703f1149285b253e
2017-07-20 13:43:59 -06:00
Wes Kocher
9a955fd0b3 Backed out 2 changesets (bug 1380701) for bustage in SandboxBroker a=backout
Backed out changeset 6cef83dd4d11 (bug 1380701)
Backed out changeset 4456ebfe5657 (bug 1380701)

MozReview-Commit-ID: Cnfj7TZvCbv
2017-08-16 09:46:48 -07:00
Jed Davis
bcab11446f Bug 1380701 - Remove the file broker protocol support for two-path operations. r=gcp
Now that all of the operations that took two paths are removed, we can
have less string manipulation running on untrusted inputs in a trusted
context.

Note that the path isn't null-terminated in transit, because we know
the message length and there's no longer any need to delimit anything.
(This is how the protocol worked before the two-path operations were
added.)

MozReview-Commit-ID: 5VHkMoPlWmU

--HG--
extra : rebase_source : 74fd595c4aea6c9e073ae704b8e59599770300b4
2017-08-11 20:58:35 -06:00
Jed Davis
0bd7dbd987 Bug 1380701 - Remove brokering for link, unlink, and rename. r=gcp
In testing (local and CI) these seem to no longer be used.

MozReview-Commit-ID: 2D3C8eWoIsB

--HG--
extra : rebase_source : 20d986e1430a70ddb534fdd73d1d06e12510292f
2017-07-20 13:43:59 -06:00
Alex Gaynor
c6b10e5ba8 Bug 1389535 - remove access to com.apple.coreservices.launchservicesd from content processes; r=haik
MozReview-Commit-ID: 8uOZmYGxJDK

--HG--
extra : rebase_source : c51b8d314de39d3262706c2cf3c383e234a1342f
2017-08-09 11:29:53 -04:00
Gian-Carlo Pascutto
5577125b26 Bug 1389078 - Remove (unneeded) usage of internal libc header. r=jld
MozReview-Commit-ID: E7oppAtGRfD

--HG--
extra : rebase_source : 8c31af5b1275a6036ff09f062f2b87f3c1e2b300
2017-08-10 16:55:01 +02:00
Alex Gaynor
2cc89c3380 Bug 1388454 - remove access to the com.apple.pasteboard.1 mach service from content processes; r=haik
MozReview-Commit-ID: EXb6UDYohZT

--HG--
extra : rebase_source : 321ebf0ce810b4fde9ce99acb56b15ca7acfbd8e
2017-08-08 13:51:48 -04:00
Alex Gaynor
b4ba668be6 Bug 1388360 - remove access to the com.apple.iconservices mach service from content processes; r=haik
MozReview-Commit-ID: D20alO2PKR0

--HG--
extra : rebase_source : 2bc809d161eb373220f1de174abc8032207b5dac
2017-08-08 10:15:16 -04:00
Haik Aftandilian
f73b286d2a Bug 1386832 - Part 1 - Move non-sandbox-specific routines out of SandboxSettings. r=jimm
Moves IsDevelopmentBuild(), GetRepoDir(), and GetObjectDir() out of
SandboxSettings because they also need to be used by ExtensionProtocolHandler
to do security checks on developer builds as a result of how developer builds
rely on symlinks to the repo dir from system extension directories.

Remove the Linux-implementation of GetRepoDir() and GetObjectDir()
because the Linux content sandbox implementation and the
ExtensionProtocolHandler checks don't need them.

MozReview-Commit-ID: KwBFUnh6Cml

--HG--
extra : rebase_source : 3529a18ea802699ff968b798a7c560613469809b
2017-08-09 16:09:55 -07:00
Jed Davis
677499eb59 Bug 1386279 - Renovate Linux sandbox file broker handling of access(). r=gcp
1. X_OK is now allowed, and is limited only by the MAY_ACCESS permission.

2. The actual access() syscall is now used, if access is granted by the
broker policy.  This fixed bug 1382246, which explains the background.

MozReview-Commit-ID: 926429PlBnL

--HG--
extra : rebase_source : 6ae54c4c25e1389fa3af75b0bdf727323448294a
2017-08-08 18:02:31 -06:00
Alex Gaynor
0132ad567f Bug 1386363 - remove access to the com.apple.SystemConfiguration.configd mach service from content processes; r=haik
MozReview-Commit-ID: 3hFEx67JkdO

--HG--
extra : rebase_source : f3671c7d7682aeb5ff4b89d2409670fcadc2341a
2017-08-07 10:09:32 -04:00
Carsten "Tomcat" Book
c329d562fb merge mozilla-inbound to mozilla-central a=merge 2017-08-09 11:37:08 +02:00
Jed Davis
2a133d756a Bug 1388545 - Fix PulseAudio breakage caused by read restrictions. r=gcp
MozReview-Commit-ID: 518mslh9xy
2017-08-08 16:17:52 -06:00
Haik Aftandilian
ef291aef27 Bug 1388172 - [Mac] Remove access to "com.apple.window_proxies" from the content sandbox. r=Alex_Gaynor
MozReview-Commit-ID: 2EtLWOvPtyK

--HG--
extra : rebase_source : 3be19fbee8c0989cdfd82283ec2fb8acc5795989
2017-08-07 14:44:33 -07:00
Alex Gaynor
d407d2ad13 Bug 1387570 - remove access to the com.apple.cache_delete mach service from content processes; r=haik
MozReview-Commit-ID: LoB1rx5DoV5

--HG--
extra : rebase_source : 7721399376e8ae7e6f41581681b61e92e20f2b21
2017-08-07 10:11:37 -04:00
Haik Aftandilian
9d03f37706 Bug 1322024 - [Mac] Remove com.apple.windowserver.active access from the content sandbox. r=Alex_Gaynor
MozReview-Commit-ID: CY99fseWrQX

--HG--
extra : rebase_source : a7219e91ca415c6f058337251ebecc8e9e5006be
2017-07-24 15:22:58 -07:00
Alex Gaynor
90d2a77496 Bug 1387233 - restrict access to ipc-posix-shm APIs in the content process; r=haik
This removes /tmp/com.apple.csseed access entirely, ipc-posix-shm-read-metadata
from CFPBS:, and ipc-posix-shm-write-{create,unlink} from AudioIO and CFPBS:.

MozReview-Commit-ID: Eahx6guqGos

--HG--
extra : rebase_source : 621e81eb00411ae39882504db7d10a50eef30b27
2017-08-03 17:03:47 -04:00
Alex Gaynor
d1db7f92fc Bug 1385332 - remove access to the com.apple.pluginkit.pkd mach service from the content process; r=haik
MozReview-Commit-ID: 2KYaScrgnll

--HG--
extra : rebase_source : 4c39abdba18490f2fb12f1691f6fd5a4722cd542
2017-08-03 10:20:07 -04:00
Gian-Carlo Pascutto
60d25346d1 Bug 1386558 - Check sandboxing level 2 after permissions are available. r=jld
MozReview-Commit-ID: 9Pqwk45pJbe

--HG--
extra : rebase_source : 1c21f21d04cddd6c00e5f495c6686c671aa9cac1
2017-08-03 12:31:37 +02:00
Gian-Carlo Pascutto
36784f22aa Bug 1385891 - Whitelist things in the extension dir, not just the dir itself. r=jld
MozReview-Commit-ID: 3DryT8mm1F3

--HG--
extra : rebase_source : 23a8bda22307687884aa73d454221a78a4922791
2017-08-04 09:48:32 +02:00
Masatoshi Kimura
8b713b2b0f Bug 1375125 - Stop using nsILocalFile in the tree. r=froydnj
This mechanically replaces nsILocalFile with nsIFile in
*.js, *.jsm, *.sjs, *.html, *.xul, *.xml, and *.py.

MozReview-Commit-ID: 4ecl3RZhOwC

--HG--
extra : rebase_source : 412880ea27766118c38498d021331a3df6bccc70
2017-08-04 17:49:22 +09:00
Haik Aftandilian
d3e4a052d9 Bug 1386075 - [Mac] Remove (iokit-user-client-class "RootDomainUserClient"). r=Alex_Gaynor
MozReview-Commit-ID: 2bM5KVIbdru

--HG--
extra : rebase_source : f406551fb0986aaa77dd814cba17d399602093fb
2017-08-03 13:29:55 -07:00
Alex Gaynor
250a8036f3 Bug 1385096 - remove access to the com.apple.bird mach service from the content process; r=haik
MozReview-Commit-ID: FqKZVL16zz9

--HG--
extra : rebase_source : 8abca2f5c3aa95268887789fc2ca1a24da97de54
2017-08-03 10:14:33 -04:00
Haik Aftandilian
e6f1d0e175 Bug 1386161 - [Mac] Remove IOAudioControl Rules. r=Alex_Gaynor
MozReview-Commit-ID: 3cLUCJDoWlh

--HG--
extra : rebase_source : a6e5e7fa3975407f05c92f9e33b98826b2784e68
2017-07-30 22:26:06 -07:00
Alex Gaynor
11a211f901 Bug 1386308 - stop trying to change the display sleep settings from the content process; r=haik
Before this change we were trying to change the settings from both the content
and parent processes, so this doesn't change any functionality. This allows to
remove access to the com.apple.PowerManagement.control mach service from the
content process.

MozReview-Commit-ID: 3DOhqG5U6oz

--HG--
extra : rebase_source : dee0b97c444ae95cfc8f80cb0fb99aa9e2658d51
2017-08-01 12:22:42 -04:00
Alex Gaynor
f09847af4d Bug 1386291 - remove access to the com.apple.DesktopServicesHelper mach service in content processes; r=haik
MozReview-Commit-ID: Bk58lE5p6fi

--HG--
extra : rebase_source : a730b7bdf508a26cb039345f23d71c2558c1d7d1
2017-08-01 11:12:44 -04:00
Gian-Carlo Pascutto
5b6073d494 Bug 1385715 - Add support for WebGL on NVIDIA PRIME. r=jld
MozReview-Commit-ID: 6hXLXgNdVti

--HG--
extra : rebase_source : 14917cd11f97f41f46c6d6b42cea2ecb4162293a
2017-08-02 12:02:16 +02:00
Gian-Carlo Pascutto
5bfd2b1cc1 Bug 1385253 - Whitelist main NixOS data store directory. r=jld
MozReview-Commit-ID: 2aDBSAOrbv6

--HG--
extra : rebase_source : fa8e7fee91b2688fcaa94851e1820deca1c21277
2017-08-02 11:51:12 +02:00
Wes Kocher
5df77c43f9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: IJRYyJu1sWm
2017-08-02 17:42:10 -07:00
Wes Kocher
baf6cddc4c Merge inbound to central, a=merge
MozReview-Commit-ID: 9NFjSEt96iT
2017-08-02 17:11:51 -07:00
Gian-Carlo Pascutto
8f357724e0 Bug 1385891 - Whitelist extensions dir in the profile. r=jld
MozReview-Commit-ID: 7wpVmqs6Y1X

--HG--
extra : rebase_source : 8b168e291469efb3afb90754a2833c07dd815e9f
extra : histedit_source : 7c259145efbf7cb21688d3580f74b216bb972e63
2017-07-31 18:19:26 +02:00
Gian-Carlo Pascutto
0d8bd27705 Bug 1384483 - Allow reading userContent.css in the sandbox. r=jld
MozReview-Commit-ID: A43RY1J95VF

--HG--
extra : rebase_source : 0c8355b34e79d8b0f4ec744a6f2b8b4414e0ab5c
extra : histedit_source : 6ddf29193d5a8b26e50a6a5b8e885caeff366033
2017-07-31 17:58:19 +02:00
Nicholas Nethercote
08e54b7c13 Bug 1384819 (part 1) - Split MozStackWalk(). r=glandium.
MozStackWalk() is different on Windows to the other platforms. It has two extra
arguments, which can be used to walk the stack of a different thread.

This patch makes those differences clearer. Instead of having a single function
and forbidding those two arguments on non-Windows, it removes those arguments
from MozStackWalk, and splits off MozStackWalkThread() which retains them. This
also allows those arguments to have more appropriate types (HANDLE instead of
uintptr_t; CONTEXT* instead of than void*) and names (aContext instead of
aPlatformData).

The patch also removes unnecessary reinterpret_casts for the aClosure argument
at a couple of MozStackWalk() callsites.

--HG--
extra : rebase_source : 111ab7d6426d7be921facc2264f6db86c501d127
2017-07-27 12:46:47 +10:00
Wes Kocher
094c496d8d Backed out 2 changesets (bug 1384986) for failures in browser_content_sandbox_fs.js a=backout
Backed out changeset 23dae62b5ece (bug 1384986)
Backed out changeset 60408af056d9 (bug 1384986)

MozReview-Commit-ID: gru7nyixFG
2017-08-01 18:17:48 -07:00
Alex Gaynor
567f1c90d0 Bug 1384941 - removed access to mach services which are used for cameras in the content process; r=haik
MozReview-Commit-ID: Ir6KgLM34bu

--HG--
extra : rebase_source : badd0b62f20b870f7da82fcbefb09f7545e02801
2017-07-25 11:51:03 -04:00
Haik Aftandilian
34c815ff04 Bug 1384209 - [Mac] Remove com.apple.coreservices.appleevents from the content process sandbox. r=Alex_Gaynor
MozReview-Commit-ID: 37zX5WZiF4P

--HG--
extra : rebase_source : 53bd0bb8cb8353a7ec513066581a6abfe2d99172
2017-07-24 15:53:18 -07:00
Jed Davis
26e4446a5b Bug 1384986 - Fix PulseAudio breakage caused by read restrictions. r=gcp
MozReview-Commit-ID: 518mslh9xy

--HG--
extra : rebase_source : fe5c8abda549f62f1dc20f6942ad877b0d1ecd75
2017-07-27 12:41:22 -06:00
Jed Davis
34c347eb14 Bug 1384986 - Fix DConf breakage caused by read restrictions. r=gcp
MozReview-Commit-ID: GKTBPtAea5J

--HG--
extra : rebase_source : 9f0a85bddfcfe9a31364ee2e63f768eaddc52ce0
2017-07-27 11:32:09 -06:00
Jed Davis
347f03dad0 Bug 1384306 - Allow SOCK_CLOEXEC in socketpair(). r=gcp
MozReview-Commit-ID: 45LJiUxZeg6

--HG--
extra : rebase_source : 234d542fea3e85ca521f23256dceee7fab6108a3
2017-07-27 15:27:06 -06:00
Nicholas Nethercote
72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Sebastian Hengst
bbe32b6bed merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 44WBcWjnVo
2017-07-30 11:19:17 +02:00
Thomas Daede
4d4fefbd12 Bug 1384718 - Add sandbox rules for Mesa 17.1 driver loader. r=gcp 2017-07-29 13:05:55 -04:00
Alex Gaynor
cbb91e347d Bug 1385028 - simplify handling of macOS minor version in the sandbox policy; r=haik
MozReview-Commit-ID: BDD7WzTqHC6

--HG--
extra : rebase_source : d3eb23c8217a4dad7877a663fb455a0db2660330
2017-07-27 13:58:28 -04:00
Alex Gaynor
724ff5d5bc Bug 1264811 - Use a const reference and a default constructor to simplify the macOS sandbox code; r=haik
MozReview-Commit-ID: Dtspj7fL9t7

--HG--
extra : rebase_source : 4b85a1d7bd8ad393f032e67ebff0888bcfdd5447
2017-07-28 15:00:22 -04:00
Ryan VanderMeulen
4237da641e Backed out changeset 4d7f80401751 (bug 1385028) for bustage.
--HG--
extra : rebase_source : 74b74e1a87c5e524f15eb04917d5b2205f3f87f3
2017-07-27 20:10:23 -04:00
Alex Gaynor
7372dae53f Bug 1385028 - simplify handling of macOS minor version in the sandbox policy; r=haik
MozReview-Commit-ID: BDD7WzTqHC6

--HG--
extra : rebase_source : 1d4a4deedbf6351da61e9433738000dcf6bcd0df
2017-07-27 13:58:28 -04:00
Haik Aftandilian
7f9d32b10e Bug 1384153 - Artifact and local builds crashing content tabs on latest autoland to m-c merge. r=spohl
MozReview-Commit-ID: 6xHFTCXVgr7

--HG--
extra : rebase_source : b74fd0f4cece68bbf3f251c533d7b239cbc7e7ee
2017-07-26 22:47:10 -07:00
Carsten "Tomcat" Book
d360d49d2a merge mozilla-inbound to mozilla-central a=merge 2017-07-27 10:57:25 +02:00
Jed Davis
709a96c2ee Backed out 3 changesets (bug 1383007, bug 1376910)
Backed out changeset 394b3d22db19 (bug 1383007)
Backed out changeset 17e2e2aa8f56 (bug 1376910)
Backed out changeset d11cd5c3fc6f (bug 1376910)
2017-07-26 12:50:28 -06:00
Alex Gaynor
3229d39dba Bug 1384677 - remove com.apple.cookied access from content processes; r=haik
MozReview-Commit-ID: 5mI4VXf7J8Q

--HG--
extra : rebase_source : 8514a3e7e73059964b29e240d7979b3a2758bb69
2017-07-25 11:03:43 -04:00
Carsten "Tomcat" Book
679210723b merge mozilla-inbound to mozilla-central a=merge 2017-07-25 14:27:17 +02:00
Gian-Carlo Pascutto
7ee246522d Bug 1308400 - Report failures in file processes too. r=jld
MozReview-Commit-ID: 549WuWKaJeM

--HG--
extra : rebase_source : 22d6348e602f2ceae546502fa0050ab0960ec075
2017-07-10 20:20:49 +02:00
Gian-Carlo Pascutto
d791c78487 Bug 1308400 - Symlink handling for read brokering. r=jld
MozReview-Commit-ID: BP1gFdDbqXD

--HG--
extra : rebase_source : 5db26ad21e40ab19228ac8a978215b97cf8b3b28
2017-07-06 15:31:13 +02:00
Gian-Carlo Pascutto
8bc55108f2 Bug 1308400 - Support file process, whitelist path prefs. r=jld
MozReview-Commit-ID: 3eX06AioPZL

--HG--
extra : rebase_source : 56bcfaad3360fe92ce605a0413bb3a9cacb4446d
2017-07-24 16:32:22 +02:00
Sylvestre Ledru
6202d4908b Bug 1383007 - Move the declaration in the #ifdef declaration to silent a warning r=jld
Otherwise, a warning is triggered because the statement will never be executed [-

Found with -Wswitch-unreachable with gcc 7

MozReview-Commit-ID: FVStzyFlhJp

--HG--
extra : rebase_source : 1db87153c3e7dcde8d5a9e0f1f0ff607307c9ca2
2017-07-21 23:28:47 +02:00
Nicholas Nethercote
ff8375cf2e Bug 1382099 - Remove MOZ_WIDGET_GONK from security/. r=jld.
--HG--
extra : rebase_source : 8027baf7a24e5e0d91a175ab38614594c143767b
2017-07-21 10:45:42 +10:00
Bob Owen
b4239707cf Bug 1366694 Part 2: Don't run sandbox file system test in DEBUG on Windows. r=jimm
This is because in DEBUG mode we currently give full access to TEMP dir
for logging purposes and the temporary profile is created in the TEMP dir.
2017-07-20 07:50:48 +01:00
Bob Owen
dc46549cd6 Bug 1366694 Part 1: Allow user handles in the content process job in DEBUG builds. r=jimm 2017-07-07 15:51:17 +01:00
Jed Davis
4634e2a332 Bug 1376910 - Unshare the SysV IPC namespace in content processes. r=gcp
MozReview-Commit-ID: 1Uajj68rEuC

--HG--
extra : rebase_source : 5a6c86a104911146cfb56243dec8016fca536dc3
2017-06-28 07:11:55 -07:00
Jed Davis
99611dd25e Bug 1376910 - Block syscalls for SysV IPC in content processes. r=gcp
MozReview-Commit-ID: 9XCYBU07T29

--HG--
extra : rebase_source : 2390164a217a71f1ac0a9102e8a023c07b15eee7
2017-06-28 06:33:53 -07:00
Haik Aftandilian
ef16b0fcf8 Bug 1380690 - Part 2 - Whitelist repo and object dirs using paths from the Info.plist files. r=Alex_Gaynor,spohl
On Mac developer builds, read the repo path and object dir path from the
Info.plist files in the application bundle instead of the
MOZ_DEVELOPER_REPO_DIR and MOZ_DEVELOPER_OBJ_DIR environment variables.

MozReview-Commit-ID: 8UtjkNPGUM1

--HG--
extra : rebase_source : 3e4ce32f2e2c40f8d899bc9190e48298081458d9
2017-07-19 09:16:09 -07:00
Alex Gaynor
2e4ea0b3cd Bug 1383818 - Disallow content processes for using the com.apple.ocspd mach service; r=haik
It is not used, so this is an attack surface reduction.

MozReview-Commit-ID: mrW9hi0SAh

--HG--
extra : rebase_source : 889b937cfd20680bbb62391fa7932b5cd2e1fd6a
2017-07-24 09:50:32 -04:00
Jed Davis
0de50c4f7c Bug 1376653 - Fix handling of architecture differences for getdents. r=gcp
MozReview-Commit-ID: ArGStWwkJAg

--HG--
extra : rebase_source : 27f97df93bff744607e60bf61c8b71431861b025
2017-07-11 17:03:06 -06:00
Jed Davis
bbcc5a0f24 Bug 1376653 - Unconditionalize the tkill() polyfill. r=gcp
MozReview-Commit-ID: JzLWCRQ9Keg

--HG--
extra : rebase_source : ff038fd9e1a4ec8047c3a00619a97464778d7c2a
2017-07-11 16:59:48 -06:00
Jed Davis
89b65b175e Bug 1376653 - Loosen restrictions on clone flags for musl. r=gcp
I've made this non-ifdef'ed, and removed currently unused ifdef'ed cases
for old Android versions, because I'd rather have less code that we're
not even compile-testing than save a few cycles on a non-critical path.

MozReview-Commit-ID: B4Wn1elyK4f

--HG--
extra : rebase_source : f12ef40b325432a6aafe961095e5af64fc5a1a9a
2017-07-11 14:23:27 -06:00
Jim Mathies
6fa192cf93 Bug 1381326 - Enable MITIGATION_EXTENSION_POINT_DISABLE feature for Windows content. r=bobowen
MozReview-Commit-ID: 34MNqN5ln7J

--HG--
extra : rebase_source : 3b5565d5b387f70c562cf1b8e306dd2df8d57233
2017-07-16 12:08:18 -05:00
Haik Aftandilian
88b1e4c7ca Bug 1380132 - Part 3 - Use env variable MOZ_DEVELOPER_OBJ_DIR to whitelist object dir in content sandbox. r=Alex_Gaynor
On developer builds, use $MOZ_DEVELOPER_OBJ_DIR to whitelist the object dir in the content sandbox so that symlinks to the object dir from .app/ files can be loaded.

MozReview-Commit-ID: J4YdpxgbD8i

--HG--
extra : rebase_source : 19e369fe9ae29418d9d79e1fb83246474d858f34
2017-07-14 16:32:53 -07:00
Carsten "Tomcat" Book
260b5f956f merge mozilla-inbound to mozilla-central a=merge 2017-07-13 16:35:22 +02:00
Alex Gaynor
f76801e348 Bug 1379803 - on macOS, only allow the creation of regular files and directories in writable directories; r=haik
This specifically disallows the creation of ttys and symlinks. Writable
directories are needed for plugins, which lazily create the plugintmp directory.
If/when the plugin API surface is reduced we can restrict down to just regular
files.

MozReview-Commit-ID: Ec6qeaiHSsB

--HG--
extra : rebase_source : 252a3cbf7954b9c09092b896ef8af45310438a86
2017-07-11 09:51:04 -04:00
Carsten "Tomcat" Book
038afacb9f Backed out changeset 2ae22a66e02d (bug 1366694) for memory leaks 2017-07-11 13:14:55 +02:00
Carsten "Tomcat" Book
05734fd002 Backed out changeset 88b71119fbf8 (bug 1366694) 2017-07-11 13:14:38 +02:00
Carsten "Tomcat" Book
7e0d52f50e Merge mozilla-central to inbound 2017-07-11 13:00:28 +02:00
Bob Owen
db58bdb9ca Bug 1377555 Part 3: Don't use restricting SIDs when running from a network drive. r=jimm 2017-07-11 09:44:21 +01:00
Bob Owen
bbf27f0cae Bug 1377555 Part 2: Add option to Windows chromium sandbox policy to not use restricting SIDs. r=jimm 2017-07-11 09:44:20 +01:00
Bob Owen
01f2685a30 Bug 1377555 Part 1: Back out changesets 04edb03fb817 and d17ac655cc51. r=jimm
This backouts the previous change to detect and change the sandbox policy
when running from a network drive.
2017-07-11 09:44:20 +01:00
Alex Gaynor
f514ff97b3 Bug 1379182 - Remove some unnecessary file-write permissions types from the content process on macOS; r=haik
On macOS, the file-write* permission type contains numerous sub-permissions (see
bug for full listing). Restrict the ones we allow to only the two we need:
file-write-create and file-write-data. This primarily reduces kernel attack
surface, I'm not aware of any bad things that could be done directly with the
removed permissions.

MozReview-Commit-ID: 3VvjFesy2qx

--HG--
extra : rebase_source : 934ec17c44c9ef3d7fab29919d66cf1a55d57697
2017-07-07 11:05:01 -04:00
Wes Kocher
5dd57ee395 Merge m-c to inbound, a=merge
MozReview-Commit-ID: IVwrN2VivZT
2017-07-07 17:30:32 -07:00
Wes Kocher
fd4857585c Merge autoland to central, a=merge
MozReview-Commit-ID: Lf7ROINgvql
2017-07-07 17:22:00 -07:00
Alex Gaynor
d40ad40466 Bug 1376976 - Restrict sysctl access in the content process to a whitelist of sysctl names. r=jld, r=haik
MozReview-Commit-ID: 14yoiP1gskM
2017-06-29 13:55:15 -07:00
Haik Aftandilian
c610a4c66b Bug 1376163 - [10.13] No audio playback on YouTube, no audio/video on Netflix (macOS High Sierra 10.13 Beta). r=Alex_Gaynor
Allow access to the "com.apple.audio.AudioComponentRegistrar" API on 10.13+ systems.

MozReview-Commit-ID: 8gWXvuXTNKi

--HG--
extra : rebase_source : 8abf9a2548d915a89adfa82580d46c1bc00726d8
2017-07-06 14:09:11 -07:00
Sylvestre Ledru
4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
Jed Davis
1a4ac1cd36 Bug 1372428 - Extend file pre-opening for sandboxed media plugins. r=gcp
MozReview-Commit-ID: JoyYocxnk94
2017-07-07 08:58:50 -06:00