Skip to content
Snippets Groups Projects
  1. Feb 06, 2017
    • Treehugger Robot's avatar
      Merge "Allow HWC to be binderized" · 43916281
      Treehugger Robot authored
      43916281
    • Chia-I Wu's avatar
      Allow HWC to be binderized · 1b95d88c
      Chia-I Wu authored
      Test: manual
      Bug: 32021609
      Change-Id: I6793794f3b1fb95b8dd9336f75362447de618274
      1b95d88c
    • Stephen Smalley's avatar
      Remove obsolete netlink_firewall_socket and netlink_ip6fw_socket classes. · 4921085d
      Stephen Smalley authored
      
      The implementation for NETLINK_FIREWALL and NETLINK_IP6_FW protocols
      was removed from the kernel in commit
      d16cf20e2f2f13411eece7f7fb72c17d141c4a84 ("netfilter: remove ip_queue
      support") circa Linux 3.5.  Unless we need to retain compatibility
      for kernels < 3.5, we can drop these classes from the policy altogether.
      
      Possibly the neverallow rule in app.te should be augmented to include
      the newer netlink security classes, similar to webview_zygote, but
      that can be a separate change.
      
      Test: policy builds
      
      Change-Id: Iab9389eb59c96772e5fa87c71d0afc86fe99bb6b
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      4921085d
    • Stephen Smalley's avatar
      Define extended_socket_class policy capability and socket classes · 431bdd9f
      Stephen Smalley authored
      
      Add a definition for the extended_socket_class policy capability used
      to enable the use of separate socket security classes for all network
      address families rather than the generic socket class.  The capability
      also enables the use of separate security classes for ICMP and SCTP
      sockets, which were previously mapped to rawip_socket class.  Add
      definitions for the new socket classes and access vectors enabled by
      this capability.  Add the new socket classes to the socket_class_set
      macro, and exclude them from webview_zygote domain as with other socket
      classes.
      
      Allowing access by specific domains to the new socket security
      classes is left to future commits.  Domains previously allowed
      permissions to the 'socket' class will require permission to the
      more specific socket class when running on kernels with this support.
      
      The kernel support will be included upstream in Linux 4.11.  The
      relevant kernel commits are da69a5306ab92e07224da54aafee8b1dccf024f6
      ("selinux: support distinctions among all network address families"),
      ef37979a2cfa3905adbf0c2a681ce16c0aaea92d ("selinux: handle ICMPv6
      consistently with ICMP"), and b4ba35c75a0671a06b978b6386b54148efddf39f
      ("selinux: drop unused socket security classes").
      
      This change requires selinux userspace commit
      d479baa82d67c9ac56c1a6fa041abfb9168aa4b3 ("libsepol: Define
      extended_socket_class policy capability") in order to build the
      policy with this capability enabled.  This commit is already in
      AOSP master.
      
      Test: policy builds
      
      Change-Id: I788b4be9f0ec0bf2356c0bbef101cd42a1af49bb
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      431bdd9f
    • Stephen Smalley's avatar
      Define the user namespace capability classes and access vectors. · 8a003607
      Stephen Smalley authored
      
      Kernel commit 8e4ff6f228e4722cac74db716e308d1da33d744f
      (selinux: distinguish non-init user namespace capability checks)
      introduced support for distinguishing capability
      checks against a target associated with the init user namespace
      versus capability checks against a target associated with a non-init
      user namespace by defining and using separate security classes for the
      latter.  This support is needed on Linux to support e.g. Chrome usage of
      user namespaces for the Chrome sandbox without needing to allow Chrome to
      also exercise capabilities on targets in the init user namespace.
      
      Define the new security classes and access vectors for the Android policy.
      Refactor the original capability and capability2 access vector definitions
      as common declarations to allow reuse by the new cap_userns and cap2_userns
      classes.
      
      This change does not allow use of the new classes by any domain; that
      is deferred to future changes as needed if/when Android enables user
      namespaces and the Android version of Chrome starts using them.
      
      The kernel support went upstream in Linux 4.7.
      
      Based on the corresponding refpolicy patch by Chris PeBenito, but
      reworked for the Android policy.
      
      Test: policy builds
      
      Change-Id: I71103d39e93ee0e8c24816fca762944d047c2235
      Signed-off-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
      8a003607
    • Abodunrinwa Toki's avatar
    • Josh Gao's avatar
      Merge changes from topic 'debuggerd_ambient' · d765766b
      Josh Gao authored
      * changes:
        crash_dump: dontaudit CAP_SYS_PTRACE denial.
        crash_dump: don't allow CAP_SYS_PTRACE or CAP_KILL.
      d765766b
    • Chad Brubaker's avatar
      Move neverallows from untrusted_app.te to app_neverallows.te · 46e5a060
      Chad Brubaker authored
      The neverallows in untrusted_app will all apply equally to ephemeral app
      and any other untrusted app domains we may add, so this moves them to a
      dedicated separate file.
      
      This also removes the duplicate rules from isolated_app.te and ensures
      that all the untrusted_app neverallows also apply to isolated_app.
      
      Test: builds
      Change-Id: Ib38e136216ccbe5c94daab732b7ee6acfad25d0b
      46e5a060
    • Chad Brubaker's avatar
      Merge ephemeral data and apk files into app · 4c40d734
      Chad Brubaker authored
      The rules for the two types were the same and /data/app-ephemeral is
      being removed. Remove these types.
      
      Test: Builds
      Change-Id: I520c026395551ad1362dd2ced53c601d9e6f9b28
      4c40d734
  2. Feb 04, 2017
  3. Feb 03, 2017
  4. Feb 02, 2017
  5. Feb 01, 2017
    • Max Bires's avatar
      Removing init and ueventd access to generic char files · 3171829a
      Max Bires authored
      There are many character files that are unreachable to all processes
      under selinux policies. Ueventd and init were the only two domains that
      had access to these generic character files, but auditing proved there
      was no use for that access. In light of this, access is being completely
      revoked so that the device nodes can be removed, and a neverallow is
      being audited to prevent future regressions.
      
      Test: The device boots
      Bug: 33347297
      Change-Id: If050693e5e5a65533f3d909382e40f9c6b85f61c
      3171829a
    • Mark Salyzyn's avatar
      542a4626
    • Eugene Susla's avatar
      SELinux permissions for companion device system service · 3411dfb6
      Eugene Susla authored
      Required for I0aeb653afd65e4adead13ea9c7248ec20971b04a
      
      Test: Together with I0aeb653afd65e4adead13ea9c7248ec20971b04a, ensure that the
      system service works
      Bug: b/30932767
      Change-Id: I994b1c74763c073e95d84222e29bfff5483c6a07
      3411dfb6
  6. Jan 31, 2017
    • Calin Juravle's avatar
      Remove SElinux audit to libart_file · 01ee59a7
      Calin Juravle authored
      Since it was introduced it caused quite a few issues and it spams the
      SElinux logs unnecessary.
      
      The end goal of the audit was to whitelist the access to the
      interpreter. However that's unfeasible for now given the complexity.
      
      Test: devices boots and everything works as expected
            no more auditallow logs
      
      Bug: 29795519
      Bug: 32871170
      Change-Id: I9a7a65835e1e1d3f81be635bed2a3acf75a264f6
      01ee59a7
    • Alex Klyubin's avatar
      9e90f83e
    • Mark Salyzyn's avatar
      logd: add getEventTag command and service · 384ce662
      Mark Salyzyn authored
      The event log tag service uses /dev/event-log-tags, pstore and
      /data/misc/logd/event-log-tags as sticky storage for the invented
      log tags.
      
      Test: gTest liblog-unit-tests, logd-unit-tests & logcat-unit-tests
      Bug: 31456426
      Change-Id: Iacc8f36f4a716d4da8dca78a4a54600ad2a288dd
      384ce662
    • Mark Salyzyn's avatar
      logd: restrict access to /dev/event-log-tags · d33a9a19
      Mark Salyzyn authored
      Create an event_log_tags_file label and use it for
      /dev/event-log-tags.  Only trusted system log readers are allowed
      direct read access to this file, no write access.  Untrusted domain
      requests lack direct access, and are thus checked for credentials via
      the "plan b" long path socket to the event log tag service.
      
      Test: gTest logd-unit-tests, liblog-unit-tests and logcat-unit-tests
      Bug: 31456426
      Bug: 30566487
      Change-Id: Ib9b71ca225d4436d764c9bc340ff7b1c9c252a9e
      d33a9a19
    • Alex Klyubin's avatar
      Device-agnostic policy for vendor image · 5596172d
      Alex Klyubin authored
      Default HAL implementations are built from the platform tree and get
      placed into the vendor image. The SELinux rules needed for these HAL
      implementations to operate thus need to reside on the vendor
      partition.
      
      Up to now, the only place to define such rules in the source tree was
      the system/sepolicy/public directory. These rules are placed into the
      vendor partition. Unfortunately, they are also placed into the
      system/root partition, which thus unnecessarily grants these rules to
      all HAL implementations of the specified service, default/in-process
      shims or not.
      
      This commit adds a new directory, system/sepolicy/vendor, whose
      rules are concatenated with the device-specific rules at build time.
      These rules are thus placed into the vendor partition and are not
      placed into the system/root partition.
      
      Test: No change to SELinux policy.
      Test: Rules placed into vendor directory end up in nonplat* artefacts,
            but not in plat* artefacts.
      Bug: 34715716
      Change-Id: Iab14aa7a3311ed6d53afff673e5d112428941f1c
      5596172d
    • Treehugger Robot's avatar
      04641948
    • Treehugger Robot's avatar
      81a73508
  7. Jan 30, 2017
  8. Jan 29, 2017
  9. Jan 27, 2017
    • Janis Danisevskis's avatar
      Preliminary policy for hal_keymaster (TREBLE) · e8acd769
      Janis Danisevskis authored
      This adds the premissions required for
      android.hardware.keymaster@2.0-service to access the keymaster TA
      as well as for keystore and vold to lookup and use
      android.hardware.keymaster@2.0-service.
      
      IT DOES NOT remove the privileges from keystore and vold to access
      the keymaster TA directly.
      
      Test: Run keystore CTS tests
      Bug: 32020919
      
      (cherry picked from commit 5090d6f3)
      
      Change-Id: Ib02682da26e2dbcabd81bc23169f9bd0e832eb19
      e8acd769
    • Alex Klyubin's avatar
      Remove hal_light from system_server domain · 384a73de
      Alex Klyubin authored
      HAL clients should not be annotated with hal_x and haldomain. This may
      grant them too much access. Instead, the policy needed for using
      in-process HALs should be directly embedded into the client's domain
      rules.
      
      Test: Boot sailfish, adjust screen brightness from the system UI, no
            SELinux denials for system_server to do with sysfs_leds.
      Bug: 34715716
      
      Change-Id: Iccb4224d770583e3c38930e8562723d57d283077
      384a73de
    • Alex Klyubin's avatar
      Move webview_zygote policy to private · a7653ee2
      Alex Klyubin authored
      This leaves only the existence of webview_zygote domain and its
      executable's webview_zygote_exec file label as public API. All other
      rules are implementation details of this domain's policy and are thus
      now private.
      
      Test: Device boots, with Multiproces WebView developer setting
            enabled, apps with WebView work fine. No new denials.
      Bug: 31364497
      
      Change-Id: I179476c43a50863ee3b327fc5155847d992a040d
      a7653ee2
    • Treehugger Robot's avatar
      Merge "sepolicy for usb hal" · deefb433
      Treehugger Robot authored
      deefb433
    • Treehugger Robot's avatar
      Merge "Dumpstate: hwbinder_use" · aa10429b
      Treehugger Robot authored
      aa10429b
    • Badhri Jagan Sridharan's avatar
      sepolicy for usb hal · ae206f16
      Badhri Jagan Sridharan authored
      Bug: 31015010
      
      cherry-pick from b6e4d4bd
      
      Test: checked for selinux denial msgs in the dmesg logs.
      Change-Id: I8285ea05162ea0d75459e873e5c2bad2dbc7e5ba
      ae206f16
  10. Jan 26, 2017
Loading