Skip to content
Snippets Groups Projects
  1. May 14, 2018
    • Pavel Maltsev's avatar
      Allow to use sockets from hal server for auto · 4cafae77
      Pavel Maltsev authored
      Add an exemption to neverallow rule to use sockets from HAL servers only
      for automotive build
      
      Bug: 78901167
      Test: assign this attribute to hal_vehicle_default and try to open
      socket from HAL implementation
      Test: verify that new CTS test will fail for non-automotive build with
      this attribute buing used
      Test: make cts && cts-tradefed run singleCommand cts --skip-device-info
       --skip-preconditions --abi arm64-v8a --module CtsSecurityHostTestCases
       -t android.security.cts.SELinuxHostTest
      
      Change-Id: I27976443dad4fc5b7425c089512cac65bb54d6d9
      4cafae77
  2. Mar 12, 2018
  3. Mar 11, 2018
  4. 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
  5. Jan 12, 2018
    • Roshan Pius's avatar
      sepolicy(hostapd): Add a HIDL interface for hostapd · 5bca3e86
      Roshan Pius authored
      Change sepolicy permissions to now classify hostapd as a HAL exposing
      HIDL interface.
      
      Sepolicy denial for accessing /data/vendor/misc/wifi/hostapd:
      12-27 23:40:55.913  4952  4952 W hostapd : type=1400 audit(0.0:19): avc:
      denied { write } for name="hostapd" dev="sda13" ino=4587601
      scontext=u:r:hal_wifi_hostapd_default:s0
      tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=0
      
      01-02 19:07:16.938  5791  5791 W hostapd : type=1400 audit(0.0:31): avc:
      denied { search } for name="net" dev="sysfs" ino=30521
      scontext=u:r:hal_wifi_hostapd_default:s0
      tcontext=u:object_r:sysfs_net:s0 tclass=dir permissive=0
      
      Bug: 36646171
      Test: Device boots up and able to turn on SoftAp.
      Change-Id: Ibacfcc938deab40096b54b8d0e608d53ca91b947
      5bca3e86
  6. Nov 21, 2017
    • Benjamin Gordon's avatar
      sepolicy: Add rules for non-init namespaces · 9b2e0cbe
      Benjamin Gordon authored
      In kernel 4.7, the capability and capability2 classes were split apart
      from cap_userns and cap2_userns (see kernel commit
      8e4ff6f228e4722cac74db716e308d1da33d744f). Since then, Android cannot be
      run in a container with SELinux in enforcing mode.
      
      This change applies the existing capability rules to user namespaces as
      well as the root namespace so that Android running in a container
      behaves the same on pre- and post-4.7 kernels.
      
      This is essentially:
        1. New global_capability_class_set and global_capability2_class_set
           that match capability+cap_userns and capability2+cap2_userns,
           respectively.
        2. s/self:capability/self:global_capability_class_set/g
        3. s/self:capability2/self:global_capability2_class_set/g
        4. Add cap_userns and cap2_userns to the existing capability_class_set
           so that it covers all capabilities.  This set was used by several
           neverallow and dontaudit rules, and I confirmed that the new
           classes are still appropriate.
      
      Test: diff new policy against old and confirm that all new rules add
            only cap_userns or cap2_userns;
            Boot ARC++ on a device with the 4.12 kernel.
      Bug: crbug.com/754831
      
      Change-Id: I4007eb3a2ecd01b062c4c78d9afee71c530df95f
      9b2e0cbe
  7. Sep 26, 2017
  8. Jul 05, 2017
    • Jeff Vander Stoep's avatar
      Preserve attributes needed for CTS · 5f5aa962
      Jeff Vander Stoep authored
      Change fb889f23 "Force expand all hal_* attributes" annotated all
      hal_* attributes to be expanded to their associated types. However
      some of these attributes are used in CTS for neverallow checking.
      Mark these attributes to be preserved.
      
      In addition, remove the hacky workaround introduced in oc-dev
      for b/62658302 where extraneous neverallow rules were introduced
      to prevent unused or negated attributes from being auto-expanded
      from policy.
      
      Bug: 62658302
      Bug: 63135903
      Test: cts-tradefed run cts -m CtsSecurityHostTestCases -t \
          android.cts.security.SELinuxNeverallowRulesTest
      
          armeabi-v7a CtsSecurityHostTestCases completed in 4s.
          501 passed, 0 failed, 0 not executed
      Merged-In: I989def70a16f66e7a18bef1191510793fbe9cb8c
      Change-Id: I989def70a16f66e7a18bef1191510793fbe9cb8c
      5f5aa962
    • Jeff Vander Stoep's avatar
      Preserve attributes needed for CTS · bf8ed096
      Jeff Vander Stoep authored
      Change fb889f23 "Force expand all hal_* attributes" annotated all
      hal_* attributes to be expanded to their associated types. However
      some of these attributes are used in CTS for neverallow checking.
      Mark these attributes to be preserved.
      
      In addition, remove the hacky workaround introduced in oc-dev
      for b/62658302 where extraneous neverallow rules were introduced
      to prevent unused or negated attributes from being auto-expanded
      from policy.
      
      Bug: 62658302
      Bug: 63135903
      Test: cts-tradefed run cts -m CtsSecurityHostTestCases -t \
          android.cts.security.SELinuxNeverallowRulesTest
      
          armeabi-v7a CtsSecurityHostTestCases completed in 4s.
          501 passed, 0 failed, 0 not executed
      Change-Id: I989def70a16f66e7a18bef1191510793fbe9cb8c
      bf8ed096
  9. Jun 26, 2017
    • Jeff Vander Stoep's avatar
      Add another extraneous neverallow rule to force attribute inclusion · c75aa50d
      Jeff Vander Stoep authored
      Due to the massively increased number of attributes in SELinux policy
      as part of the treble changes, we have had to remove attributes from
      policy for performance reasons.  Unfortunately, some attributes are
      required to be in policy to ensure that our neverallow rules are being
      properly enforced.  Usually this is not a problem, since neverallow rules
      indicate that an attribute should be kept, but this is not currently the
      case when the attribute is part of a negation in a group.
      
      This is particularly problematic with treble since some attributes may
      exist for HALs that have no implementation, and thus no types.  In
      particular, this has caused an issue with the neverallows added in our
      macros.  Add an extraneous neverallow rule to each of those auto-generated
      neverallow rules to make sure that they are not removed from policy, until
      the policy compiler is fixed to avoid this.  Also add corresponding rules
      for other types which have been removed due to no corresponding rules.
      
      Bug: 62658302
      Bug: 62999603
      Test: Build Marlin policy.
      Test: verify attribute exists in policy using sepolicy-analyze.
          sepolicy-analyze $OUT/vendor/etc/selinux/precompiled_sepolicy \
          attribute hal_tetheroffload_server
      Test: CTS neverallow tests pass.
          cts-tradefed run cts -m CtsSecurityHostTestCases -t \
          android.cts.security.SELinuxNeverallowRulesTest
      Change-Id: I62596ba8198ffdcbb4315df639a834e4becaf249
      c75aa50d
  10. Jun 21, 2017
  11. May 18, 2017
    • Wyatt Riley's avatar
      Removing UDP access for hal_gnss · 799c2349
      Wyatt Riley authored
      Underlying data services setup no longer needs this
      
      Bug: 35757613
      Bug: 36085168
      Test: GPS, XTRA & avc denial checks
      Change-Id: I679ee70f65f34d5a7d1fc1f1fe92af6a92ec92c5
      799c2349
  12. Mar 21, 2017
    • Jeff Vander Stoep's avatar
      Enforce one HAL per domain. · 84b96a6b
      Jeff Vander Stoep authored
      HALs are intended to be limited responsibility and thus limited
      permission. In order to enforce this, place limitations on:
      1. What processes may transition into a HAL - currently only init
      2. What methods may be used to transition into a HAL - no using
         seclabel
      3. When HALs exec - only allow exec with a domain transition.
      
      Bug: 36376258
      Test: Build aosp_marlin, aosp_bullhead, aosp_dragon. Neverallow rules
            are compile time assertions, so building is a sufficient test.
      
      Change-Id: If4df19ced730324cf1079f7a86ceba7c71374131
      84b96a6b
  13. Mar 14, 2017
    • Jeff Vander Stoep's avatar
      Restrict HAL network access to HALS that manage network hardware · f9be765d
      Jeff Vander Stoep authored
      Only HALs that manage networks need network capabilities and network
      sockets.
      
      Test: aosp_marlin and aosp_bullhead policy builds. Note: neverallow
            rules are compile time assertions and do not change the
            on-device policy.
      Bug: 36185625
      
      Change-Id: Id64846eac24cf72ed91ce775cecb2c75f11b78df
      f9be765d
Loading