- May 29, 2014
-
-
Stephen Smalley authored
/data/property is only accessible by root and is used by the init property service for storing persistent property values. Create a separate type for it and only allow init to write to the directory and files within it. Ensure that we do not allow access to other domains in future changes or device-specific policy via a neverallow rule. Change-Id: Iff556b9606c5651c0f1bba902e30b59bdd6f063a Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- May 28, 2014
-
-
Nick Kralevich authored
As suggested in https://android-review.googlesource.com/95966 , remove various syslog_* from unconfined. SELinux domains which want to use syslog_* can declare it themselves. Change-Id: I7a8335850d1b8d3463491b4ef8c657f57384cfa4
-
- May 27, 2014
-
-
Stephen Smalley authored
Change I6a2fb1279318625a80f3ea8e3f0932bdbe6df676 removed these permissions from domain.te and added them to specific domains as required. Remove the permissions from unconfineddomain as well so that they are only allowed where explicitly allowed. The earlier change already added the necessary permissions to init, kernel, and recovery so we do not need to add them here. Change-Id: Ifeb5438532a7525e64328e1c54b436e9b6f7fd3b Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- May 20, 2014
-
-
Nick Kralevich authored
As far as I know, this is never used. Get rid of it. Change-Id: Iee0fb4e3f3952a0c4cc28d0aa96ca6c462ba5211
-
- May 09, 2014
-
-
Nick Kralevich authored
Only keystore itself should be reading / writing it's files. Remove keystore file access from other SELinux domains, including unconfined. Add neverallow rules to protect against regressions. Allow init limited access to recurse into keystore's directory. Change-Id: I0bb5de7804f4314997c16fac18507933014bcadf
-
- Apr 03, 2014
-
-
Stephen Smalley authored
Require them to be explicitly granted by specific allow rules. audit_write is required to write an audit message from userspace. audit_control is required to configure the audit subsystem. Change-Id: I5aa4e3228f9b0bde3570689fe7a0d68e56861a17 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Mar 10, 2014
-
-
Stephen Smalley authored
We already have neverallow rules for all domains about loading policy, setting enforcing mode, and setting checkreqprot, so we can drop redundant ones from netd and appdomain. Add neverallow rules to domain.te for setbool and setsecparam and exclude them from unconfined to allow fully eliminating separate neverallow rules on the :security class from anything other than domain.te. Change-Id: I0122e23ccb2b243f4c5376893e0c894f01f548fc Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Feb 12, 2014
-
-
Stephen Smalley authored
Only allow to domains as required and amend the existing neverallow on block_device:blk_file to replace the exemption for unconfineddomain with an explicit whitelist. The neverallow does not check other device types as specific ones may need to be writable by device-specific domains. Change-Id: I0f2f1f565e886ae110a719a08aa3a1e7e9f23e8c Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Remove sys_ptrace and add a neverallow for it. Remove sys_rawio and mknod, explicitly allow to kernel, init, and recovery, and add a neverallow for them. Remove sys_module. It can be added back where appropriate in device policy if using a modular kernel. No neverallow since it is device specific. Change-Id: I1a7971db8d247fd53a8f9392de9e46250e91f89b Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Feb 11, 2014
-
-
Stephen Smalley authored
Only allow to specific domains as required, and add a neverallow to prevent allowing it to other domains not explicitly whitelisted. sdcard_type is exempted from the neverallow since more domains require the ability to mount it, including device-specific domains. Change-Id: Ia6476d1c877f5ead250749fb12bff863be5e9f27 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Jan 30, 2014
-
-
Stephen Smalley authored
Linux defines two capabilities for Mandatory Access Control (MAC) security modules, CAP_MAC_OVERRIDE (override MAC access restrictions) and CAP_MAC_ADMIN (allow MAC configuration or state changes). SELinux predates these capabilities and did not originally use them, but later made use of CAP_MAC_ADMIN as a way to control the ability to set security context values unknown to the currently loaded SELinux policy on files. That facility is used in Linux for e.g. livecd creation where a file security context that is being set on a generated filesystem is not known to the build host policy. Internally, files with such labels are treated as having the unlabeled security context for permission checking purposes until/unless the context is later defined through a policy reload. CAP_MAC_OVERRIDE is never checked by SELinux, so it never needs to be allowed. CAP_MAC_ADMIN is only checked if setting an unknown security context value; the only legitimate use I can see in Android is the recovery console, where a context may need to be set on /system that is not defined in the recovery policy. Remove these capabilities from unconfined domains, allow mac_admin for the recovery domain, and add neverallow rules. Change-Id: Ief673e12bc3caf695f3fb67cabe63e68f5f58150 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Jan 27, 2014
-
-
Nick Kralevich authored
Require all domain transitions or dyntransitions to be explicitly specified in SELinux policy. healthd: Remove healthd_exec / init_daemon_domain(). Healthd lives on the rootfs and has no unique file type. It should be treated consistent with other similar domains. Change-Id: Ief3c1167379cfb5383073fa33c9a95710a883b29
-
- Jan 13, 2014
-
-
Stephen Smalley authored
The recovery console now has its own domain and therefore we do not need to allow this for unconfined domains. This reverts commit 43ddc106. Change-Id: Id2d2c02ccf6ac38c48b07ab84b73348cd9c815fa
-
Stephen Smalley authored
The recovery console now has its own domain and therefore we do not need to allow this for unconfined domains. This reverts commit 89740a69. Change-Id: Ie060cff0de8cbd206e0e55e196021726e52246c7
-
- Jan 10, 2014
-
-
Nick Kralevich authored
As discussed in https://android-review.googlesource.com/78634 , the removal of execmem may cause OTA problems. Not sure... Revert this patch to give us more time to investigate. This reverts commit 4e416ea4. Change-Id: Ie05f90235da5b9ee20b374298494cbc0a58b9b49
-
Nick Kralevich authored
I'd like to do more testing to make sure OTA updates aren't broken by this change. Until we do the testing, let's rollback this change. This reverts commit 5da08810. Change-Id: I56a7f47a426cfd3487af1029283bd8ce182d5ab2
-
- Jan 08, 2014
-
-
Stephen Smalley authored
Exclude execute from the rules allowing access to files, and only add it back for the rootfs and files labeled with system_file (/system, /vendor) or one of the types in exec_type (files under /system that cause domain transitions). Change-Id: Ic72d76dc92e79bcc75a38398425af3bb1274a009 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
This ensures that only domains that are explicitly allowed executable memory permissions are granted them. Unconfined domains retain full write + execute access to all file types. A further change could possibly restrict execute access to a subset of file types, e.g. system_file + exec_type. Change-Id: I842f5a2ac5921cc2bd0ab23a091eb808fdd89565 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Now that we set /sys/fs/selinux/checkreqprot via init.rc, restrict the ability to set it to only the kernel domain. Change-Id: I975061fd0e69c158db9bdb23e6ba77948e3fead1 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Jan 04, 2014
-
-
Nick Kralevich authored
init can't handle binder calls. It's always incorrect to allow init:binder call, and represents a binder call to a service without an SELinux domain. Adding this allow rule was a mistake; the dumpstate SELinux domain didn't exist at the time this rule was written, and dumpstate was running under init's domain. Add a neverallow rule to prevent the reintroduction of this bug. Change-Id: I78d35e675fd142d880f15329471778c18972bf50
-
- Dec 09, 2013
-
-
Stephen Smalley authored
Label /proc/sys/vm/mmap_min_addr with proc_security to prevent writing it by any domain other than init. Also remove memprotect mmap_zero permission from unconfineddomain so that it cannot pass the SELinux check over mapping low memory. Change-Id: Idc189feeb325a4aea26c93396fd0fa7225e79586 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
Stephen Smalley authored
Remove init, ueventd, watchdogd, healthd and adbd from the set of domains traceable by debuggerd. bionic/linker/debugger.cpp sets up handlers for all dynamically linked programs in Android but this should not apply for statically linked programs. Exclude ptrace access from unconfineddomain. Prohibit ptrace access to init via neverallow. Change-Id: I70d742233fbe40cb4d1772a4e6cd9f8f767f2c3a Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Dec 06, 2013
-
-
Stephen Smalley authored
Limit the ability to write to the files that configure kernel usermodehelpers and security-sensitive proc settings to the init domain. Permissive domains can also continue to set these values. The current list is not exhaustive, just an initial set. Not all of these files will exist on all kernels/devices. Controlling access to certain kernel usermodehelpers, e.g. cgroup release_agent, will require kernel changes to support and cannot be addressed here. Expected output on e.g. flo after the change: ls -Z /sys/kernel/uevent_helper /proc/sys/fs/suid_dumpable /proc/sys/kernel/core_pattern /proc/sys/kernel/dmesg_restrict /proc/sys/kernel/hotplug /proc/sys/kernel/kptr_restrict /proc/sys/kernel/poweroff_cmd /proc/sys/kernel/randomize_va_space /proc/sys/kernel/usermodehelper -rw-r--r-- root root u:object_r:usermodehelper:s0 uevent_helper -rw-r--r-- root root u:object_r:proc_security:s0 suid_dumpable -rw-r--r-- root root u:object_r:usermodehelper:s0 core_pattern -rw-r--r-- root root u:object_r:proc_security:s0 dmesg_restrict -rw-r--r-- root root u:object_r:usermodehelper:s0 hotplug -rw-r--r-- root root u:object_r:proc_security:s0 kptr_restrict -rw-r--r-- root root u:object_r:usermodehelper:s0 poweroff_cmd -rw-r--r-- root root u:object_r:proc_security:s0 randomize_va_space -rw------- root root u:object_r:usermodehelper:s0 bset -rw------- root root u:object_r:usermodehelper:s0 inheritable Change-Id: I3f24b4bb90f0916ead863be6afd66d15ac5e8de0 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Dec 02, 2013
-
-
Stephen Smalley authored
Also make su and shell permissive in non-user builds to allow use of setenforce without violating the neverallow rule. Change-Id: Ie76ee04e90d5a76dfaa5f56e9e3eb7e283328a3f Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Nov 08, 2013
-
-
Geremy Condra authored
Change-Id: If26baa947ff462f5bb09b75918a4130097de5ef4
-
- Oct 21, 2013
-
-
Nick Kralevich authored
In https://android-review.googlesource.com/66562 , there was a discussion about the role the unconfined template plays. Document the unconfined template so that those expectations are better understood. Change-Id: I20ac01ac2d4496b8425b6f63d4106e8021bc9b2f
-
- Jul 16, 2013
-
-
Nick Kralevich authored
Bug: 9859477 Change-Id: Iadd26cac2f318b81701310788bed795dadfa5b6b
-
- Jul 11, 2013
-
-
Nick Kralevich authored
For unlabeled files, revert to DAC rules. This is for backwards compatibility, as files created before SELinux was in place may not be properly labeled. Over time, the number of unlabeled files will decrease, and we can (hopefully) remove this rule in the future. To prevent inadvertantly introducing the "relabelto" permission, add a neverallow domain, and add apps which have a legitimate need to relabel to this domain. Bug: 9777552 Change-Id: I71b0ff8abd4925432062007c45b5be85f6f70a88
-
- May 22, 2013
-
-
repo sync authored
Bug: 8424461 Change-Id: I8f0b01cdb19b4a479d5de842f4e4844aeab00622
-
- May 20, 2013
-
-
repo sync authored
This prevents denials from being generated by the base policy. Over time, these rules will be incrementally tightened to improve security. Change-Id: I4be1c987a5d69ac784a56d42fc2c9063c402de11
-
- Mar 21, 2013
-
-
Stephen Smalley authored
Change-Id: Ieeaa002061c9e4224ea90dfa60dffb112aa152c2 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Mar 19, 2013
-
-
Stephen Smalley authored
The binder_transfer_binder hook was changed in the kernel, obsoleting the receive permission and changing the target of the transfer permission. Update the binder-related policy to match the revised permission checking. Change-Id: I1ed0dadfde2efa93296e967eb44ca1314cf28586 Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- Apr 04, 2012
-
-
Stephen Smalley authored
New property_contexts file for property selabel backend. New property.te file with property type declarations. New property_service security class and set permission. Allow rules for setting properties.
-
- Jan 04, 2012
-
-
Stephen Smalley authored
-