untrusted_v2_app.te revision a782a816271e48e357faf93a61b4fde259da1e3b
1a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker### 2a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker### Untrusted v2 sandbox apps. 3a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker### 4a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerapp_domain(untrusted_v2_app) 5a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakernet_domain(untrusted_v2_app) 6a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerbluetooth_domain(untrusted_v2_app) 7a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 8a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# Read and write system app data files passed over Binder. 9a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# Motivating case was /data/data/com.android.settings/cache/*.jpg for 10a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# cropping or taking user photos. 11a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app system_app_data_file:file { read write getattr }; 12a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 13a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# Access to /data/media. 14a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app media_rw_data_file:dir create_dir_perms; 15a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app media_rw_data_file:file create_file_perms; 16a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 17a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# Traverse into /mnt/media_rw for bypassing FUSE daemon 18a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# TODO: narrow this to just MediaProvider 19a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mnt_media_rw_file:dir search; 20a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 21a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# allow cts to query all services 22a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app servicemanager:service_manager list; 23a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 24a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app audioserver_service:service_manager find; 25a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app cameraserver_service:service_manager find; 26a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app drmserver_service:service_manager find; 27a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mediaserver_service:service_manager find; 28a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mediaextractor_service:service_manager find; 29a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mediacodec_service:service_manager find; 30a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mediametrics_service:service_manager find; 31a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app mediadrmserver_service:service_manager find; 32a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app nfc_service:service_manager find; 33a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app radio_service:service_manager find; 34a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app surfaceflinger_service:service_manager find; 35a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# TODO: potentially provide a tighter list of services here 36a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app app_api_service:service_manager find; 37a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker 38a782a816271e48e357faf93a61b4fde259da1e3bChad Brubaker# gdbserver for ndk-gdb ptrace attaches to app process. 39a782a816271e48e357faf93a61b4fde259da1e3bChad Brubakerallow untrusted_v2_app self:process ptrace; 40