Skip to content
Snippets Groups Projects
  1. Mar 29, 2016
    • Daichi Hirono's avatar
      Add mlstrustedobject to appfuse object type. · f19fb0c9
      Daichi Hirono authored
      To write bytes to appfuse file from priv_app, we need to specify
      mlstrustedobject.
      The CL fixes the following denial.
      
      type=1400 audit(0.0:77): avc: denied { write } for name="10" dev="fuse" ino=10 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:app_fuse_file:s0 tclass=file permissive=0
      
      BUG=23093747
      
      (cherry picked from commit 4d19f98c)
      
      Change-Id: I9901033bb3349d5def0bd7128db45a1169856dc1
      f19fb0c9
  2. Mar 25, 2016
  3. Mar 24, 2016
    • Mark Salyzyn's avatar
      Add recovery_persist & recovery_refresh · 05806470
      Mark Salyzyn authored
      (cherry pick from commit 16fe52c9)
      
      One time executables. recovery_refresh can be used at any time to
      ensure recovery logs in pmsg are re-placed at the end of the FIFO.
      recovery_persist takes the recovery logs in pmsg and drops them
      into /data/misc/recovery/ directory.
      
      Bug: 27176738
      Change-Id: Ife3cf323930fb7a6a5d1704667961f9d42bfc5ac
      05806470
    • dcashman's avatar
      Move sysfs_thermal to global policy and grant access. · 98eff7c3
      dcashman authored
      sysfs_thermal nodes are common enough to warrant an entry in global
      policy and the new HardwarePropertiesManagerService exists explicitly to
      expose some of this information.
      
      Address the following denials:
      avc: denied { search } for name="thermal" dev="sysfs" ino=17509 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=dir permissive=1
      avc: denied { read } for name="temp" dev="sysfs" ino=17848 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=file permissive=1
      avc: denied { open } for path="/sys/devices/virtual/thermal/thermal_zone8/temp" dev="sysfs" ino=17848 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=file permissive=1
      avc: denied { getattr } for path="/sys/devices/virtual/thermal/thermal_zone8/temp" dev="sysfs" ino=17848 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=file permissive=1
      
      Bug: 27809332
      Change-Id: I2dbc737971bf37d197adf0d5ff07cb611199300d
      98eff7c3
  4. Mar 11, 2016
    • dcashman's avatar
      Create sysfs_hwrandom type. · 85c0f8af
      dcashman authored
      HwRngTest needs access to the hwrandom sysfs files, but untrused_app
      does not have access to sysfs.  Give these files their own label and
      allow the needed read access.
      
      Bug: 27263241
      Change-Id: I718ba485e9e6627bac6e579f746658d85134b24b
      85c0f8af
  5. Mar 10, 2016
  6. Mar 09, 2016
    • Makoto Onuki's avatar
      Allow "shortcut manager" icons to be returned to apps · 085c1691
      Makoto Onuki authored
      ... and client apps to read them.
      
      A full path looks like this:
      /data/system_ce/[user-id]/shortcut_service/bitmaps/[creator-app-package]/[timestamp].png
      
      System server will:
      - Create/delete the directories.
      - Write/remove PNG files in them.
      - Open the PNG files and return file descriptors to client apps
      
      Client apps will:
      - Receive file descriptors and read from them.
      
      Bug 27548047
      
      Change-Id: I3d9ac6ab0c92b2953b84c3c5aabe1f653e6bea6b
      085c1691
  7. Mar 07, 2016
  8. Mar 05, 2016
    • Jeff Sharkey's avatar
      Cached ringtone files should be mlstrustedobject. · 2f829dcd
      Jeff Sharkey authored
      Both appdomain and priv_app can set the default ringtones, so the
      cache files need to be mlstrustedobject.
      
      avc: denied { write } for path="/data/system_de/0/ringtones/ringtone_cache" dev="mmcblk0p44" ino=1602501 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:ringtone_file:s0 tclass=file permissive=0
      
      Bug: 27366059
      Change-Id: Ib362f58b180a62bd46800083d6c538426f955b10
      2f829dcd
  9. Mar 04, 2016
    • Alex Deymo's avatar
      New postinstall domain and rules to run post-install program. · a52b5618
      Alex Deymo authored
      When using the A/B updater, a device specific hook is sometimes needed
      to run after the new partitions are updated but before rebooting into
      the new image. This hook is referred to throughout the code as the
      "postinstall" step.
      
      This patch creates a new execution domain "postinstall" which
      update_engine will use to run said hook. Since the hook needs to run
      from the new image (namelly, slot "B"), update_engine needs to
      temporarly mount this B partition into /postinstall and then run a
      program from there.
      
      Since the new program in B runs from the old execution context in A, we
      can't rely on the labels set in the xattr in the new filesystem to
      enforce the policies baked into the old running image. Instead, when
      temporarily mounting the new filesystem in update_engine, we override
      all the new file attributes with the new postinstall_file type by
      passing "context=u:object_r:postinstall_file:s0" to the mount syscall.
      This allows us to set new rules specific to the postinstall environment
      that are consistent with the rules in the old system.
      
      Bug: 27177071
      TEST=Deployed a payload with a trivial postinstall script to edison-eng.
      
      (cherry picked from commit 6cb2c893)
      
      Change-Id: I49a529eecf1ef0524819470876ef7c8c2659c7ef
      a52b5618
  10. Mar 02, 2016
    • Tao Bao's avatar
      Add /dev/socket/uncrypt. · c285cad1
      Tao Bao authored
      system_server used to communicate with uncrypt via files (e.g.
      /cache/recovery/command and /cache/recovery/uncrypt_status). Since A/B
      devices may not have /cache partitions anymore, we switch to communicate
      via /dev/socket/uncrypt to allow things like factory reset to keep
      working.
      
      Bug: 27176738
      Change-Id: I73b6d6f1ecdf16fd4f3600b5e524da06f35b5bca
      c285cad1
    • Nick Kralevich's avatar
      delete obsolete aliases · c321186e
      Nick Kralevich authored
      no longer used nor desired.
      
      Change-Id: Iac447fb2291371caa4a8ec255db114d9f7ccdddb
      c321186e
  11. Mar 01, 2016
    • Calin Juravle's avatar
      Add SElinux policies to allow foreign dex usage tracking. · 837bc42f
      Calin Juravle authored
      This is a special profile folder where apps will leave profile markers
      for the dex files they load and don't own. System server will read the
      markers and decide which apk should be fully compiled instead of
      profile guide compiled.
      
      Apps need only to be able to create (touch) files in this directory.
      System server needs only to be able to check wheter or not a file with a
      given name exists.
      
      Bug: 27334750
      Bug: 26080105
      
      Change-Id: I2256e4aba1ec0e5117de6497123223b9a74f404e
      837bc42f
  12. Feb 24, 2016
    • dcashman's avatar
      Label /proc/meminfo. · 971aeeda
      dcashman authored
      Address the following denial:
      m.chrome.canary: type=1400 audit(0.0:15): avc: granted { read open } for path="/proc/meminfo" dev="proc" ino=4026544360 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:proc:s0 tclass=file
      
      Bug: 22032619
      Chromium Bug: 586021
      
      Change-Id: I584345c84d870c313da69ec97a0b1e54c0eb9ee1
      971aeeda
    • Glenn Kasten's avatar
      Restore audio tee sink · 962e3a6a
      Glenn Kasten authored
      Bug: 27323882
      Change-Id: Idf3977d74817c4f90f9e993d2e1e5302cc56f41d
      962e3a6a
  13. Feb 23, 2016
    • Jeff Sharkey's avatar
      Offer to cache ringtones in system DE storage. · 62bb52c4
      Jeff Sharkey authored
      Ringtones often live on shared media, which is now encrypted with CE
      keys and not available until after the user is unlocked.  To improve
      the user experience while locked, cache the default ringtone,
      notification sound, and alarm sound in a DE storage area.
      
      Also fix bug where wallpaper_file wasn't getting data_file_type.
      
      Bug: 26730753
      Change-Id: Ib1f08d03eb734c3dce91daab41601d3ed14f4f0d
      62bb52c4
  14. Feb 19, 2016
  15. Feb 05, 2016
  16. Jan 29, 2016
  17. Jan 22, 2016
  18. Jan 05, 2016
    • dcashman's avatar
      Add sysfs_batteryinfo label. · a31755fa
      dcashman authored
      Shell user needs to be able to get current device battery_level via
      /sys/class/power_supply/battery/capacity.  Create a global label and
      corresponding policy for accessing this.  Rely on each device to label
      the appropriate sysfs entry.
      
      Bug: 26219114
      Change-Id: I2c5ef489a9db2fdf7bbd5afd04278214b814351c
      a31755fa
  19. Jan 04, 2016
    • Felipe Leme's avatar
      Creates a new permission for /cache/recovery · 549ccf77
      Felipe Leme authored
      This permission was created mostly for dumpstate (so it can include
      recovery files on bugreports when an OTA fails), but it was applied to
      uncrypt and recovery as well (since it had a wider access before).
      
      Grant access to cache_recovery_file where we previously granted access
      to cache_file. Add auditallow rules to determine if this is really
      needed.
      
      BUG: 25351711
      Change-Id: I07745181dbb4f0bde75694ea31b3ab79a4682f18
      549ccf77
    • dcashman's avatar
      Create sysfs_zram label. · 36f255ff
      dcashman authored
      Address following denials:
      avc: denied { getattr } for path="/sys/devices/virtual/block/zram0/disksize" dev="sysfs" ino=14958 scontext=u:r:init:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=file permissive=0
      avc: denied { search } for name="zram0" dev="sysfs" ino=14903 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=dir permissive=0
      avc: denied { read } for name="mem_used_total" dev="sysfs" ino=14970 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=file permissive=0
      avc: denied { write } for name="uevent" dev="sysfs" ino=14904 scontext=u:r:ueventd:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=file permissive=0
      avc: denied { open } for path="/sys/devices/virtual/block/zram0/uevent" dev="sysfs" ino=14904 scontext=u:r:ueventd:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=file permissive=0
      avc: denied { read } for pid=348 comm="vold" name="zram0" dev="sysfs" ino=15223 scontext=u:r:vold:s0 tcontext=u:object_r:sysfs_zram:s0 tclass=dir permissive=0
      avc: denied { search } for pid=3494 comm="ContactsProvide" name="zram0"dev="sysfs" ino=15223 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:sysfs_zram:s0 tclass=dir permissive=0
      
      Bug: 22032619
      Change-Id: I40cf918b7cafdba6cb3d42b04b1616a84e4ce158
      36f255ff
  20. Dec 14, 2015
    • Nick Kralevich's avatar
      label /sys/kernel/debug/tracing and remove debugfs write · fe12b616
      Nick Kralevich authored
      Start labeling the directory /sys/kernel/debug/tracing. The files
      in this directory need to be writable to the shell user.
      
      Remove global debugfs:file write access. This was added in the days
      before we could label individual debugfs files.
      
      Change-Id: I79c1fcb63b4b9b903dcabd99b6b25e201fe540a3
      fe12b616
  21. Dec 08, 2015
  22. Dec 03, 2015
    • Tom Cherry's avatar
      Support fine grain read access control for properties · 949d7cbc
      Tom Cherry authored
      Properties are now broken up from a single /dev/__properties__ file into
      multiple files, one per property label.  This commit provides the
      mechanism to control read access to each of these files and therefore
      sets of properties.
      
      This allows full access for all domains to each of these new property
      files to match the current permissions of /dev/__properties__.  Future
      commits will restrict the access.
      
      Bug: 21852512
      
      Change-Id: Ie9e43968acc7ac3b88e354a0bdfac75b8a710094
      949d7cbc
  23. Nov 16, 2015
  24. Nov 11, 2015
    • Calin Juravle's avatar
      Add SElinux rules for /data/misc/trace · f255d775
      Calin Juravle authored
      The directory is to be used in eng/userdebug build to store method
      traces (previously stored in /data/dalvik-cache/profiles).
      
      Bug: 25612377
      
      Change-Id: Ia4365a8d1f13d33ee54115dc5e3bf62786503993
      f255d775
  25. Nov 09, 2015
    • Jeff Vander Stoep's avatar
      Add autoplay_app domain · 400d3ac1
      Jeff Vander Stoep authored
      Initial check in of empty autoplay_app.te policy file.
      
      Create isAutoPlayApp input selector. Give this selector high precedence -
      only below isSystemServer.
      
      Add neverallow rule disallowing an app context with isAutoPlayApp=true from
      running in a domain other than autoplay_app.
      
      Change-Id: I1d06669d2f1acf953e50867dfa2b264ccaee29a4
      400d3ac1
  26. Oct 29, 2015
    • Nick Kralevich's avatar
      Create a new SELinux type for /data/nativetest · e9d261ff
      Nick Kralevich authored
      1) Don't use the generic "system_data_file" for the files in /data/nativetest.
      Rather, ensure it has it's own special label. This allows us to distinguish
      these files from other files in SELinux policy.
      
      2) Allow the shell user to execute files from /data/nativetest, on
      userdebug or eng builds only.
      
      3) Add a neverallow rule (compile time assertion + CTS test) that nobody
      is allowed to execute these files on user builds, and only the shell user
      is allowed to execute these files on userdebug/eng builds.
      
      Bug: 25340994
      Change-Id: I3e292cdd1908f342699d6c52f8bbbe6065359413
      e9d261ff
  27. Jul 30, 2015
  28. Jul 29, 2015
  29. Jul 28, 2015
  30. Jul 24, 2015
  31. Jul 13, 2015
    • dcashman's avatar
      Give /proc/iomem a more specific label. · 26cd912e
      dcashman authored
      /proc/iomem is currently given the proc label but contains system information
      which should not be available to all processes.
      
      Bug: 22008387
      Change-Id: I4f1821f40113a743ad986d13d8d130ed8b8abf2f
      26cd912e
  32. Jun 02, 2015
    • Mark Salyzyn's avatar
      logd: logpersistd · 7e0838aa
      Mark Salyzyn authored
      (cherry pick from commit 0d22c6ce)
      
      - Enable logpersistd to write to /data/misc/logd
      - Enable logpersistd to read from pstore to help complete any content
        lost by reboot disruption
      - Enable shell readonly ability logpersistd files in /data/misc/logd
      - Enable logcat -f when placed into logd context to act as a
        logpersistd (nee logcatd) agent, restrict access to run only in
        userdebug or eng
      
      Bug: 19608716
      Change-Id: I3209582bc796a1093c325c90068a48bf268e5ab5
      7e0838aa
    • Mark Salyzyn's avatar
      logd: logpersistd · 0d22c6ce
      Mark Salyzyn authored
      - Enable logpersistd to write to /data/misc/logd
      - Enable logpersistd to read from pstore to help complete any content
        lost by reboot disruption
      - Enable shell readonly ability logpersistd files in /data/misc/logd
      - Enable logcat -f when placed into logd context to act as a
        logpersistd (nee logcatd) agent, restrict access to run only in
        userdebug or eng
      
      Bug: 19608716
      Change-Id: I3209582bc796a1093c325c90068a48bf268e5ab5
      0d22c6ce
  33. May 20, 2015
Loading