Skip to content
Snippets Groups Projects
  1. Feb 21, 2018
    • Primiano Tucci's avatar
      perfetto: Make producer socket MLS-aware · 5ef6669b
      Primiano Tucci authored
      The previous selinux rules obtained via audit2allow didn't really
      work with the case of apps connecting to the producer socket,
      despite all the allow rules being correctly in place.
      This was failing our CTS tests.
      
      The reason for the failure (see denials pasted below) is due to
      Multi Level Security (for multi-user), which was still preventing
      apps form a different level to connect to the traced producer
      socket and write to the shmem buffers they get passed back.
      This CL tags the objects being accessed as mlstrusted.
      CTS tests pass with this CL.
      
      Denials:
      avc: denied { write } for pid=8545 comm="traced_probes" name="traced_producer" dev="tmpfs" ino=23629 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:traced_producer_socket:s0 tclass=sock_file permissive=1
      avc: denied { write } for pid=8545 comm="traced_probes" name="traced_producer" dev="tmpfs" ino=23629 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:traced_producer_socket:s0 tclass=sock_file permissive=1
      avc: denied { connectto } for pid=8545 comm="traced_probes" path="/dev/socket/traced_producer" scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:r:traced:s0 tclass=unix_stream_socket permissive=1
      avc: denied { connectto } for pid=8545 comm="traced_probes" path="/dev/socket/traced_producer" scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:r:traced:s0 tclass=unix_stream_socket permissive=1
      avc: denied { write } for pid=8545 comm="traced_probes" path=2F6D656D66643A706572666574746F5F73686D656D202864656C6574656429 dev="tmpfs" ino=104483 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:traced_tmpfs:s0 tclass=file permissive=1
      
      Change-Id: I1598bc0b07bf39b8d0420b66caf06a4ca884f383
      Bug: 73340039
      Test: CtsPerfettoTestCases
      5ef6669b
  2. Feb 16, 2018
  3. Feb 15, 2018
    • Joel Galenson's avatar
      Dontaudit denials caused by race with labeling. · f7ec4138
      Joel Galenson authored
      These denials seem to be caused by a race with the process that labels
      the files.  While we work on fixing them, hide the denials.
      
      Bug: 68864350
      Bug: 70180742
      Test: Built policy.
      Change-Id: I58a32e38e6384ca55e865e9575dcfe7c46b2ed3c
      f7ec4138
    • 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
  4. Feb 13, 2018
    • Bookatz's avatar
      Statsd allow shell in selinux policy · 022ab0e7
      Bookatz authored
      CTS tests need to be able to call, from hostside:
      adb shell cmd stats dump-report (and others)
      On a user build, this will fail because of an selinux policy violation
      from shell. This cl fixes this by granting shell permission.
      
      Similarly, Settings needs to communicate with statsd, so
      system_app-statsd binder calls are given permission.
      
      Bug: 72961153
      Bug: 73255014
      Test: run cts-dev -m CtsStatsdHostTestCases -t android.cts.statsd.atom.HostAtomTests
      Test: manual confirmation
      Change-Id: I6589ab4ef5c91a4a7f78eb97b63d9bb43e3d8f02
      022ab0e7
    • Primiano Tucci's avatar
      Allow perfetto traced_probes to access tracefs on user · b4b31f9d
      Primiano Tucci authored
      Allows the traced_probes daemon to access the core ftrace
      functionalities on user builds. Specifically this involves:
      - Whitelisting the per_cpu/ subdirectory to access:
        1) trace_pipe_raw file to allow perfetto to read the raw
           ftrace buffer (rather than the text-based /trace endpoint)
        2) cpuX/stats and cpuX/buffer_size_kb that allow to
           tune the buffer size per-cpu pipe and to get basic
           statistics about the ftrace buffer (#events, overruns)
      - Whitelistiing the full event directories rather than the
        /enable files. This gives also access to the /format files
        for the events that are already enabled on user builds.
        /format files simply describe the memory layout
        of the binary logs. Example: https://ghostbin.com/paste/f8m4k
      
      This still does NOT allow enabling the events labeled as
      "_debug" (mostly events that return activity on inodes).
      We'll deal with that separately as soon as we get a POC
      of inode resolution and a sensible blacklist/whitelist model.
      
      Bug: 70942310
      Change-Id: Ic15cca0a9d7bc0e45aa48097a94eadef44c333f8
      b4b31f9d
  5. Feb 12, 2018
  6. Feb 09, 2018
  7. Feb 08, 2018
    • Joel Galenson's avatar
      Track system_server SELinux denial. · 387729fe
      Joel Galenson authored
      This should fix presubmit tests.
      
      Bug: 73128755
      Test: Built policy.
      Change-Id: Ie389de04360090594e627e629a59a60092dda6ca
      387729fe
    • 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
  8. Feb 07, 2018
  9. Feb 06, 2018
    • Niklas Brunlid's avatar
      Allow system_server to create files on configfs · 8e0086a8
      Niklas Brunlid authored
      A change in the "open" syscall between kernel 4.4 and 4.9 means that
      the "create" action is now checked and makes system_server trigger
      an SELinux denial when PackageSettings is removing a user ID from
      Settings.java/writeKernelRemoveUserLPr() in PackageManager.
      
      Bug: 70150770
      Test: Manual
      - Add a new user on the device, no need to perform setup.
      - Wait 30s
      - Remove the added user
      - While running, check the result of:
          adb logcat -v time -b events | grep audit | grep system_server
      Change-Id: I1f490ea95d5bcb2adc76cba041bffbea131b447a
      8e0086a8
    • Tri Vo's avatar
      Add missing types to 27.0[.ignore].cil. · 7cc2a53c
      Tri Vo authored
      Bug: 69390067
      Test: build sepolicy
      Test: 27.0.ignore.cil is a subset 26.0.ignore.cil
      Change-Id: I6b9a1cfa8b38df4e97e5d63e2938ee9d5a4c83ec
      7cc2a53c
    • Tri Vo's avatar
      Remove reboot_data_file from 27 mapping file. · 6cc74c48
      Tri Vo authored
      reboot_data_file was already removed from 26.cil by aosp/505397
      
      Bug: 69390067
      Test: build sepolicy
      Change-Id: Ieff68cbdaf5b0ddc02d0d3e463765ba3716994ba
      6cc74c48
  10. Feb 05, 2018
    • Chris Morin's avatar
      prevent benign dex2oat selinux denial temporarily · 9644df47
      Chris Morin authored
      Since we now call patchoat --verify in zygote art loading code, we have
      the unintended effect of webview zygote calling patchoat --verify. This
      is undesireable since webview zygote doesn't need to verify the .art
      files after the app_process zygote has already done so. The exec of
      patchoat fails for webview zygote, and this change hides that. This
      change should be reverted when b/72957399 is resolved.
      
      Bug: 66697305
      Test: Ensure no new selinux denials were introduced.
      Change-Id: I4152edc920e5c436516b958b8c861dcc1c4751d8
      9644df47
    • 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
    • Andrew Scull's avatar
      authsecret HAL policies. · 64f35fa0
      Andrew Scull authored
      Bug: 71527305
      Test: compile and boot
      Change-Id: I91097bd62d99b8dd9eb6f53060badbaf0f4b8b4a
      (cherry picked from commit 1aedf4b5)
      64f35fa0
    • Bowgo Tsai's avatar
      Renames nonplat_* to vendor_* · afbcf21b
      Bowgo Tsai authored
      This change renames the non-platform sepolicy files on a DUT from
      nonplat_* to vendor_*.
      
      It also splits the versioned platform sepolicy from vendor_sepolicy.cil
      to a new file /vendor/etc/selinux/plat_pub_versioned.cil. And only keeps
      vendor customizations in vendor_sepolicy.cil.
      
      Build variable BOARD_SEPOLICY_DIRS is also renamed to
      BOARD_VENDOR_SEPOLICY_DIRS.
      
      Bug: 64240127
      Test: boot bullhead/taimen
      Change-Id: Iea2210c9c8ab30c9ecbcd8146f074e76e90e6943
      afbcf21b
  11. Feb 02, 2018
  12. Feb 01, 2018
  13. Jan 31, 2018
    • Yi Jin's avatar
      Add this rule allows incidentd CTS tests be able to use incident · 1002de4b
      Yi Jin authored
      command to fetch data from shell.
      
      Bug: 72502621
      Test: N/A
      Change-Id: I5b581f647c2f2932f0e3711965b98351ef7e6063
      1002de4b
    • Joel Galenson's avatar
      Track priv_app SELinux denial. · 2218696a
      Joel Galenson authored
      This should fix presubmit tests.
      
      Bug: 72749888
      Test: Built policy.
      Change-Id: I588bba52d26bcc7d93ebb16e28458d9125f73108
      2218696a
    • Bowgo Tsai's avatar
      Renames nonplat_* to vendor_* · 9aa8496f
      Bowgo Tsai authored
      This change renames the non-platform sepolicy files on a DUT from
      nonplat_* to vendor_*.
      
      It also splits the versioned platform sepolicy from vendor_sepolicy.cil
      to a new file /vendor/etc/selinux/plat_pub_versioned.cil. And only keeps
      vendor customizations in vendor_sepolicy.cil.
      
      Build variable BOARD_SEPOLICY_DIRS is also renamed to
      BOARD_VENDOR_SEPOLICY_DIRS.
      
      Bug: 64240127
      Test: boot an existing device
      Change-Id: Iea87a502bc6191cfaf8a2201f29e4a2add4ba7bf
      9aa8496f
    • Siarhei Vishniakou's avatar
      Allow input system access to /dev/v4l-touchX · 36a3df44
      Siarhei Vishniakou authored
      Bug: 62940136
      Test: read /dev/v4l-touchX from inputflinger
      
      Change-Id: Ifcece4192c567e0cbaba1b7ad40d25c8f34f8e40
      36a3df44
  14. Jan 30, 2018
    • Joel Galenson's avatar
      Clean up bug_map. · 26ccebd7
      Joel Galenson authored
      Remove bugs that have been fixed, re-map duped bugs, and alphabetize
      the list.
      
      Test: Booted Walleye and Sailfish, tested wifi and camera, and
      observed no new denials.
      
      Change-Id: I94627d532ea13f623fe29cf259dd404bfd850c13
      26ccebd7
    • Jeff Vander Stoep's avatar
      priv_app: suppress denials for /proc/stat · e88d6494
      Jeff Vander Stoep authored
      Bug: 72668919
      Test: build
      Change-Id: Id156b40a572dc0dbfae4500865400939985949d9
      e88d6494
  15. Jan 29, 2018
    • Ruchi Kandoi's avatar
      SE Policy for Secure Element app and Secure Element HAL · 8a2b4a78
      Ruchi Kandoi authored
      Test: App startup on boot
      Change-Id: I7740aafc088aadf676328e3f1bb8db5175d97102
      8a2b4a78
    • Joel Galenson's avatar
      Track usbd SELinux denial. · 07efe37c
      Joel Galenson authored
      This should fix presubmit tests.
      
      Bug: 72472544
      Test: Built policy.
      Change-Id: I01f0fe3dc759db66005e26d15395893d494c4bb7
      07efe37c
    • 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
    • Primiano Tucci's avatar
      SELinux policies for Perfetto cmdline client (/system/bin/perfetto) · 1a9f4f7a
      Primiano Tucci authored
      Instead of having statsd linking the perfetto client library
      and talk directly to its socket, we let just statsd exec()
      the /system/bin/perfetto cmdline client.
      
      There are two reasons for this:
      1) Simplify the interaction between statsd and perfetto, reduce
        dependencies, binary size bloat and isolate faults.
      2) The cmdline client also takes care of handing the trace to
        Dropbox. This allows to expose the binder interaction surface
        to the short-lived cmdline client and avoid to grant binder
        access to the perfetto traced daemon.
      
      This cmdline client will be used by:
       - statsd
       - the shell user (for our UI and Studio)
      
      Bug: 70942310
      Change-Id: I8cdde181481ad0a1a5cae5937ac446cedac54a1f
      1a9f4f7a
  16. Jan 28, 2018
  17. Jan 25, 2018
Loading