Remove unnecessary attributes

Test: mmm system/sepolicy
Bug: 34980020

(cherry picked from commit 3cc6a95944)

Change-Id: I64c7275551e8e27d68072e8ec38c07b539989da0
This commit is contained in:
Alex Klyubin 2017-04-12 16:24:33 -07:00
parent 31c55240a8
commit 20c2d4e98c
11 changed files with 0 additions and 103 deletions

View file

@ -44,15 +44,6 @@ attribute core_data_file_type;
# All types in /vendor
attribute vendor_file_type;
# All vendor domains which violate the requirement of not accessing
# data outside /data/vendor.
# TODO(b/34980020): Remove this once there are no violations
attribute coredata_in_vendor_violators;
# All core domains which violate the requirement of not accessing vendor
# owned data.
# TODO(b/34980020): Remove this once there are no violations
attribute vendordata_in_core_violators;
# All types use for sysfs files.
attribute sysfs_type;

View file

@ -545,64 +545,6 @@ full_treble_only(`
} servicemanager:binder { call transfer };
')
##
# On full TREBLE devices core android components and vendor components may
# not directly access each other's data types. All communication must occur
# over HW binder. Open file descriptors may be passed and read/write/stat
# operations my be performed on those FDs. Disallow all other operations.
full_treble_only(`
# do not allow vendor component access to coredomains data types
neverallow {
domain
-coredomain
-appdomain
-coredata_in_vendor_violators
}
core_data_file_type
-zoneinfo_data_file # Stable API provided by libc
:{
file_class_set
} ~{ append getattr ioctl read write };
# do not allow vendor component access to coredomains data directories.
# /data has the system_data_file type. Allow all domains to have dir
# search permissions which allows path traversal.
neverallow {
domain
-coredomain
-appdomain
-coredata_in_vendor_violators
} {
core_data_file_type
-system_data_file
-zoneinfo_data_file # Stable API provided by libc
}:dir *;
neverallow {
domain
-coredomain
-appdomain
-coredata_in_vendor_violators
} system_data_file:dir ~search;
# do not allow coredomains to directly access vendor data. Exempt init
# because it is responsible for dir/file creation in init.rc scripts.
# Also exempt halclientdomain to exclude rules for passthrough mode.
neverallow {
coredomain
-halclientdomain
-init
-vendordata_in_core_violators
} {
data_file_type
-core_data_file_type
}:file_class_set ~{ append getattr ioctl read write };
# do not allow coredomain to access vendor data directories.
neverallow {
coredomain
-halclientdomain
-init
-vendordata_in_core_violators
} { data_file_type -core_data_file_type }:dir *;
')
# On full TREBLE devices, socket communications between core components and vendor components are
# not permitted.
full_treble_only(`

View file

@ -19,9 +19,6 @@ allow rild efs_file:file create_file_perms;
allow rild shell_exec:file rx_file_perms;
allow rild bluetooth_efs_file:file r_file_perms;
allow rild bluetooth_efs_file:dir r_dir_perms;
# TODO (b/36601950) remove RILD's access to radio_data_file and
# system_data_file. Remove coredata_in_vendor_violators attribute.
typeattribute rild coredata_in_vendor_violators;
allow rild radio_data_file:dir rw_dir_perms;
allow rild radio_data_file:file create_file_perms;
allow rild sdcard_type:dir r_dir_perms;

View file

@ -7,7 +7,3 @@ init_daemon_domain(hal_audio_default)
hal_client_domain(hal_audio_default, hal_allocator)
typeattribute hal_audio_default socket_between_core_and_vendor_violators;
# TODO (b/36601590) move hal_audio's data file to
# /data/vendor/hardware/hal_audio. Remove coredata_in_vendor_violators
# attribute.
typeattribute hal_audio_default coredata_in_vendor_violators;

View file

@ -3,8 +3,3 @@ hal_server_domain(hal_camera_default, hal_camera)
type hal_camera_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_camera_default)
# TODO (b/36601397) move hal_camera's data file to
# /data/vendor/hardware/hal_camera. Remove coredata_in_vendor_violators
# attribute.
typeattribute hal_camera_default coredata_in_vendor_violators;

View file

@ -6,8 +6,3 @@ init_daemon_domain(hal_drm_default)
allow hal_drm_default mediacodec:fd use;
allow hal_drm_default { appdomain -isolated_app }:fd use;
# TODO (b/36601695) remove hal_drm's access to /data or move to
# /data/vendor/hardware/hal_drm. Remove coredata_in_vendor_violators
# attribute.
typeattribute hal_drm_default coredata_in_vendor_violators;

View file

@ -3,7 +3,3 @@ hal_server_domain(hal_fingerprint_default, hal_fingerprint)
type hal_fingerprint_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_fingerprint_default)
# TODO (b/36644492) move hal_fingerprint's data file to
# /data/vendor/. Remove coredata_in_vendor_violators attribute.
typeattribute hal_fingerprint_default coredata_in_vendor_violators;

View file

@ -4,8 +4,4 @@ hal_server_domain(hal_nfc_default, hal_nfc)
type hal_nfc_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_nfc_default)
# TODO (b/36645109) Remove hal_nfc's access to the nfc app's
# data type. Remove coredata_in_vendor_violators and
# socket_between_core_and_vendor_violators attribute associations below.
typeattribute hal_nfc_default coredata_in_vendor_violators;
typeattribute hal_nfc_default socket_between_core_and_vendor_violators;

View file

@ -11,8 +11,3 @@ type_transition hal_wifi_supplicant_default wifi_data_file:dir wpa_socket "socke
# Allow wpa_supplicant to talk to Wifi Keystore HwBinder service.
hwbinder_use(hal_wifi_supplicant_default)
binder_call(hal_wifi_supplicant_default, wifi_keystore_service_server)
# TODO (b/36645291) Move hal_wifi_supplicant's data access to /data/vendor
# Remove coredata_in_vendor_violators attribute.
# wpa supplicant or equivalent
typeattribute hal_wifi_supplicant_default coredata_in_vendor_violators;

4
vendor/hostapd.te vendored
View file

@ -31,7 +31,3 @@ r_dir_file(hostapd, wifi_data_file)
allow hostapd hostapd_socket:dir create_dir_perms;
# hostapd needs to create, bind to, read, and write its control socket.
allow hostapd hostapd_socket:sock_file create_file_perms;
# TODO (b/36646171) Move hostapd's data access to /data/vendor
# Remove coredata_in_vendor_violators attribute.
typeattribute hostapd coredata_in_vendor_violators;

2
vendor/tee.te vendored
View file

@ -15,7 +15,5 @@ allow tee self:netlink_generic_socket create_socket_perms_no_ioctl;
allow tee ion_device:chr_file r_file_perms;
r_dir_file(tee, sysfs_type)
# TODO(b/36720355): Remove this once tee no longer access non-vendor files
typeattribute tee coredata_in_vendor_violators;
allow tee system_data_file:file { getattr read };
allow tee system_data_file:lnk_file r_file_perms;