1. 05 Nov, 2014 1 commit
  2. 22 Oct, 2014 1 commit
    • Nick Kralevich's avatar
      DO NOT MERGE: allow access to labeled executables in /system · 2c38b3b8
      Nick Kralevich authored
      Most files on /system are labeled with the "system_file" label, and
      are readable by default by all SELinux domains. However, select
      executables are labeled with their own label, so that SELinux knows
      what domains to enter upon running the executable.
      
      Allow adbd read access to labeled executables in /system. We do
      this by granting adbd read access to exec_type, the attribute
      assigned to all executables on /system.
      
      This allows "adb pull /system" to work without generating
      SELinux denials.
      
      Bug: 18078338
      Change-Id: I97783759af083968890f15f7b1d8fff989e80604
      2c38b3b8
  3. 09 Sep, 2014 1 commit
  4. 18 Jul, 2014 1 commit
  5. 17 Jul, 2014 1 commit
    • Riley Spahn's avatar
      Refine service_manager find auditallow statements. · 14aa7c06
      Riley Spahn authored
      Add adbd as a service_manager_local_audit_domain and negate
      surfaceflinger_service in its auditallow. Negate keystore_service
      and radio_service in the system_app auditallow.
      
      (cherry picked from commit 88157ea3)
      
      Change-Id: I25354db2add3135335c80be2c2d350e526137572
      14aa7c06
  6. 15 Jul, 2014 1 commit
  7. 08 Jun, 2014 1 commit
    • Nick Kralevich's avatar
      allow adb push to create directories. · 98b7ab53
      Nick Kralevich authored
      Addresses the following denial:
      
        type=1400 audit(0.0:24): avc: denied { create } for comm="adbd" name="md5sum" scontext=u:r:adbd:s0 tcontext=u:object_r:shell_data_file:s0 tclass=dir
      
      Change-Id: Ibb1708af85b2235cbad2794993cfeef896f8db4a
      98b7ab53
  8. 05 Jun, 2014 2 commits
    • Nick Kralevich's avatar
      Allow adbd / shell /data/anr access · cb182aba
      Nick Kralevich authored
      The shell user needs to be able to run commands like
      "cat /data/anr/traces.txt". Allow it.
      
      We also need to be able to pull the file via adb.
      "adb pull /data/anr/traces.txt". Allow it.
      
      Addresses the following denials:
      
      <4>[   20.212398] type=1400 audit(1402000262.433:11): avc: denied { getattr } for pid=1479 comm="adbd" path="/data/anr/traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   20.252182] type=1400 audit(1402000262.473:12): avc: denied { read } for pid=1479 comm="adbd" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   20.252579] type=1400 audit(1402000262.473:13): avc: denied { open } for pid=1479 comm="adbd" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   27.104068] type=1400 audit(1402000268.479:14): avc: denied { read } for pid=2377 comm="sh" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:shell:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      
      Bug: 15450720
      
      (cherry picked from commit 4fd4a205)
      
      Change-Id: Ide6f62183a1c6e2af4cbe84bb0ebb928cd8e63b7
      cb182aba
    • Nick Kralevich's avatar
      Allow adbd / shell /data/anr access · 4fd4a205
      Nick Kralevich authored
      The shell user needs to be able to run commands like
      "cat /data/anr/traces.txt". Allow it.
      
      We also need to be able to pull the file via adb.
      "adb pull /data/anr/traces.txt". Allow it.
      
      Addresses the following denials:
      
      <4>[   20.212398] type=1400 audit(1402000262.433:11): avc: denied { getattr } for pid=1479 comm="adbd" path="/data/anr/traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   20.252182] type=1400 audit(1402000262.473:12): avc: denied { read } for pid=1479 comm="adbd" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   20.252579] type=1400 audit(1402000262.473:13): avc: denied { open } for pid=1479 comm="adbd" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:adbd:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      <4>[   27.104068] type=1400 audit(1402000268.479:14): avc: denied { read } for pid=2377 comm="sh" name="traces.txt" dev="mmcblk0p28" ino=325763 scontext=u:r:shell:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file
      
      Bug: 15450720
      Change-Id: I767102a7182895112838559b0ade1cd7c14459ab
      4fd4a205
  9. 03 Jun, 2014 1 commit
    • Nick Kralevich's avatar
      Remove obsolete vdc rule. · 24b56225
      Nick Kralevich authored
      As of system/core commit 225459a5da21e9397ca49b0d9af7d5fe3462706b,
      adbd no longer talks to vold. Remove the obsolete rule.
      
      Bug: 12504045
      Change-Id: I0a4f621afd8e5f8ab83219e7b0ff096c992d365f
      24b56225
  10. 23 May, 2014 1 commit
    • Stephen Smalley's avatar
      Restrict requesting contexts other than policy-defined defaults. · 356f4be6
      Stephen Smalley authored
      
      Writing to the /proc/self/attr files (encapsulated by the libselinux
      set*con functions) enables a program to request a specific security
      context for various operations instead of the policy-defined defaults.
      The security context specified using these calls is checked by an
      operation-specific permission, e.g. dyntransition for setcon,
      transition for setexeccon, create for setfscreatecon or
      setsockcreatecon, but the ability to request a context at all
      is controlled by a process permission.  Omit these permissions from
      domain.te and only add them back where required so that only specific
      domains can even request a context other than the default defined by
      the policy.
      
      Change-Id: I6a2fb1279318625a80f3ea8e3f0932bdbe6df676
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      356f4be6
  11. 15 Apr, 2014 1 commit
    • Nick Kralevich's avatar
      Label /dev/usb-ffs/adb functionfs · 77cc0550
      Nick Kralevich authored
      Newer adbd versions use functionfs instead of a custom adb usb gadget.
      Make sure the functionfs filesystem is properly labeled, and that adbd
      has access to the functionfs files.
      
      Once labeled, this addresses the following denials:
      
      <12>[   16.127191] type=1400 audit(949060866.189:4): avc:  denied  { read write } for  pid=223 comm="adbd" name="ep0" dev="functionfs" ino=5489 scontext=u:r:adbd:s0 tcontext=u:object_r:functionfs:s0 tclass=file
      <12>[   16.127406] type=1400 audit(949060866.189:5): avc:  denied  { open } for  pid=223 comm="adbd" path="/dev/usb-ffs/adb/ep0" dev="functionfs" ino=5489 scontext=u:r:adbd:s0 tcontext=u:object_r:functionfs:s0 tclass=file
      <12>[  377.366011] type=1400 audit(949061227.419:16): avc:  denied  { ioctl } for  pid=225 comm="adbd" path="/dev/usb-ffs/adb/ep2" dev="functionfs" ino=5564 scontext=u:r:adbd:s0 tcontext=u:object_r:functionfs:s0 tclass=file
      
      Change-Id: Iee8b522e48b4d677fd12f7c83dbc7ffbc9543ad2
      77cc0550
  12. 12 Mar, 2014 2 commits
    • dcashman's avatar
      Allow adbd access to gpu_device. · 4d529383
      dcashman authored
      Addresses denials seen when attempting to take a screencaputre from ddms:
      <5>[ 1232.327360] type=1400 audit(1393354131.695:41): avc:  denied  { read write } for  pid=18487 comm="screencap" name="nvhost-ctrl" dev="tmpfs" ino=4035 scontext=u:r:adbd:s0 tcontext=u:object_r:gpu_device:s0 tclass=chr_file
      
      Bug: 13188914
      
      (cherry picked from commit ddde8c29)
      
      Change-Id: I25c90a0f5dadf5f4e9f99cd27cf8740766a21aaa
      4d529383
    • dcashman's avatar
      Allow adbd access to gpu_device. · ddde8c29
      dcashman authored
      Addresses denials seen when attempting to take a screencaputre from ddms:
      <5>[ 1232.327360] type=1400 audit(1393354131.695:41): avc:  denied  { read write } for  pid=18487 comm="screencap" name="nvhost-ctrl" dev="tmpfs" ino=4035 scontext=u:r:adbd:s0 tcontext=u:object_r:gpu_device:s0 tclass=chr_file
      
      Bug: 13188914
      Change-Id: I758e4f87ab024035604d47eebae7f89f21ea1e3e
      ddde8c29
  13. 25 Feb, 2014 1 commit
  14. 24 Feb, 2014 1 commit
  15. 05 Feb, 2014 1 commit
    • Nick Kralevich's avatar
      Remove obsolete vdc rule. · 4e5dc85d
      Nick Kralevich authored
      As of system/core commit 225459a5da21e9397ca49b0d9af7d5fe3462706b,
      adbd no longer talks to vold. Remove the obsolete rule.
      
      Bug: 12504045
      Change-Id: I0a4f621afd8e5f8ab83219e7b0ff096c992d365f
      4e5dc85d
  16. 27 Jan, 2014 1 commit
    • Nick Kralevich's avatar
      Move adbd into enforcing (all build types) · f9563665
      Nick Kralevich authored
      adbd was only in enforcing for user builds. Commit
      Ib33c0dd2dd6172035230514ac84fcaed2ecf44d6 allows us to move
      it into enforcing for everyone. Do it.
      
      Change-Id: Ie1a3e5361c891d2c9366e11f35699e3146cc3d88
      f9563665
  17. 23 Jan, 2014 1 commit
    • Nick Kralevich's avatar
      Support running adbd in the su domain. · 7d0f955e
      Nick Kralevich authored
      When adbd runs as root, it transitions into the
      su domain. Add the various rules to support this.
      
      This is needed to run the adbd and shell domains in
      enforcing on userdebug / eng devices without breaking
      developer workflows.
      
      Change-Id: Ib33c0dd2dd6172035230514ac84fcaed2ecf44d6
      7d0f955e
  18. 13 Jan, 2014 1 commit
  19. 11 Jan, 2014 1 commit
    • Nick Kralevich's avatar
      allow adbd setpcap · 40ce0bb8
      Nick Kralevich authored
      adbd uses setpcap to drop capabilities from the bounding
      set on user builds. See system/core commit
      080427e4e2b1b72718b660e16b6cf38b3a3c4e3f
      
      Change-Id: I6aec8d321b8210ea50a56aeee9bc94738514beab
      40ce0bb8
  20. 02 Jan, 2014 1 commit
  21. 09 Dec, 2013 1 commit
  22. 21 Oct, 2013 1 commit
    • Nick Kralevich's avatar
      Move unconfined domains out of permissive mode. · 353c72e3
      Nick Kralevich authored
      This change removes the permissive line from unconfined
      domains. Unconfined domains can do (mostly) anything, so moving
      these domains into enforcing should be a no-op.
      
      The following domains were deliberately NOT changed:
      1) kernel
      2) init
      
      In the future, this gives us the ability to tighten up the
      rules in unconfined, and have those tightened rules actually
      work.
      
      When we're ready to tighten up the rules for these domains,
      we can:
      
      1) Remove unconfined_domain and re-add the permissive line.
      2) Submit the domain in permissive but NOT unconfined.
      3) Remove the permissive line
      4) Wait a few days and submit the no-permissive change.
      
      For instance, if we were ready to do this for adb, we'd identify
      a list of possible rules which allow adbd to work, re-add
      the permissive line, and then upload those changes to AOSP.
      After sufficient testing, we'd then move adb to enforcing.
      We'd repeat this for each domain until everything is enforcing
      and out of unconfined.
      
      Change-Id: If674190de3262969322fb2e93d9a0e734f8b9245
      353c72e3
  23. 01 Oct, 2013 1 commit
    • Stephen Smalley's avatar
      Label adb keys file and allow access to it. · 55540755
      Stephen Smalley authored
      
      The /adb_keys entry will only take effect if a restorecon is
      applied by init.rc on a kernel that includes the rootfs labeling
      support, but does no harm otherwise.
      
      The /data/misc/adb labeling ensures correct labeling of the adb_keys
      file created if the device has ro.adb.secure=1 set.
      
      Allow adbd to read the file.
      
      Change-Id: I97b3d86a69681330bba549491a2fb39df6cf20ef
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      55540755
  24. 20 May, 2013 1 commit
    • repo sync's avatar
      Make all domains unconfined. · 77d4731e
      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
      77d4731e
  25. 10 May, 2013 1 commit
  26. 09 May, 2013 1 commit
    • Nick Kralevich's avatar
      Remove sys_boot · 2bfb59df
      Nick Kralevich authored
      sys_boot is not needed for adb as of system/core commit
      ca8e66a8b0f843812014a28d49208f9f6f64ecbc
      
      sys_boot is not needed for system server as of frameworks/base
      commit dbcf2d7482562eff45ac727cea799b37a260e399
      
      Change-Id: I61379ea858e05acd239c9b16e4e2bf454af3f51c
      2bfb59df
  27. 01 May, 2013 1 commit
  28. 25 Apr, 2013 1 commit
  29. 05 Apr, 2013 2 commits
  30. 04 Apr, 2013 2 commits
  31. 03 Apr, 2013 2 commits
  32. 27 Mar, 2013 1 commit
  33. 22 Mar, 2013 2 commits
  34. 19 Nov, 2012 1 commit
    • Stephen Smalley's avatar
      Update policy for Android 4.2 / latest master. · 61c80d5e
      Stephen Smalley authored
      
      Update policy for Android 4.2 / latest master.
      Primarily this consists of changes around the bluetooth subsystem.
      The zygote also needs further permissions to set up /storage/emulated.
      adbd service now gets a socket under /dev/socket.
      keystore uses the binder.
      
      Change-Id: I8c5aeb8d100313c75169734a0fa614aa974b3bfc
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      61c80d5e