Skip to content
Snippets Groups Projects
  1. Apr 14, 2015
  2. Apr 13, 2015
  3. Apr 12, 2015
  4. Apr 11, 2015
  5. Apr 10, 2015
    • Jeff Sharkey's avatar
    • Nick Kralevich's avatar
      Revert "Exclude isolated_app from ptrace self." · 50d50621
      Nick Kralevich authored
      Google Breakpad (crash reporter for Chrome) relies on ptrace
      functionality. Without the ability to ptrace, the crash reporter
      tool is broken.
      
      Addresses the following denial:
      
        type=1400 audit(1428619926.939:1181): avc: denied { ptrace } for pid=10077 comm="CrRendererMain" scontext=u:r:isolated_app:s0:c512,c768 tcontext=u:r:isolated_app:s0:c512,c768 tclass=process permissive=0
      
      This reverts commit e9623d8f.
      
      Bug: 20150694
      Bug: https://code.google.com/p/chromium/issues/detail?id=475270
      Change-Id: I1727c6a93f10ea6db877687a8f81ec789f9e501f
      50d50621
    • Nick Kralevich's avatar
    • Jeff Sharkey's avatar
      Allow installd to move around private app data. · 8da7876b
      Jeff Sharkey authored
      Add rules that allow installd to move private app data between
      internal and expanded storage devices.  For now we'll be reusing
      the "cp" binary using android_fork_execvp(), so grant access to
      devpts.
      
      avc: denied { read write } for name="14" dev="devpts" ino=17 scontext=u:r:installd:s0 tcontext=u:object_r:devpts:s0 tclass=chr_file permissive=1
      avc: denied { open } for path="/dev/pts/14" dev="devpts" ino=17 scontext=u:r:installd:s0 tcontext=u:object_r:devpts:s0 tclass=chr_file permissive=1
      
      avc: denied { read } for name="com.android.opengl.shaders_cache" dev="mmcblk0p16" ino=114672 scontext=u:r:installd:s0 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file permissive=1
      avc: denied { open } for path="/data/data/com.example.playground/code_cache/com.android.opengl.shaders_cache" dev="mmcblk0p16" ino=114672 scontext=u:r:installd:s0 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file permissive=1
      avc: denied { create } for name="com.android.opengl.shaders_cache" scontext=u:r:installd:s0 tcontext=u:object_r:app_data_file:s0 tclass=file permissive=1
      avc: denied { read write open } for path="/mnt/expand/57f8f4bc-abf4-655f-bf67-946fc0f9f25b/user/0/com.example.playground/code_cache/com.android.opengl.shaders_cache" dev="dm-0" ino=64518 scontext=u:r:installd:s0 tcontext=u:object_r:app_data_file:s0 tclass=file permissive=1
      
      Bug: 19993667
      Change-Id: I5188e660c8b5e97eab8f0c74147499ec688f3f19
      8da7876b
  6. Apr 09, 2015
    • Nick Kralevich's avatar
      isolated_app: Do not allow access to the gpu_device. · f1b5c665
      Nick Kralevich authored
      Bug: 17471434
      Bug: 18609318
      Change-Id: Idb3ed8ada03dbc07f35e74fd80cb989c8e6808bc
      f1b5c665
    • Nick Kralevich's avatar
      gatekeeperd: neverallow non-system_server binder call · 2234f9ff
      Nick Kralevich authored
      The current neverallow rule (compile time assertion)
      
        neverallow { domain -gatekeeperd -system_server } gatekeeper_service:service_manager find;
      
      asserts that no rule is present which allows processes other than
      system_server from asking servicemanager for a gatekeeperd token.
      
      However, if system_server leaks the token to other processes, it may
      be possible for those processes to access gatekeeperd directly, bypassing
      servicemanager.
      
      Add a neverallow rule to assert that no process other than system_server
      are allowed to make binder calls to gatekeeperd. Even if another process
      was to manage to get a binder token to gatekeeperd, it would be useless.
      
      Remove binder_service() from gatekeeperd. The original use of the
      binder_service() macro was to widely publish a binder service.
      If this macro is present and the calling process has a gatekeeperd
      binder token, it's implicitly possible for the following processes
      to make a binder call to gatekeeperd:
      
       * all app processes
       * dumpstate
       * system_server
       * mediaserver
       * surfaceflinger
      
      Removing binder_service revokes this implicit access.
      
      Add explicit access for system_server to make binder calls to
      gatekeeperd.
      
      Add explicit access for gatekeeperd to make calls to keystore.
      This was implicitly granted via binder_service() before, but now
      needs to be explicit.
      
      Change-Id: I23c1573d04ab670a42660d5922b39eecf4265b66
      2234f9ff
    • dcashman's avatar
    • dcashman's avatar
      Make persistent_data_block_service a system_api_service. · 53212794
      dcashman authored
      Settings needs to be able to access it when opening developer options.
      
      Address the following denial:
      avc:  denied  { find } for service=persistent_data_block scontext=u:r:system_app:s0 tcontext=u:object_r:persistent_data_block_service:s0 tclass=service_manager
      
      Bug: 20131472
      Change-Id: I85e2334a92d5b8e23d0a75312c9b4b5bf6aadb0b
      53212794
    • dcashman's avatar
      Merge "Make backup service app_api_service." · dd31d68f
      dcashman authored
      dd31d68f
    • dcashman's avatar
      Make backup service app_api_service. · 9378ceaf
      dcashman authored
      Backup service needs to be accessible to all apps to notify the system when
      something changes which is being backed-up.
      
      Bug: 18106000
      Change-Id: I8f34cca64299960fa45afc8d09110123eb79338b
      9378ceaf
    • dcashman's avatar
      Merge "Enforce more specific service access." · 7f2bb0c1
      dcashman authored
      7f2bb0c1
    • Nick Kralevich's avatar
      isolated_app: allow app_data_file lock · 53c84ed4
      Nick Kralevich authored
      Chrome's WebSQL implementation works by running sqlite in the
      sandboxed renderer process, and sqlite expects to be able to
      call flock() on the database file.
      
      Bug: 20134929
      Change-Id: Id33a2cd19b779144662056c6f3aba3365b0a2a54
      53c84ed4
    • dcashman's avatar
      Enforce more specific service access. · bd7f5803
      dcashman authored
      Move the remaining services from tmp_system_server_service to appropriate
      attributes and remove tmp_system_server and associated logging:
      
      registry
      restrictions
      rttmanager
      scheduling_policy
      search
      sensorservice
      serial
      servicediscovery
      statusbar
      task
      textservices
      telecom_service
      trust_service
      uimode
      updatelock
      usagestats
      usb
      user
      vibrator
      voiceinteraction
      wallpaper
      webviewupdate
      wifip2p
      wifi
      window
      
      Bug: 18106000
      Change-Id: Ia0a6d47099d82c53ba403af394537db6fbc71ca0
      bd7f5803
    • Neil Fuller's avatar
      Add rules for /system/bin/tzdatacheck · e6475785
      Neil Fuller authored
      Bug: 19941636
      Change-Id: I7cc61e058424c856da88f11ff9b259f34cb39dc7
      e6475785
    • Andres Morales's avatar
    • Andres Morales's avatar
      Allow gatekeeperd to check Android permissions · 13abb170
      Andres Morales authored
      Change-Id: Ie88568c43642505f68d137843a1f6b7a3de481e5
      13abb170
  7. Apr 08, 2015
    • dcashman's avatar
      Enforce more specific service access. · 03a6f64f
      dcashman authored
      Move the following services from tmp_system_server_service to appropriate
      attributes:
      
      network_management
      network_score
      notification
      package
      permission
      persistent
      power
      print
      processinfo
      procstats
      
      Bug: 18106000
      Change-Id: I9dfb41fa41cde72ef0059668410a2e9eb1af491c
      03a6f64f
    • Nick Kralevich's avatar
      system_server: support hard linking for split APKs · 9bef2502
      Nick Kralevich authored
      Commit 85ce2c70 removed hard link
      support from create_file_perms, but system_server requires hard
      link support for split APKs. Allow it.
      
      Addresses the following denial:
      
        audit(0.0:152): avc: denied { link } for name="base.apk" dev="dm-0" ino=816009 scontext=u:r:system_server:s0 tcontext=u:object_r:apk_data_file:s0 tclass=file permissive=0
      
      Steps to reproduce:
      1) Find the directory "hellogoogle3.splitapk"
      2) adb install-multiple -r hellogoogle3_incremental.apk
      3) adb install-multiple -r -p com.google.android.samples.hellogoogle3 native.apk
      
      Expected:
        2nd APK installs successfully.
      
      Actual:
        2nd APK fails to install.
      
      Change-Id: Ib69fc70dd1c7cd158590db3fd117d6b05acf1cf7
      9bef2502
  8. Apr 07, 2015
    • Nick Kralevich's avatar
      Allow system_server to collect app heapdumps (debug builds only) · 8a06c077
      Nick Kralevich authored
      On debuggable builds, system_server can request app heap dumps
      by running something similar to the following commands:
      
        % adb shell am set-watch-heap com.android.systemui 1048576
        % adb shell dumpsys procstats --start-testing
      
      which will dump the app's heap to /data/system/heapdump. See
      framework/base commit b9a5e4ad30c9add140fd13491419ae66e947809d.
      
      Allow this behavior.
      
      Addresses the following denial:
      
        avc: denied { write } for path="/data/system/heapdump/javaheap.bin" dev="dm-0" ino=150747 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:system_data_file:s0 tclass=file permissive=0
      
      Bug: 20073185
      Change-Id: I4b925033a5456867caf2697de6c2d683d0743540
      8a06c077
    • dcashman's avatar
      Enforce more specific service access. · 91b7c67d
      dcashman authored
      Move the following services from tmp_system_server_service to appropriate
      attributes:
      
      jobscheduler
      launcherapps
      location
      lock_settings
      media_projection
      media_router
      media_session
      mount
      netpolicy
      netstats
      
      Bug: 18106000
      Change-Id: Ia82d475ec41f658851f945173c968f4abf57e7e1
      91b7c67d
    • dcashman's avatar
      Enforce more specific service access. · 3cc6fc5f
      dcashman authored
      Move the following services from tmp_system_server_service to appropriate
      attributes:
      
      diskstats
      display
      dreams
      dropbox
      ethernet
      fingerprint
      graphicstats
      hardware
      hdmi_control
      input_method
      input_service
      
      Bug: 18106000
      Change-Id: Iadd8aab9e78d9d39fb00cf0b5a95fa1927d02095
      3cc6fc5f
    • Fyodor Kupolov's avatar
      Allow system_server to read oat dir · 3af8c9d0
      Fyodor Kupolov authored
      Required for PackageManagerService to perform restorecon recursively on a
      staging dir.
      
      Addresses the following denial:
      avc: denied { open } for name="oat" dev="mmcblk0p28" ino=163027 scontext=u:r:system_server:s0 tcontext=u:object_r:dalvikcache_data_file:s0 tclass=dir
      
      Bug: 19550105
      Bug: 20087446
      Change-Id: I0f6ebb79745091ecb4d6d3dbe92f65606b7469da
      3af8c9d0
    • dcashman's avatar
      Enforce more specific service access. · d4c78f4b
      dcashman authored
      Move the following services from tmp_system_server_service to appropriate
      attributes:
      
      battery
      bluetooth_manager
      clipboard
      commontime_management
      connectivity
      content
      country_detector
      device_policy
      deviceidle
      
      Bug: 18106000
      Change-Id: I0d0f2a075c0509a783631d88ba453ac13399cdf2
      d4c78f4b
    • Jeff Sharkey's avatar
      Allow installd to dexopt apps on expanded storage. · 44c95e9a
      Jeff Sharkey authored
      avc: denied { search } for name="expand" dev="tmpfs" ino=3130 scontext=u:r:installd:s0 tcontext=u:object_r:mnt_expand_file:s0 tclass=dir permissive=0
      
      Bug: 19993667
      Change-Id: Ie53df62aa79ae14cd56d7c6f2429b4be382164d1
      44c95e9a
    • Jeff Sharkey's avatar
      Initial policy for expanded storage. · 73d9c2a9
      Jeff Sharkey authored
      Expanded storage supports a subset of the features of the internal
      data partition.  Mirror that policy for consistency.  vold is also
      granted enough permissions to prepare initial directories.
      
      avc: denied { write } for name="ext" dev="tmpfs" ino=3130 scontext=u:r:vold:s0 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      avc: denied { add_name } for name="57f8f4bc-abf4-655f-bf67-946fc0f9f25b" scontext=u:r:vold:s0 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      avc: denied { create } for name="57f8f4bc-abf4-655f-bf67-946fc0f9f25b" scontext=u:r:vold:s0 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      avc: denied { setattr } for name="57f8f4bc-abf4-655f-bf67-946fc0f9f25b" dev="tmpfs" ino=7243 scontext=u:r:vold:s0 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      avc: denied { mounton } for path="/mnt/ext/57f8f4bc-abf4-655f-bf67-946fc0f9f25b" dev="tmpfs" ino=7243 scontext=u:r:vold:s0 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      
      avc: denied { getattr } for path="/mnt/ext" dev="tmpfs" ino=3130 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:mnt_ext_file:s0 tclass=dir permissive=1
      
      avc: denied { setattr } for name="57f8f4bc-abf4-655f-bf67-946fc0f9f25b" dev="tmpfs" ino=4471 scontext=u:r:vold:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
      avc: denied { getattr } for path="/mnt/expand/57f8f4bc-abf4-655f-bf67-946fc0f9f25b/media" dev="dm-0" ino=145153 scontext=u:r:vold:s0 tcontext=u:object_r:media_rw_data_file:s0 tclass=dir permissive=1
      
      avc: denied { rmdir } for name="57f8f4bc-abf4-655f-bf67-946fc0f9f25b" dev="tmpfs" ino=6380 scontext=u:r:vold:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
      
      avc: denied { create } for name="tmp" scontext=u:r:vold:s0 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=1
      avc: denied { setattr } for name="tmp" dev="dm-0" ino=72578 scontext=u:r:vold:s0 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=1
      
      Bug: 19993667
      Change-Id: I73c98b36e7c066f21650a9e16ea82c5a0ef3d6c5
      73d9c2a9
  9. Apr 06, 2015
    • Andres Morales's avatar
      SELinux permissions for gatekeeper TEE proxy · e207986e
      Andres Morales authored
      sets up:
      - execute permissions
      - binder permission (system_server->gatekeeper->keystore)
      - prevents dumpstate and shell from finding GK binder service
      - neverallow rules for prohibited clients
      
      Change-Id: I1817933a91de625db469a20c7a4c8e2ca46efa1e
      e207986e
    • Nick Kralevich's avatar
      dumpstate: allow df on /storage/emulated · c24d90cb
      Nick Kralevich authored
      dumpstate runs "df" on all mounted filesystems. Allow dumpstate
      to access /storage/emulated so df works.
      
      Addresses the following denial:
      
        avc: denied { search } for pid=4505 comm="df" name="/" dev="tmpfs" ino=6207 scontext=u:r:dumpstate:s0 tcontext=u:object_r:storage_file:s0 tclass=dir
      
      Change-Id: I99dac8321b19952e37c0dd9d61a680a27beb1ae8
      c24d90cb
    • dcashman's avatar
      Assign app_api_service attribute to services. · 4cdea7fc
      dcashman authored
      Assign the alarm, appwidget, assetatlas, audio, backup and batterystats services
      the appropriate service access levels and move into enforcing.
      
      Bug: 18106000
      Change-Id: If3210bb25f3076edfdb6eec36ef6521ace1bd8d7
      4cdea7fc
  10. Apr 03, 2015
Loading