Skip to content
Snippets Groups Projects
  1. May 20, 2014
    • Nick Kralevich's avatar
      Don't allow ptrace on keystore · 8aa754c9
      Nick Kralevich authored
      keystore may hold sensitive information in it's memory. Don't
      allow anyone to ptrace keystore.
      
      Change-Id: I4e3717e482b9fd128d38ce687c03122d41678b6f
      8aa754c9
  2. May 17, 2014
  3. May 09, 2014
  4. Mar 18, 2014
    • Nick Kralevich's avatar
      debuggerd: Allow "debug.db.uid" usage · 77aa370c
      Nick Kralevich authored
      Allow the use of debug.db.uid on userdebug / eng builds.
      Setting this property allows debuggerd to suspend a process
      if it detects a crash.
      
      Make debug.db.uid only accessible to the su domain. This should
      not be used on a user build.
      
      Only support reading user input on userdebug / eng builds.
      
      Steps to reproduce with the "crasher" program:
      
        adb root
        adb shell setprop debug.db.uid 20000
        mmm system/core/debuggerd
        adb sync
        adb shell crasher
      
      Addresses the following denials:
      
      <5>[  580.637442] type=1400 audit(1392412124.612:149): avc:  denied  { read } for  pid=182 comm="debuggerd" name="input" dev="tmpfs" ino=5665 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=dir
      <5>[  580.637589] type=1400 audit(1392412124.612:150): avc:  denied  { open } for  pid=182 comm="debuggerd" name="input" dev="tmpfs" ino=5665 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=dir
      <5>[  580.637706] type=1400 audit(1392412124.612:151): avc:  denied  { read write } for  pid=182 comm="debuggerd" name="event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      <5>[  580.637823] type=1400 audit(1392412124.612:152): avc:  denied  { open } for  pid=182 comm="debuggerd" name="event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      <5>[  580.637958] type=1400 audit(1392412124.612:153): avc:  denied  { ioctl } for  pid=182 comm="debuggerd" path="/dev/input/event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      
      Bug: 12532622
      Change-Id: I63486edb73efb1ca12e9eb1994ac9e389251a3f1
      
      Conflicts:
      	debuggerd.te
      77aa370c
  5. Feb 18, 2014
    • Nick Kralevich's avatar
      debuggerd: Allow "debug.db.uid" usage · 116a20fd
      Nick Kralevich authored
      Allow the use of debug.db.uid on userdebug / eng builds.
      Setting this property allows debuggerd to suspend a process
      if it detects a crash.
      
      Make debug.db.uid only accessible to the su domain. This should
      not be used on a user build.
      
      Only support reading user input on userdebug / eng builds.
      
      Steps to reproduce with the "crasher" program:
      
        adb root
        adb shell setprop debug.db.uid 20000
        mmm system/core/debuggerd
        adb sync
        adb shell crasher
      
      Addresses the following denials:
      
      <5>[  580.637442] type=1400 audit(1392412124.612:149): avc:  denied  { read } for  pid=182 comm="debuggerd" name="input" dev="tmpfs" ino=5665 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=dir
      <5>[  580.637589] type=1400 audit(1392412124.612:150): avc:  denied  { open } for  pid=182 comm="debuggerd" name="input" dev="tmpfs" ino=5665 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=dir
      <5>[  580.637706] type=1400 audit(1392412124.612:151): avc:  denied  { read write } for  pid=182 comm="debuggerd" name="event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      <5>[  580.637823] type=1400 audit(1392412124.612:152): avc:  denied  { open } for  pid=182 comm="debuggerd" name="event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      <5>[  580.637958] type=1400 audit(1392412124.612:153): avc:  denied  { ioctl } for  pid=182 comm="debuggerd" path="/dev/input/event5" dev="tmpfs" ino=6723 scontext=u:r:debuggerd:s0 tcontext=u:object_r:input_device:s0 tclass=chr_file
      
      Bug: 12532622
      Change-Id: I63486edb73efb1ca12e9eb1994ac9e389251a3f1
      116a20fd
  6. Feb 04, 2014
    • Mark Salyzyn's avatar
      sepolicy: Add write_logd, read_logd & control_logd · 8ed750e9
      Mark Salyzyn authored
      - Add write_logd, read_logd and control_logd macros added along
        with contexts for user space logd.
      - Specify above on domain wide, or service-by-service basis
      - Add logd rules.
      - deprecate access_logcat as unused.
      - 'allow <domain> zygote:unix_dgram_socket write;' rule added to
        deal with fd inheritance. ToDo: investigate means to allow
        references to close, and reopen in context of application
        or call setsockcreatecon() to label them in child context.
      
      Change-Id: I35dbb9d5122c5ed9b8c8f128abf24a871d6b26d8
      8ed750e9
  7. Dec 09, 2013
    • Stephen Smalley's avatar
      Restrict ptrace access by debuggerd and unconfineddomain. · 95e0842e
      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: default avatarStephen Smalley <sds@tycho.nsa.gov>
      95e0842e
  8. Dec 06, 2013
  9. Oct 29, 2013
  10. Oct 21, 2013
    • 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
  11. Sep 27, 2013
  12. Jul 12, 2013
    • Nick Kralevich's avatar
      debuggerd.te: Fix relabelto policy denial · 08f01a33
      Nick Kralevich authored
      In 0c9708b2, we removed relabelto
      from unconfined.te.  This broke debuggerd.  Fixed.
      
      type=1400 audit(1373668537.550:5): avc:  denied  { relabelto } for  pid=44 comm="debuggerd" name="tombstones" dev="mtdblock1" ino=71 scontext=u:r:debuggerd:s0 tcontext=u:object_r:tombstone_data_file:s0 tclass=dir
      
      Change-Id: Ic025cbc030d6e776d9d87b1df3240fdc5f0b53d5
      08f01a33
  13. May 20, 2013
    • 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
  14. May 15, 2013
  15. Apr 05, 2013
    • William Roberts's avatar
      Give domains read access to security_file domain. · 7bb2a55c
      William Roberts authored
      /data/security is another location that policy
      files can reside. In fact, these policy files
      take precedence over their rootfs counterparts
      under certain circumstances. Give the appropriate
      players the rights to read these policy files.
      
      Change-Id: I9951c808ca97c2e35a9adb717ce5cb98cda24c41
      7bb2a55c
    • Stephen Smalley's avatar
      Allow all domains to read the log devices. · 81fe5f7c
      Stephen Smalley authored
      
      Read access to /dev/log/* is no longer restricted.
      Filtering on reads is performed per-uid by the kernel logger driver.
      
      Change-Id: Ia986cbe66b84f3898e858c60f12c7f3d63ac47cf
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      81fe5f7c
    • William Roberts's avatar
      Give domains read access to security_file domain. · 6c4c27e6
      William Roberts authored
      /data/security is another location that policy
      files can reside. In fact, these policy files
      take precedence over their rootfs counterparts
      under certain circumstances. Give the appropriate
      players the rights to read these policy files.
      
      Change-Id: I9951c808ca97c2e35a9adb717ce5cb98cda24c41
      6c4c27e6
  16. Apr 04, 2013
  17. Aug 10, 2012
  18. Jul 31, 2012
  19. Mar 07, 2012
  20. Jan 04, 2012
Loading