Skip to content
Snippets Groups Projects
  1. Jun 23, 2015
    • Stephen Smalley's avatar
      neverallow PROT_EXEC stack or heap. · 5328d974
      Stephen Smalley authored
      
      Despite removing these from AOSP policy they seem to still be
      present in device policies.  Prohibit them via neverallow.
      
      We would also like to minimize execmem to only app domains
      and others using ART, but that will first require eliminating it
      from device-specific service domains (which may only have it
      due to prior incorrect handling of text relocations).
      
      Change-Id: Id1f49566779d9877835497d8ec7537abafadadc4
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      5328d974
    • Jeff Vander Stoep's avatar
      Fix grouper build by allowing mknod in recovery · 9c7570ef
      Jeff Vander Stoep authored
      Change-Id: I2aef01ba72cae028d5e05deddbdeff674f9a534d
      9c7570ef
    • Nick Kralevich's avatar
      Allow /dev/klog access, drop mknod and __null__ access · 31d88a70
      Nick Kralevich authored
      Allow vold, healthd, slideshow, and watchdogd access to /dev/kmsg.
      These processes log to the kernel dmesg ring buffer, so they need
      write access to that file.
      
      Addresses the following denials:
      
          avc: denied { write } for pid=134 comm="watchdogd" name="kmsg" dev="tmpfs" ino=9248 scontext=u:r:watchdogd:s0 tcontext=u:object_r:kmsg_device:s0 tclass=chr_file permissive=0
          avc: denied { write } for pid=166 comm="healthd" name="kmsg" dev="tmpfs" ino=9248 scontext=u:r:healthd:s0 tcontext=u:object_r:kmsg_device:s0 tclass=chr_file permissive=0
          avc: denied { write } for pid=180 comm="vold" name="kmsg" dev="tmpfs" ino=9248 scontext=u:r:vold:s0 tcontext=u:object_r:kmsg_device:s0 tclass=chr_file permissive=0
      
      These denials were triggered by the change in
      https://android-review.googlesource.com/151209 . Prior to that change,
      any code which called klog_init would (unnecessarily) create the
      device node themselves, rather than using the already existing device
      node.
      
      Drop special /dev/__null__ handling from watchdogd. As of
      https://android-review.googlesource.com/148288 , watchdogd no longer
      creates it's own /dev/null device, so it's unnecessary for us
      to allow for it.
      
      Drop mknod from healthd, slideshow, and watchdogd. healthd and slideshow
      only needed mknod to create /dev/__kmsg__, which is now obsolete.
      watchdogd only needed mknod to create /dev/__kmsg__ and /dev/__null__,
      which again is now obsolete.
      
      (cherry picked from e2651972)
      
      Bug: 21242418
      Change-Id: If01c8001084575e7441253f0fa8b4179ae33f534
      31d88a70
  2. Jun 18, 2015
  3. Jun 16, 2015
  4. May 15, 2015
  5. May 14, 2015
  6. May 13, 2015
  7. May 06, 2015
  8. May 01, 2015
    • Stephen Smalley's avatar
      Ensure that domain and appdomain attributes are assigned. · 4a12d963
      Stephen Smalley authored
      
      Prevent defining any process types without the domain attribute
      so that all allow and neverallow rules written on domain are
      applied to all processes.
      
      Prevent defining any app process types without the appdomain
      attribute so that all allow and neverallow rules written on
      appdomain are applied to all app processes.
      
      Change-Id: I4cb565314fd40e1e82c4360efb671b175a1ee389
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      4a12d963
  9. Apr 28, 2015
  10. Apr 27, 2015
  11. Apr 24, 2015
  12. Apr 14, 2015
  13. Apr 09, 2015
    • dcashman's avatar
      Enforce more specific service access. · bd7f5803
      dcashman authored
      Move the remaining services from tmp_system_server_service to appropriate
      attributes and remove tmp_system_server and associated logging:
      
      registry
      restrictions
      rttmanager
      scheduling_policy
      search
      sensorservice
      serial
      servicediscovery
      statusbar
      task
      textservices
      telecom_service
      trust_service
      uimode
      updatelock
      usagestats
      usb
      user
      vibrator
      voiceinteraction
      wallpaper
      webviewupdate
      wifip2p
      wifi
      window
      
      Bug: 18106000
      Change-Id: Ia0a6d47099d82c53ba403af394537db6fbc71ca0
      bd7f5803
  14. Apr 02, 2015
    • Nick Kralevich's avatar
      domain: relax execmod restrictions · 998ce77f
      Nick Kralevich authored
      Some devices still have pre-built binaries with text relocations
      on them. As a result, it's premature to assert a neverallow rule
      for files in /system
      
      Bug: 20013628
      Change-Id: I3a1e43db5c610164749dee6882f645a0559c789b
      998ce77f
  15. Mar 27, 2015
    • Paul Lawrence's avatar
      Adding e4crypt support · 38af1da1
      Paul Lawrence authored
      Add selinux rules to allow file level encryption to work
      
      Change-Id: I1e4bba23e99cf5b2624a7df843688fba6f3c3209
      38af1da1
  16. Mar 24, 2015
    • Nick Kralevich's avatar
      add neverallow rules for execmod · 359101ac
      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
      359101ac
  17. Mar 19, 2015
    • Nick Kralevich's avatar
      Add new "procrank" SELinux domain. · a1913988
      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
      a1913988
  18. Mar 14, 2015
    • Nick Kralevich's avatar
      neverallow su_exec:file execute · 8bd13687
      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
      8bd13687
  19. Mar 09, 2015
    • dcashman's avatar
      Only allow system_server to send commands to zygote. · 8f81dcad
      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
      8f81dcad
  20. Feb 26, 2015
    • Sami Tolvanen's avatar
      Allow init to execute /sbin/slideshow · 9d87c647
      Sami Tolvanen authored
      Add rules to allow /sbin/slideshow to access framebuffer and input
      devices at early stages of boot, and rules to allow init to execute
      the program (from init.rc using exec).
      
      Needed by changes from
        I58c79a7f3ac747eec0d73a10f018d3d8ade9df7d
      
      Change-Id: I1d5018feb7025853f0bf81651f497fef8c3a6ab0
      9d87c647
  21. Feb 25, 2015
    • Nick Kralevich's avatar
      Revert /proc/net related changes · 5cf3994d
      Nick Kralevich authored
      Revert the tightening of /proc/net access. These changes
      are causing a lot of denials, and I want additional time to
      figure out a better solution.
      
      Addresses the following denials (and many more):
      
        avc: denied { read } for comm="SyncAdapterThre" name="stats" dev="proc" ino=X scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:proc_net:s0 tclass=file
        avc: denied { read } for comm="facebook.katana" name="iface_stat_fmt" dev="proc" ino=X scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:proc_net:s0 tclass=file
        avc: denied { read } for comm="IntentService[C" name="if_inet6" dev="proc" ino=X scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:proc_net:s0 tclass=file
        avc: denied { read } for comm="dumpstate" name="iface_stat_all" dev="proc" ino=X scontext=u:r:dumpstate:s0 tcontext=u:object_r:proc_net:s0 tclass=file
      
      This reverts commit 0f0324cc
      and commit 99940d1a
      
      Bug: 9496886
      Bug: 19034637
      Change-Id: I436a6e3638ac9ed49afbee214e752fe2b0112868
      5cf3994d
  22. Feb 24, 2015
  23. Feb 23, 2015
    • Nick Kralevich's avatar
      neverallow mounton lnk_file fifo_file sock_file · 74ddf301
      Nick Kralevich authored
      Add a compile time assertion that no SELinux rule exists which
      allows mounting on top of symbolic links, fifo files, or socket
      files. Remove the capability from unconfined domains.
      
      Change-Id: I6d7cc95cd17e2e5f165fa5948563800ed206bb71
      74ddf301
  24. Feb 11, 2015
    • Nick Kralevich's avatar
      domain.te: neverallow System V IPC classes · 14d5619a
      Nick Kralevich authored
      Android doesn't want to support System V IPC classes.
      Ensure that it isn't supported by adding a neverallow rule
      (compile time assertion).
      
      Change-Id: I278d45960ee557917584f9137323b4cabfe140a9
      14d5619a
  25. Feb 06, 2015
  26. Feb 05, 2015
  27. Jan 30, 2015
    • Nick Kralevich's avatar
      Add compile time checks for /data/dalvik-cache access · 3c77d4d1
      Nick Kralevich authored
      Add an SELinux neverallow rule (compile time assertion) that only
      authorized SELinux domains are writing to files in /data/dalvik-cache.
      
      Currently, SELinux policy only allows the following SELinux domains
      to perform writes to files in /data/dalvik-cache
      
        * init
        * zygote
        * installd
        * dex2oat
      
      For zygote, installd, and dex2oat, these accesses make sense.
      
      For init, we could further restrict init to just relabelfrom
      on /data/dalvik-cache files, and { create, write, setattr }
      on /data/dalvik-cache directories. Currently init has full
      write access, which can be reduced over time.
      
      This change was motivated by the discussion
      in https://android-review.googlesource.com/127582
      
      Remove /data/dalvik-cache access from the unconfined domain.
      This domain is only used by init, kernel, and fsck on user builds.
      The kernel and fsck domains have no need to access files in
      /data/dalvik-cache. Init has a need to relabel files, but
      that rule is already granted in init.te.
      
      The neverallow rule is intended to prevent regressions. Neverallow
      rules are CTS tested, so regressions won't appear on our devices
      or partner devices.
      
      Change-Id: I15e7d17b1121c556463114d1c6c49557a57911cd
      3c77d4d1
  28. Jan 22, 2015
    • Nick Kralevich's avatar
      domain.te: allow /proc/net/psched access · 0f0324cc
      Nick Kralevich authored
      external/sepolicy commit 99940d1a
      (https://android-review.googlesource.com/123331) removed /proc/net
      access from domain.te.
      
      Around the same time, system/core commit
      9a20e67fa62c1e0e0080910deec4be82ebecc922
      (https://android-review.googlesource.com/123531) was checked in.
      This change added libnl as a dependency of libsysutils.
      
      external/libnl/lib/utils.c has a function called get_psched_settings(),
      which is annotated with __attribute__((constructor)). This code
      gets executed when the library is loaded, regardless of whether or
      not other libnl code is executed.
      
      By adding the libnl dependency, even code which doesn't use the
      network (such as vold and logd) ends up accessing /proc/net/psched.
      
      For now, allow this behavior. However, in the future, it would be
      better to break this dependency so the additional code isn't loaded
      into processes which don't need it.
      
      Addresses the following denials:
      
        avc: denied { read } for  pid=148 comm="logd" name="psched" dev="proc" ino=4026536508 scontext=u:r:logd:s0 tcontext=u:object_r:proc_net:s0 tclass=file permissive=0
        avc: denied { read } for pid=152 comm="vold" name="psched" dev="proc" ino=4026536508 scontext=u:r:vold:s0 tcontext=u:object_r:proc_net:s0 tclass=file permissive=0
        avc: denied { read } for pid=930 comm="wpa_supplicant" name="psched" dev="proc" ino=4026536508 scontext=u:r:wpa:s0 tcontext=u:object_r:proc_net:s0 tclass=file permissive=0
      
      Bug: 19079006
      Change-Id: I1b6d2c144534d3f70f0028ef54b470a75bace1cf
      0f0324cc
  29. Jan 14, 2015
    • Nick Kralevich's avatar
      remove /proc/net read access from domain.te · 99940d1a
      Nick Kralevich authored
      SELinux domains wanting read access to /proc/net need to
      explicitly declare it.
      
      TODO: fixup the ListeningPortsTest cts test so that it's not
      broken.
      
      Bug: 9496886
      Change-Id: Ia9f1214348ac4051542daa661d35950eb271b2e4
      99940d1a
    • dcashman's avatar
      Make system_server_service an attribute. · 4a89cdfa
      dcashman authored
      Temporarily give every system_server_service its own
      domain in preparation for splitting it and identifying
      special services or classes of services.
      
      Change-Id: I81ffbdbf5eea05e0146fd7fd245f01639b1ae0ef
      4a89cdfa
  30. Dec 15, 2014
    • dcashman's avatar
      Restrict service_manager find and list access. · cd82557d
      dcashman authored
      All domains are currently granted list and find service_manager
      permissions, but this is not necessary.  Pare the permissions
      which did not trigger any of the auditallow reporting.
      
      Bug: 18106000
      Change-Id: Ie0ce8de2af8af2cbe4ce388a2dcf4534694c994a
      cd82557d
  31. Dec 10, 2014
  32. Dec 09, 2014
  33. Dec 05, 2014
  34. Nov 07, 2014
    • Nick Kralevich's avatar
      Allow recovery to create device nodes and modify rootfs · 1795b665
      Nick Kralevich authored
      tilapia's OTA code for updating the radio image needs to
      create files on rootfs and create a character device in /dev.
      Add an exception for recovery the the various neverallow rules
      blocking this behavior.
      
      (cherrypick, with modifications, from 0055ea90)
      
      Bug: 18281224
      Change-Id: I5c57afe0a10b4598fea17f9c5c833bd39551907e
      1795b665
Loading