Skip to content
Snippets Groups Projects
  1. Mar 12, 2018
    • Bowgo Tsai's avatar
      Adding /odm support · 07ddddaf
      Bowgo Tsai authored
      /odm partition isn't mandatory and the following symlinks will exist on
      a device without /odm partition.
      
        /odm/app ->/vendor/odm/app
        /odm/bin ->/vendor/odm/bin
        /odm/etc ->/vendor/odm/etc
        /odm/firmware ->/vendor/odm/firmware
        /odm/framework ->/vendor/odm/framework
        /odm/lib -> /vendor/odm/lib
        /odm/lib64 -> /vendor/odm/lib64
        /odm/overlay -> /vendor/odm/overlay
        /odm/priv-app -> /vendor/odm/priv-app
      
      This CL allows all domains to access the symlinks, also removes the
      Treble compliance neverallows on them because the actual restrictions
      should apply to the real path directly.
      
      Bug: 70678783
      Test: boot a device
      Change-Id: If1522780a13710d8a592272dc688685cbae29f52
      (cherry picked from commit dd6efea2)
      07ddddaf
  2. Mar 11, 2018
  3. Mar 08, 2018
    • Amit Mahajan's avatar
      Move rild from public to vendor. · eeda6c61
      Amit Mahajan authored
      Also change the neverallow exceptions to be for hal_telephony_server
      instead of rild.
      
      Test: Basic telephony sanity, treehugger
      Bug: 36427227
      Change-Id: If892b28416d98ca1f9c241c5fcec70fbae35c82e
      eeda6c61
  4. Feb 28, 2018
    • Jeff Vander Stoep's avatar
      kernel: exempt from vendor_file restrictions · 1242c940
      Jeff Vander Stoep authored
      The kernel is unusual in that it's both a core process, but vendor
      provided. Exempt it from the restriction against accessing files from
      on /vendor. Also, rework the neverallow rule so that it disallows
      opening/modifying files, but allows reading files passed over IPC.
      
      Bug: 68213100
      Test: build (this is a build-time test)
      Change-Id: I2f6b2698ec45d2e8480dc1de47bf12b9b53c4446
      1242c940
  5. Feb 23, 2018
    • Robert Sesek's avatar
      Remove rules for starting the webview_zygote as a child of init. · 869562e9
      Robert Sesek authored
      The webview_zygote is now launched as a child-zygote process from the
      main zygote process.
      
      Bug: 63749735
      Test: m
      Test: Launch "Third-party licenses" activity from Settings, and it
            renders correctly via the WebView.
      Merged-In: I9c948b58a969d35d5a5add4b6ab62b8f990645d1
      Change-Id: I153476642cf14883b0dfea0d9f5b3b5e30ac1c08
      869562e9
    • Jeff Vander Stoep's avatar
      Useful neverallow errors · 7636d607
      Jeff Vander Stoep authored
      Neverallow errors include the file name and line number of the
      violated rule. However, if multiple neverallow rules are included
      within a single macro, then the line number is for the entire macro,
      not the individual neverallow rule that is violated. To fix this,
      only include one neverallow rule per macro.
      
      This changes nothing on device, nor does it change the results of
      compilation, it only makes the printed errors more useful.
      
      Bug: 69139821
      Test: build aosp_taimen-userdebug (neverallow rules are build time
          tests)
      
      Change-Id: Id0fc5906431db20e71265c7e9d55fbee4bdf53db
      7636d607
  6. Feb 22, 2018
    • Sandeep Patil's avatar
      Add label for kernel test files and executables · 34e35e9e
      Sandeep Patil authored
      
      This required for kernel to do loopback mounts on filesystem
      images created by the kernel system call tests in LTP.
      
      Add a corresponding neverallow to stop all domains from accessing
      the location at /data/local/tmp/ltp.
      
      Bug: 73220071
      Test: Boot sailfish successfully
      Test: run vts-kernel -m VtsKernelLtp -t syscalls.fchown04
      
      Change-Id: I73f5f14017e22971fc246a05751ba67be4653bca
      Signed-off-by: default avatarSandeep Patil <sspatil@google.com>
      34e35e9e
  7. Feb 16, 2018
    • Robert Sesek's avatar
      Remove rules for starting the webview_zygote as a child of init. · ca4c4e57
      Robert Sesek authored
      The webview_zygote is now launched as a child-zygote process from the
      main zygote process.
      
      Bug: 63749735
      Test: m
      Test: Launch "Third-party licenses" activity from Settings, and it
            renders correctly via the WebView.
      Change-Id: I9c948b58a969d35d5a5add4b6ab62b8f990645d1
      ca4c4e57
  8. Feb 15, 2018
    • Robert Sesek's avatar
      SELinux changes to accomodate starting the webview_zygote as a child of the zygote. · febdfa4e
      Robert Sesek authored
      In this architecture, the system_server instructs the zygote to fork a
      child-zygote to be the webview_zygote. The system_server tells this new
      zygote to listen for fork requests on a random abstract unix socket of
      its choosing.
      
      A follow-up CL will remove the rules for starting webview_zygote via
      init.
      
      Bug: 63749735
      Test: m
      Test: Launch "Third-party licenses" activity from Settings, and it
            renders correctly via the WebView.
      Merged-In: I864743943c11c18de386010ecd4b616721cb9954
      Change-Id: I1c352e47b66eca3a3fa641daa6ecc3e7a889b54e
      febdfa4e
  9. Feb 14, 2018
    • Robert Sesek's avatar
      SELinux changes to accomodate starting the webview_zygote as a child of the zygote. · bacb19b9
      Robert Sesek authored
      In this architecture, the system_server instructs the zygote to fork a
      child-zygote to be the webview_zygote. The system_server tells this new
      zygote to listen for fork requests on a random abstract unix socket of
      its choosing.
      
      A follow-up CL will remove the rules for starting webview_zygote via
      init.
      
      Bug: 63749735
      Test: m
      Test: Launch "Third-party licenses" activity from Settings, and it
            renders correctly via the WebView.
      Change-Id: I864743943c11c18de386010ecd4b616721cb9954
      bacb19b9
  10. Feb 09, 2018
  11. Feb 08, 2018
    • Jeff Vander Stoep's avatar
      label /data/vendor{_ce,_de} · d25ccabd
      Jeff Vander Stoep authored
      Restrictions introduced in vendor init mean that new devices
      may not no longer exempt vendor init from writing to system_data_file.
      This means we must introduce a new label for /data/vendor which
      vendor_init may write to.
      
      Bug: 73087047
      Test: build and boot Taimen and Marlin. Complete SUW, enroll fingerprint
          No new denials.
      
      Change-Id: I65f904bb28952d4776aab947515947e14befbe34
      d25ccabd
  12. Feb 07, 2018
    • Tri Vo's avatar
      shell: remove from system_executes_vendor_violators. · bfe51254
      Tri Vo authored
      And grant explicit exemption from system_executes_vendor_violators
      neverallow rules.
      
      This does not change the policy, but is needed to test the violator
      attribute for emptiness.
      
      Bug: 72662597
      Test: build sepolicy
      Change-Id: Iba79bb42e1381b221fe0dc53470f62f8267a4791
      bfe51254
  13. Feb 05, 2018
    • Carmen Jackson's avatar
      Use a whitelisting strategy for tracefs. · 2c8ca45d
      Carmen Jackson authored
      This changes tracefs files to be default-enabled in debug mode, but
      default-disabled with specific files enabled in user mode.
      
      Bug: 64762598
      Test: Successfully took traces in user mode.
      
      Change-Id: I572ea22253e0c1e42065fbd1d2fd7845de06fceb
      2c8ca45d
  14. Jan 31, 2018
  15. Jan 30, 2018
    • Jeff Vander Stoep's avatar
      Test that /data is properly labeled · ccf965e9
      Jeff Vander Stoep authored
      Data outside of /data/vendor should have the core_data_file_type.
      Exempt data_between_core_and_vendor for some types.
      
      Ensure core_data_file_type and coredomain_socket do not get expanded
      to their underlying types.
      
      Test: build sepolicy for all targets in master (this is a build time
          test)
      Bug: 34980020
      Change-Id: I59387a87875f4603a001fb03f22fa31cae84bf5a
      (cherry picked from commit bdd45479)
      ccf965e9
  16. Jan 29, 2018
    • Tom Cherry's avatar
      Remove vendor_init from coredomain · 9c778045
      Tom Cherry authored
      vendor_init exists on the system partition, but it is meant to be an
      extention of init that runs with vendor permissions for executing
      vendor scripts, therefore it is not meant to be in coredomain.
      
      Bug: 62875318
      Test: boot walleye
      Merged-In: I01af5c9f8b198674b15b90620d02725a6e7c1da6
      Change-Id: I01af5c9f8b198674b15b90620d02725a6e7c1da6
      9c778045
  17. Jan 25, 2018
    • Tom Cherry's avatar
      Neverallow vendor_init from writing system_data_file · d1dd6fcd
      Tom Cherry authored
      This neverallow exception is not needed.
      
      Bug: 62875318
      Test: build walleye, bullhead
      Change-Id: Ide37ef9fe7a0e1cc4a1809589f78052007698cf5
      d1dd6fcd
    • Tom Cherry's avatar
      Remove vendor_init from coredomain · 70e8f421
      Tom Cherry authored
      vendor_init exists on the system partition, but it is meant to be an
      extention of init that runs with vendor permissions for executing
      vendor scripts, therefore it is not meant to be in coredomain.
      
      Bug: 62875318
      Test: boot walleye
      Change-Id: I01af5c9f8b198674b15b90620d02725a6e7c1da6
      70e8f421
  18. Jan 24, 2018
    • Jeff Vander Stoep's avatar
      Test that /data is properly labeled · bdd45479
      Jeff Vander Stoep authored
      Data outside of /data/vendor should have the core_data_file_type.
      Exempt data_between_core_and_vendor for some types.
      
      Ensure core_data_file_type and coredomain_socket do not get expanded
      to their underlying types.
      
      Test: build sepolicy for all targets in master (this is a build time
          test)
      Bug: 34980020
      Change-Id: I59387a87875f4603a001fb03f22fa31cae84bf5a
      bdd45479
  19. Jan 23, 2018
    • Andreas Huber's avatar
      Fingerprint data is now stored in one of two ways depending on the · 6116daa7
      Andreas Huber authored
      shipping API version:
      
      For devices shipped before Android P nothing changes, data is stored
      under /data/system/users/<user-id>/fpdata/...
      
      Devices shipped from now on will instead store fingerprint data under
      /data/vendor_de/<user-id>/fpdata.
      
      Support for /data/vendor_de and /data/vendor_ce has been added to vold.
      
      Bug: 36997597
      Change-Id: Ibc7cc33b756f64abe68a749c0ada0ca4f6d92514
      Test: manually
      6116daa7
    • Dongwon Kang's avatar
      Allow mediaextractor to load libraries from apk_data_file · 1134bd00
      Dongwon Kang authored
      This is an experimental feature only on userdebug and eng build.
      
      Test: play MP4 file. install & uninstall media update apk.
      Bug: 67908547
      Change-Id: I513cdbfda962f00079e886b7a42f9928e81f6474
      1134bd00
  20. Jan 22, 2018
  21. Jan 19, 2018
  22. Jan 18, 2018
  23. Jan 16, 2018
  24. Jan 12, 2018
  25. Jan 10, 2018
    • Tri Vo's avatar
      Coredomain can't execute vendor code. · 07dd2c9e
      Tri Vo authored
      Bug: 62041836
      Test: sepolicy builds
      Change-Id: Ie6052209b3901eaad8496b8fc9681421d7ee3c1c
      07dd2c9e
    • Jaekyun Seok's avatar
      Whitelist exported platform properties · e4971454
      Jaekyun Seok authored
      This CL lists all the exported platform properties in
      private/exported_property_contexts.
      
      Additionally accessing core_property_type from vendor components is
      restricted.
      Instead public_readable_property_type is used to allow vendor components
      to read exported platform properties, and accessibility from
      vendor_init is also specified explicitly.
      
      Note that whitelisting would be applied only if
      PRODUCT_COMPATIBLE_PROPERTY is set on.
      
      Bug: 38146102
      Test: tested on walleye with PRODUCT_COMPATIBLE_PROPERTY=true
      Change-Id: I304ba428cc4ca82668fec2ddeb17c971e7ec065e
      e4971454
    • Primiano Tucci's avatar
      Perfetto SELinux policies · c80f9e03
      Primiano Tucci authored
      Perfetto is a performance instrumentation and logging framework,
      living in AOSP's /external/pefetto.
      Perfetto introduces in the system one binary and two daemons
      (the binary can specialize in either depending on the cmdline).
      
      1) traced: unprivileged daemon. This is architecturally similar to logd.
         It exposes two UNIX sockets:
         - /dev/socket/traced_producer : world-accessible, allows to stream
           tracing data. A tmpfs file descriptor is sent via SCM_RIGHTS
           from traced to each client process, which needs to be able to
           mmap it R/W (but not X)
         - /dev/socket/traced_consumer : privilege-accessible (only from:
           shell, statsd). It allows to configure tracing and read the trace
           buffer.
      2) traced_probes: privileged daemon. This needs to:
         - access tracingfs (/d/tracing) to turn tracing on and off.
         - exec atrace
         - connect to traced_producer to stream data to traced.
      
      init.rc file:
      https://android-review.googlesource.com/c/platform/external/perfetto/+/575382/14/perfetto.rc
      
      Bug: 70942310
      Change-Id: Ia3b5fdacbd5a8e6e23b82f1d6fabfa07e4abc405
      c80f9e03
  26. Jan 05, 2018
    • Joel Galenson's avatar
      Update neverallow exception. · 8d92a9a1
      Joel Galenson authored
      This fixes an incorrect exception in the neverallow rule.
      
      Test: Built policy for all lunch targets.
      Change-Id: I283833131c6f1fd741e934de24c838594ac38a18
      8d92a9a1
  27. Jan 04, 2018
  28. Dec 22, 2017
  29. Dec 20, 2017
  30. Dec 16, 2017
    • Jeff Vander Stoep's avatar
      Audit app access to /proc/net/* · 84f96859
      Jeff Vander Stoep authored
      Many processes including third party apps are expected to
      access /proc/net/xt_qtaguid/stats. Give this file a new label
      to avoid spamming the logs and temporarily grant read access to
      all processes.
      
      Read-only permission is adequate for all processes based on unix
      permissions.
      sailfish:/ # ls -laZ /proc/net/xt_qtaguid/stats
      -r--r--r--  1 root net_bw_stats u:object_r:proc_net_xt_qtaguid_stats:s0 stats
      
      Bug: 9496886
      Bug: 68016944
      Bug: 70722355
      Test: Build/flash Sailfish. Browse in Chrome and watch videos in youtube.
          No "denied" or "granted" selinux messages observed in the logs.
      
      Change-Id: I29f1ee806c8149988b9b93a950790d14754927ef
      84f96859
  31. Dec 13, 2017
    • Tom Cherry's avatar
      Add /dev/__properties__/property_info · 8b5433a9
      Tom Cherry authored
      Allow init to create a serialized property_info file and allow all
      processes to read it.
      
      Bug: 36001741
      Test: boot bullhead, walleye using property_info
      
      Change-Id: Ie51d4c0f0221b128dd087029c811fda15b4d7093
      8b5433a9
  32. Dec 11, 2017
    • Jeff Vander Stoep's avatar
      Restore recovery's ability to format cache and preserve logs · 87dd195b
      Jeff Vander Stoep authored
      Commit b8b4f5d6 'Clean up old file-based OTA SELinux rules' removed
      many permissions from recovery, a few of which are still required.
      Restore these.
      
      [ 2918.409108] type=1400 audit(2327427.540:159): avc:  denied
      { search } for  pid=339 comm="recovery" name="/" dev="mmcblk0p38"
      ino=2 scontext=u:r:recovery:s0 tcontext=u:object_r:unlabeled:s0
      tclass=dir permissive=0
      [ 2586.563071] E:Failed to mount / create /cache/recovery: Permission
      denied
      [ 2586.780320] E:Can't open /cache/recovery/log: Permission denied
      [ 2586.850399] E:Can't open /cache/recovery/last_log: Permission
      denied
      [ 2586.918979] E:Can't open /cache/recovery/last_install: Permission
      denied
      
      [   54.035867] type=1400 audit(59206654.526:12): avc:  denied  { chown }
      for  pid=330 comm="recovery" capability=0  scontext=u:r:recovery:s0
      tcontext=u:r:recovery:s0 tclass=capability permissive=0a
      
      Bug: 70350029
      Test: xunchang to test
      Change-Id: I46ab049b8eb600b44c84a61777fade150cadd197
      87dd195b
  33. Dec 08, 2017
Loading