- Mar 26, 2015
-
-
Nick Kralevich authored
Add a compile time assertion that capabilities other than setuid and setgid are never granted to run-as. This is a compile time assertion only. No new capabilities are granted or removed. Change-Id: Ie86d651b539cdfb6f3eaafef0d5d3b716610a220
-
- Mar 25, 2015
-
-
Tom Cherry authored
-
Nick Kralevich authored
-
- Mar 24, 2015
-
-
Nick Kralevich authored
Add a compile time assertion that gpsd never has capabilities other than block_suspend. Bug: 19908228 Change-Id: Iaaf83191902ed04fe9df52c1ed44248fb1ce732d
-
Nick Kralevich authored
Android has long enforced that code can't compile with text relocations present. Add a compile time assertion to prevent regressions. Change-Id: Iab35267ce640c1fad9dc82b90d22e70e861321b7
-
- Mar 20, 2015
-
-
Nick Kralevich authored
Make sure we're not running fsck on block devices where it doesn't make any sense. In particular, we should not be running fsck on /system since it's mounted read-only, and any modification to that block device will screw up verified boot. Change-Id: Ic8dd4b0519b423bb5ceb814daeebef06a8f065b4
-
- Mar 19, 2015
-
-
Tom Cherry authored
/odm has the same permissions as /system/... for devices with a separate odm partition Bug: 19609718 Change-Id: I6dd83d43c5fd8682248e79d11b0ca676030eadf0
-
Nick Kralevich authored
Commit a1913988 added a new SELinux label to /system/xbin/procrank, which had the effect of preventing dumpstate from executing procrank. Allow dumpstate to execute procrank. Bug: 18342188 Change-Id: If5b781db0d3af34912f3c803b7fa73d53120f3ba
-
Dianne Hackborn authored
Change-Id: I283663caea0ee1597645856fb31f13b26e902315
-
Nick Kralevich authored
-
Nick Kralevich authored
-
Nick Kralevich authored
/system/xbin/procrank is a setuid program run by adb shell on userdebug / eng devices. Allow it to work without running adb root. Bug: 18342188 Change-Id: I18d9f743e5588c26661eaa26e1b7e6980b15caf7
-
- Mar 17, 2015
-
-
Nick Kralevich authored
-
Dan Albert authored
This is causing more harm than good. We'll just make these all link libc++ again and work out the CTS issues if they still exist. Bug: 19778891 This reverts commit 3812cf58. Change-Id: Iaea8f6acb147da4275633a760ccb32951db7f8b6
-
Dan Albert authored
This is causing more harm than good. We'll just make these all link libc++ again (another revert) and work out the CTS issues if they still exist. Bug: 19778891 This reverts commit a5113a15. Change-Id: I35a4c93dae4abb66e3525451d5ce01e33a540895
-
Dan Albert authored
Address sanitizer requires using libc++ (apparently). We removed libc++ from these projects since they were C and the SDK/CTS was not able to find libc++. If we're interested in continuing to use ASAN on these tools (probably), we should turn libc++ back on once we're sure CTS won't die. Bug: 19778891 Change-Id: I3c1913171a15396ead73277ec1186fead730f66d
-
- Mar 16, 2015
-
-
dcashman authored
Addresses the following error when running CTS on master: junit.framework.AssertionFailedError: The following errors were encountered when validating the SELinuxneverallow rule: neverallow { appdomain -bluetooth } self:capability *; /tmp/SELinuxHostTest5593810182495331783.tmp: error while loading shared libraries: libc++.so: cannot open shared object file: No such file or directory Also indicate that none of the sepolicy tools need c++ std lib. Bug: 19617220 Change-Id: I713b3cbd1220655413d399c7cd2b0b50459a5485
-
Stephen Smalley authored
Needed since Iff1e601e1268d4d77f64788d733789a2d2cd18cc removed it from appdomain. Change-Id: I9fc08b525b9868f0fb703b99b0c0c17ca8b656f9 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
This was rendered obsolete when SELinuxDomainTest was ported to SELinuxHostTest and only makes sense if allowing search to domain:dir and { open read } to domain:file in order to open the /proc/pid/attr/current files in the first place. SELinux applies a further :process getattr check when reading any of the /proc/pid/attr/* files for any process other than self, which is no longer needed by app domains to pass CTS. Change-Id: Iff1e601e1268d4d77f64788d733789a2d2cd18cc Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Mar 14, 2015
-
-
Nick Kralevich authored
Executing /system/xbin/su is only supported on userdebug builds for a limited number of domains. On user builds, it should never occur. Add a compile time assertion (neverallow rule) that this is always true. Bug: 19647373 Change-Id: I231a438948ea2d47c1951207e117e0fb2728c532
-
Nick Kralevich authored
-
- Mar 13, 2015
-
-
Stephen Smalley authored
Require equivalence for all write operations. We were already doing this for app_data_file as a result of restricting open rather than read/write, so this makes the model consistent across all objects and operations. It also addresses the scenario where we have mixed usage of levelFrom=all and levelFrom=user for different apps on the same device where the dominated-by (domby) relation may not be sufficiently restrictive. Drop the System V IPC constraints since System V IPC is never allowed by TE and thus these constraints are dead policy. Change-Id: Ic06a35030c086e3978c02d501c380889af8d21e0 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Assigning mlstrustedsubject to untrusted_app would undermine the per-user isolation model being enforced via levelFrom=user in seapp_contexts and the mls constraints. There is no direct way to specify a neverallow on attribute assignment, but this makes use of a particular property of the fork permission to prevent ever adding mlstrustedsubject to untrusted_app. A similar restriction for app_data_file and mlstrustedobject is also important for the same reason, but cannot be expressed as a neverallow. Change-Id: I5170cadc55cc614aef0cd5f6491de8f69a4fa2a0 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
There were a few instances where allow rules were appended after the neverallow rules stanza in the .te file. Also there were some regular allow rules inserted into the CTS-specific rules section of app.te. Just move the rules as appropriate. Should be no change in policy. Change-Id: Iec76f32d4b531d245bbf5dd9f621a71ff5c71f3e Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Add an attribute command to sepolicy-analyze for displaying the list of types associated with an attribute in a policy. This is for use by CTS to check what domains and types are associated with certain attributes such as mlstrustedsubject and mlstrustedobject. Change-Id: Ie19361c02feb1ad14ce36862c6aace9e66c422bb Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
With changes I431c1ab22fc53749f623937154b9ec43469d9645 and Ia54aa263f2245c7090f4b9d9703130c19f11bd28, it is no longer legitimate to use BOARD_SEPOLICY_IGNORE or REPLACE with any of the *_contexts files since the CTS requires the AOSP entries to be present in the device files. Further, these changes render BOARD_SEPOLICY_IGNORE unusable for most policy files since all domains and types referenced within any of the AOSP *_contexts entries must be defined in the kernel policy, so you cannot use BOARD_SEPOLICY_IGNORE to exclude any .te file that defines a type referenced in any of those *_contexts files. There does not seem to be a significant need for such a facility, as AOSP policy is small and only domains and types used by most devices should be defined in external/sepolicy. BOARD_SEPOLICY_REPLACE is commonly misused to eliminate neverallow rules from AOSP policy, which will only lead to CTS failures, especially since change Iefe508df265f62efa92f8eb74fc65542d39e3e74 introduced neverallow checking on the entire policy via sepolicy-analyze. The only remaining legitimate function of BOARD_SEPOLICY_REPLACE is to support overriding AOSP .te files with more restrictive rule sets. However, the need for this facility has been significantly reduced by the fact that AOSP policy is now fully confined + enforcing for all domains, and further restrictions beyond AOSP carry a compatibility risk. Builders of custom policies and custom ROMs still have the freedom to apply patches on top of external/sepolicy to tighten rule sets (which are likely more maintainable than maintaining a completely separate copy of the file via BOARD_SEPOLICY_REPLACE) and/or of using their own separate policy build system as exemplified by https://bitbucket.org/quarksecurity/build-policies Change-Id: I2611e983f7cbfa15f9d45ec3ea301e94132b06fa Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Failed to include base_rules.mk, so this target was not being built. Change-Id: I2414fa6c3e3e37c74f63c205e3694d1a811c956e Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Mar 12, 2015
-
-
Stephen Smalley authored
Generate general forms of the remaining *_contexts files with only the device-independent entries for use in CTS testing. Change-Id: I2bf0e41db8a73c26754cedd92cbc3783ff03d6b5 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Nick Kralevich authored
Periodically, SELinux denials of the form: type=1400 audit(0.0:8574): avc: denied { setsched } for comm="system_server" scontext=u:r:system_server:s0 tcontext=u:r:kernel:s0 tclass=process permissive=0 are being generated. These denials come from system_server and other processes. There's no reason why system_server should be calling sched_setscheduler() on a kernel thread. Current belief is that these SELinux denials are a bug in the kernel, and are being inappropriately triggered. Revert 2d1650f4. The original reason for accepting this change was to see if it would fix bug 18085992. Unfortunately, even after the commit, the bug was still present. The change had no impact on the bug. Don't inappropriately grant system_server the ability to minipulate the scheduling priority of kernel threads. This reverts commit 2d1650f4. Change-Id: I59bdf26ad247a02b741af2fa58a18e7e83ef44d8
-
Stephen Smalley authored
Generate a general_seapp_contexts file with only the device-independent entries, similar to general_sepolicy.conf. This is for use by CTS tests to compare with the prefix of device seapp_contexts. Change-Id: If8d1456afff5347adff7157411c6a160484e0b39 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Nick Kralevich authored
-
Stephen Smalley authored
Instead of displaying the boolean count, display a list of booleans defined in the policy, if any. This makes sepolicy-analyze booleans consistent with sepolicy-analyze permissive and allows automated tests to simply check whether there was any output at all. Change-Id: I221b60d94e6e7f6d80399bf0833887af3747fe83 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Mar 11, 2015
-
-
Mark Salyzyn authored
- allow access for /data/system/packages.xml. - deprecate access to /dev/logd_debug (can use /dev/kmsg for debugging) - allow access to /dev/socket/logd for 'logd --reinit' Bug: 19681572 Change-Id: Iac57fff1aabc3b061ad2cc27969017797f8bef54
-
Nick Kralevich authored
-
Nick Kralevich authored
-
Stephen Smalley authored
Implement the booleans test in sepolicy-analyze so that we can move the no-booleans check from the SELinuxTest to the SELinuxHostTest along with the other policy checks. Change-Id: I95d7ad34da10c354470f43734d34a6ec631a7b4e Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Nick Kralevich authored
With the exception of the factory reset protection block device, don't allow system_server to read or write to any other block devices. This helps protect against a system->root escalation when system_server has the ability to directly minipulate raw block devices / partitions / partition tables. This change adds a neverallow rule, which is a compile time assertion that no SELinux policy is written which allows this access. No new rules are added or removed. Change-Id: I388408423097ef7cf4950197b79d4be9d666362c
-
Nick Kralevich authored
system_server no longer writes to /proc/pid/oom_adj_score. This is handled exclusively by lmkd now. See the following commits: Kernel 3.18: * https://android-review.googlesource.com/139083 * https://android-review.googlesource.com/139082 Kernel 3.14: * https://android-review.googlesource.com/139081 * https://android-review.googlesource.com/139080 Kernel 3.10: * https://android-review.googlesource.com/139071 * https://android-review.googlesource.com/139671 Kernel 3.4: * https://android-review.googlesource.com/139061 * https://android-review.googlesource.com/139060 Bug: 19636629 Change-Id: Ib79081365bcce4aa1190de037861a87b55c15db9
-
- Mar 09, 2015
-
-
dcashman authored
Add neverallow rules to ensure that zygote commands are only taken from system_server. Also remove the zygote policy class which was removed as an object manager in commit: ccb3424639821b5ef85264bc5836451590e8ade7 Bug: 19624279 Change-Id: I1c925d7facf19b3953b5deb85d992415344c4c9f