- 11 Jan, 2014 1 commit
-
-
Nick Kralevich authored
Permissive domains are only intended for development. When a device launches, we want to ensure that all permissive domains are in, at a minimum, unconfined+enforcing. Add FORCE_PERMISSIVE_TO_UNCONFINED to Android.mk. During development, this flag is false, and permissive domains are allowed. When SELinux new feature development has been frozen immediately before release, this flag will be flipped to true. Any previously permissive domains will move into unconfined+enforcing. This will ensure that all SELinux domains have at least a minimal level of protection. Unconditionally enable this flag for all user builds. Change-Id: I1632f0da0022c80170d8eb57c82499ac13fd7858
-
- 11 Dec, 2013 1 commit
-
-
Stephen Smalley authored
Various third party apps come with their own binaries that they write out to their sandbox directories and then execute, e.g.: audit(1386527439.462:190): avc: denied { execute_no_trans } for pid=1550 comm="Thread-79" path="/data/data/com.cisco.anyconnect.vpn.android.avf/app_bin/busybox" dev="mmcblk0p23" ino=602891 scontext=u:r:untrusted_app:s0:c39,c256 tcontext=u:object_r:app_data_file:s0:c39,c256 tclass=file While this is not ideal from a security POV, it seems necessary to support for compatibility with Android today. Split out the execute-related permissions to a separate allow rule as it only makes sense for regular files (class file) not other kinds of files (e.g. fifos, sockets, symlinks), and use the rx_file_perms macro. Move the rule to untrusted_app only so that we do not permit system apps to execute files written by untrusted apps. Change-Id: Ic9bfe80e9b14f2c0be14295c70f23f09691ae66c Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- 27 Sep, 2013 1 commit
-
-
Stephen Smalley authored
Add a create_pty() macro that allows a domain to create and use its own ptys, isolated from the ptys of any other domain, and use that macro for untrusted_app. This permits the use of a pty by apps without opening up access to ptys created by any other domain on the system. Change-Id: I5d96ce4d1b26073d828e13eb71c48d1e14ce7d6b Signed-off-by:
Stephen Smalley <sds@tycho.nsa.gov>
-
- 04 Sep, 2013 1 commit
-
-
Nick Kralevich authored
At this point, we still don't understand the root cause of bug 10290009, or if it's even a real bug. Rollback 29d0d406 so we an get a device in this state and figure out the root cause of this problem. This reverts commit 29d0d406. Bug: 10290009
-
- 17 Aug, 2013 1 commit
-
-
Geremy Condra authored
Bug: 10290009 Change-Id: Ic794299261672b36a2b630893b65ab176c3eee6b (cherry picked from commit eaa4e844e4c8549c9b4808a1272876a6995ca5a7)
-
- 16 Aug, 2013 1 commit
-
-
Geremy Condra authored
Bug: 10290009 Change-Id: Ic794299261672b36a2b630893b65ab176c3eee6b (cherry picked from commit eaa4e844e4c8549c9b4808a1272876a6995ca5a7)
-
- 16 Jul, 2013 4 commits
-
-
Alex Klyubin authored
Change-Id: Ided2cf793e94bb58529789c3075f8480c0d0cf4e
-
Nick Kralevich authored
OTAs aren't properly labeling /system, which is causing SELinux breakage. Temporarily put isolated_app.te and untrusted_app.te into permissive. Bug: 9878561 Change-Id: Icaf674ad6b3d59cbca3ae796c930c98ab67cae9c
-
Nick Kralevich authored
OTAs aren't properly labeling /system, which is causing SELinux breakage. Temporarily put isolated_app.te and untrusted_app.te into permissive. Bug: 9878561 Change-Id: Icaf674ad6b3d59cbca3ae796c930c98ab67cae9c
-
Nick Kralevich authored
Bug: 9872463 Change-Id: I47eabeace3387afd24c0fd4bee70e77c0a3586d5
-
- 15 Jul, 2013 1 commit
-
-
Nick Kralevich authored
This is needed to support "Verify App" functionality. During side loading, the Verify App functionality reads the APK to determine if it's safe to install. Bug: 9863154 Change-Id: I33f6b0fd012f6cb194e253d5d92cf6189d6aa222
-
- 14 Jul, 2013 1 commit
-
-
Nick Kralevich authored
This is my first attempt at creating an enforcing SELinux domain for apps, untrusted_apps, and isolated_apps. Much of these rules are based on the contents of app.te as of commit 11153ef3 with extensive modifications, some of which are included below. * Allow communication with netd/dnsproxyd, to allow netd to handle dns requests * Allow binder communications with the DNS server * Allow binder communications with surfaceflinger * Allow an app to bind to tcp/udp ports * Allow all domains to read files from the root partition, assuming the DAC allows access. In addition, I added a bunch of "neverallow" rules, to assert that certain capabilities are never added. This change has a high probability of breaking someone, somewhere. If it does, then I'm happy to fix the breakage, rollback this change, or put untrusted_app into permissive mode. Change-Id: I83f220135d20ab4f70fbd7be9401b5b1def1fe35
-
- 13 Jul, 2013 1 commit
-
-
Nick Kralevich authored
app.te covers a lot of different apps types (platform_app, media_app, shared_app, release_app, isolated_app, and untrusted_app), all of which are going to have slightly different security policies. Separate the different domains from app.te. Over time, these files are likely to grow substantially, and mixing different domain types is a recipe for confusion and mistakes. No functional change. Change-Id: Ida4e77fadb510f5993eb2d32f2f7649227edff4f
-