blob: 3f02c839d387f414e5079e7cefdb0805e8a8f761 [file] [log] [blame]
Inseob Kimbbae4a92020-03-19 17:49:08 +09001# Properties used only in /system
2system_internal_prop(adbd_prop)
Richard Fung0c7c2672021-11-08 20:09:54 +00003system_internal_prop(apexd_payload_metadata_prop)
David Anderson09bb9442020-11-13 00:45:59 -08004system_internal_prop(ctl_snapuserd_prop)
Suren Baghdasaryan592e06c2021-08-04 12:31:43 -07005system_internal_prop(device_config_lmkd_native_prop)
Yi Kong0ac00722020-10-27 02:29:52 +08006system_internal_prop(device_config_profcollect_native_boot_prop)
Tej Singhdd0988f2020-11-17 19:26:23 -08007system_internal_prop(device_config_statsd_native_prop)
8system_internal_prop(device_config_statsd_native_boot_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +09009system_internal_prop(device_config_storage_native_boot_prop)
10system_internal_prop(device_config_sys_traced_prop)
11system_internal_prop(device_config_window_manager_native_boot_prop)
12system_internal_prop(device_config_configuration_prop)
Xiao Ma2d6c9f02021-02-02 10:27:38 +000013system_internal_prop(device_config_connectivity_prop)
Nick Chalko81a4dd42021-02-11 09:12:51 -080014system_internal_prop(device_config_swcodec_native_prop)
Alexander Potapenko0a64d102022-01-28 19:48:27 +010015system_internal_prop(dmesgd_start_prop)
Hongguang Chen91a5f4e2020-04-23 23:43:13 -070016system_internal_prop(fastbootd_protocol_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090017system_internal_prop(gsid_prop)
18system_internal_prop(init_perf_lsm_hooks_prop)
Inseob Kim15e5e0a2020-05-14 19:43:08 +090019system_internal_prop(init_service_status_private_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090020system_internal_prop(init_svc_debug_prop)
Hasini Gunasinghe4fa6b1a2021-07-02 23:14:50 +000021system_internal_prop(keystore_crash_prop)
Paul Crowleyb0c55712021-02-23 08:40:05 -080022system_internal_prop(keystore_listen_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090023system_internal_prop(last_boot_reason_prop)
Alexander Mishkovetsf0be89b2020-07-08 23:11:03 +020024system_internal_prop(localization_prop)
Primiano Tuccicd452302020-10-09 09:15:10 +010025system_internal_prop(lower_kptr_restrict_prop)
Lorenzo Colitti082ebd22021-03-10 14:45:07 +090026system_internal_prop(net_464xlat_fromvendor_prop)
Lorenzo Colitti26d3d4a2021-03-10 15:31:36 +090027system_internal_prop(net_connectivity_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090028system_internal_prop(netd_stable_secret_prop)
Martijn Coenenf2e4ee62021-03-16 08:34:30 +010029system_internal_prop(odsign_prop)
Michael Rosenfeld3ccbebb2021-02-10 18:45:35 -080030system_internal_prop(perf_drop_caches_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090031system_internal_prop(pm_prop)
Yi Kong9b658452021-03-22 22:02:22 +080032system_internal_prop(profcollectd_node_id_prop)
Nazaninb373dd02021-04-29 21:52:42 -070033system_internal_prop(radio_cdma_ecm_prop)
JW Wang0f8cf042021-02-24 14:29:06 +080034system_internal_prop(rollback_test_prop)
Inseob Kimd5a04482020-11-05 22:17:26 +090035system_internal_prop(setupwizard_prop)
David Andersonbf5b6ce2021-07-26 15:03:11 -070036system_internal_prop(snapuserd_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090037system_internal_prop(system_adbd_prop)
38system_internal_prop(traced_perf_enabled_prop)
39system_internal_prop(userspace_reboot_log_prop)
40system_internal_prop(userspace_reboot_test_prop)
Inseob Kimd5a04482020-11-05 22:17:26 +090041system_internal_prop(verity_status_prop)
42system_internal_prop(zygote_wrap_prop)
hkuangde370e52021-05-14 12:52:54 -070043system_internal_prop(ctl_mediatranscoding_prop)
Martijn Coenen5f21a0f2021-07-27 13:47:42 +020044system_internal_prop(ctl_odsign_prop)
Jiyong Parkb804de22021-09-16 21:06:20 +090045system_internal_prop(virtualizationservice_prop)
Inseob Kimbbae4a92020-03-19 17:49:08 +090046
Andrew Scullaedd65a2021-10-08 12:13:46 +000047# Properties which can't be written outside system
48system_restricted_prop(device_config_virtualization_framework_native_prop)
49
Inseob Kim55e5c9b2020-03-04 17:20:35 +090050###
51### Neverallow rules
52###
53
54treble_sysprop_neverallow(`
55
Inseob Kimafc09932020-09-28 13:32:43 +090056enforce_sysprop_owner(`
57 neverallow domain {
58 property_type
59 -system_property_type
60 -product_property_type
61 -vendor_property_type
62 }:file no_rw_file_perms;
63')
Inseob Kim55e5c9b2020-03-04 17:20:35 +090064
65neverallow { domain -coredomain } {
66 system_property_type
67 system_internal_property_type
68 -system_restricted_property_type
69 -system_public_property_type
70}:file no_rw_file_perms;
71
72neverallow { domain -coredomain } {
73 system_property_type
74 -system_public_property_type
75}:property_service set;
76
77# init is in coredomain, but should be able to read/write all props.
78# dumpstate is also in coredomain, but should be able to read all props.
79neverallow { coredomain -init -dumpstate } {
80 vendor_property_type
81 vendor_internal_property_type
82 -vendor_restricted_property_type
83 -vendor_public_property_type
84}:file no_rw_file_perms;
85
86neverallow { coredomain -init } {
87 vendor_property_type
88 -vendor_public_property_type
89}:property_service set;
90
91')
92
93# There is no need to perform ioctl or advisory locking operations on
94# property files. If this neverallow is being triggered, it is
95# likely that the policy is using r_file_perms directly instead of
96# the get_prop() macro.
97neverallow domain property_type:file { ioctl lock };
98
99neverallow * {
100 core_property_type
101 -audio_prop
102 -config_prop
103 -cppreopt_prop
104 -dalvik_prop
105 -debuggerd_prop
106 -debug_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900107 -dhcp_prop
108 -dumpstate_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900109 -fingerprint_prop
110 -logd_prop
111 -net_radio_prop
112 -nfc_prop
113 -ota_prop
114 -pan_result_prop
115 -persist_debug_prop
116 -powerctl_prop
117 -radio_prop
118 -restorecon_prop
119 -shell_prop
120 -system_prop
Inseob Kimdc1e5012020-04-27 21:13:01 +0900121 -usb_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900122 -vold_prop
123}:file no_rw_file_perms;
124
125# sigstop property is only used for debugging; should only be set by su which is permissive
126# for userdebug/eng
127neverallow {
128 domain
129 -init
130 -vendor_init
131} ctl_sigstop_prop:property_service set;
132
133# Don't audit legacy ctl. property handling. We only want the newer permission check to appear
134# in the audit log
135dontaudit domain {
136 ctl_bootanim_prop
137 ctl_bugreport_prop
138 ctl_console_prop
139 ctl_default_prop
140 ctl_dumpstate_prop
141 ctl_fuse_prop
142 ctl_mdnsd_prop
143 ctl_rildaemon_prop
144}:property_service set;
145
146neverallow {
147 domain
148 -init
149} init_svc_debug_prop:property_service set;
150
151neverallow {
152 domain
153 -init
154 -dumpstate
155 userdebug_or_eng(`-su')
156} init_svc_debug_prop:file no_rw_file_perms;
157
158compatible_property_only(`
159# Prevent properties from being set
160 neverallow {
161 domain
162 -coredomain
163 -appdomain
164 -vendor_init
165 } {
166 core_property_type
167 extended_core_property_type
168 exported_config_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900169 exported_default_prop
170 exported_dumpstate_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900171 exported_system_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900172 exported3_system_prop
Inseob Kimdc1e5012020-04-27 21:13:01 +0900173 usb_control_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900174 -nfc_prop
175 -powerctl_prop
176 -radio_prop
177 }:property_service set;
178
179 neverallow {
180 domain
181 -coredomain
182 -appdomain
183 -hal_nfc_server
184 } {
185 nfc_prop
186 }:property_service set;
187
188 neverallow {
189 domain
190 -coredomain
191 -appdomain
192 -hal_telephony_server
193 -vendor_init
194 } {
Inseob Kimacd02fc2020-07-28 15:17:24 +0900195 radio_control_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900196 }:property_service set;
197
198 neverallow {
199 domain
200 -coredomain
201 -appdomain
202 -hal_telephony_server
203 } {
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900204 radio_prop
205 }:property_service set;
206
207 neverallow {
208 domain
209 -coredomain
210 -bluetooth
211 -hal_bluetooth_server
212 } {
213 bluetooth_prop
214 }:property_service set;
215
216 neverallow {
217 domain
218 -coredomain
219 -bluetooth
220 -hal_bluetooth_server
221 -vendor_init
222 } {
223 exported_bluetooth_prop
224 }:property_service set;
225
226 neverallow {
227 domain
228 -coredomain
229 -hal_camera_server
230 -cameraserver
231 -vendor_init
232 } {
233 exported_camera_prop
234 }:property_service set;
235
236 neverallow {
237 domain
238 -coredomain
239 -hal_wifi_server
240 -wificond
241 } {
242 wifi_prop
243 }:property_service set;
244
245 neverallow {
246 domain
Inseob Kim3dbf3d82020-06-25 21:20:42 +0900247 -init
248 -dumpstate
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900249 -hal_wifi_server
250 -wificond
251 -vendor_init
252 } {
Inseob Kim3dbf3d82020-06-25 21:20:42 +0900253 wifi_hal_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900254 }:property_service set;
255
256# Prevent properties from being read
257 neverallow {
258 domain
259 -coredomain
260 -appdomain
261 -vendor_init
262 } {
263 core_property_type
Inseob Kimd8c39d92020-04-20 19:36:33 +0900264 dalvik_config_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900265 extended_core_property_type
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900266 exported3_system_prop
Inseob Kimfd2d6ec2020-04-01 10:01:16 +0900267 systemsound_config_prop
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900268 -debug_prop
269 -logd_prop
270 -nfc_prop
271 -powerctl_prop
272 -radio_prop
273 }:file no_rw_file_perms;
274
275 neverallow {
276 domain
277 -coredomain
278 -appdomain
279 -hal_nfc_server
280 } {
281 nfc_prop
282 }:file no_rw_file_perms;
283
284 neverallow {
285 domain
286 -coredomain
287 -appdomain
288 -hal_telephony_server
289 } {
290 radio_prop
291 }:file no_rw_file_perms;
292
293 neverallow {
294 domain
295 -coredomain
296 -bluetooth
297 -hal_bluetooth_server
298 } {
299 bluetooth_prop
300 }:file no_rw_file_perms;
301
302 neverallow {
303 domain
304 -coredomain
305 -hal_wifi_server
306 -wificond
307 } {
308 wifi_prop
309 }:file no_rw_file_perms;
Benjamin Schwartz3e4d97b2020-10-30 13:55:21 -0700310
311 neverallow {
312 domain
Benjamin Schwartzc171a1d2021-04-20 09:13:02 -0700313 -coredomain
314 -vendor_init
Benjamin Schwartz3e4d97b2020-10-30 13:55:21 -0700315 } {
316 suspend_prop
317 }:property_service set;
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900318')
319
320compatible_property_only(`
321 # Neverallow coredomain to set vendor properties
322 neverallow {
323 coredomain
324 -init
325 -system_writes_vendor_properties_violators
326 } {
327 property_type
328 -system_property_type
329 -extended_core_property_type
330 }:property_service set;
331')
332
333neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900334 domain
Inseob Kimbfb37082020-04-27 23:49:15 +0900335 -coredomain
336 -vendor_init
337} {
338 ffs_config_prop
339 ffs_control_prop
340}:file no_rw_file_perms;
341
342neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900343 domain
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900344 -init
345 -system_server
346} {
347 userspace_reboot_log_prop
348}:property_service set;
349
350neverallow {
351 # Only allow init and system_server to set system_adbd_prop
Inseob Kim85acf6e2021-03-10 10:42:23 +0900352 domain
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900353 -init
354 -system_server
355} {
356 system_adbd_prop
357}:property_service set;
358
Josh Gao0cac6fd2020-10-28 13:56:23 -0700359# Let (vendor_)init, adbd, and system_server set service.adb.tcp.port
360neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900361 domain
Josh Gao0cac6fd2020-10-28 13:56:23 -0700362 -init
363 -vendor_init
364 -adbd
365 -system_server
366} {
367 adbd_config_prop
368}:property_service set;
369
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900370neverallow {
371 # Only allow init and adbd to set adbd_prop
Inseob Kim85acf6e2021-03-10 10:42:23 +0900372 domain
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900373 -init
374 -adbd
375} {
376 adbd_prop
377}:property_service set;
378
379neverallow {
Richard Fung0c7c2672021-11-08 20:09:54 +0000380 # Only allow init to set apexd_payload_metadata_prop
381 domain
382 -init
383} {
384 apexd_payload_metadata_prop
385}:property_service set;
386
387
388neverallow {
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900389 # Only allow init and shell to set userspace_reboot_test_prop
Inseob Kim85acf6e2021-03-10 10:42:23 +0900390 domain
Inseob Kim55e5c9b2020-03-04 17:20:35 +0900391 -init
392 -shell
393} {
394 userspace_reboot_test_prop
395}:property_service set;
Inseob Kim721d9212020-04-24 21:25:17 +0900396
397neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900398 domain
Inseob Kim721d9212020-04-24 21:25:17 +0900399 -init
400 -system_server
401 -vendor_init
402} {
403 surfaceflinger_color_prop
404}:property_service set;
Inseob Kim9add20f2020-05-06 22:20:35 +0900405
406neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900407 domain
Inseob Kim9add20f2020-05-06 22:20:35 +0900408 -init
409} {
410 libc_debug_prop
411}:property_service set;
Inseob Kim36aeb162020-05-08 20:42:25 +0900412
Mitch Phillipseaf14042020-12-03 17:23:06 -0800413# Allow the shell to set MTE props, so that non-root users with adb shell
414# access can control the settings on their device.
Florian Mayer39f29f72021-12-21 12:06:31 -0800415# Allow system apps to set MTE props, so Developer Options can set them.
Mitch Phillipseaf14042020-12-03 17:23:06 -0800416neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900417 domain
Mitch Phillipseaf14042020-12-03 17:23:06 -0800418 -init
419 -shell
Florian Mayer39f29f72021-12-21 12:06:31 -0800420 -system_app
Mitch Phillipseaf14042020-12-03 17:23:06 -0800421} {
422 arm64_memtag_prop
423}:property_service set;
424
Inseob Kim36aeb162020-05-08 20:42:25 +0900425neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900426 domain
Inseob Kim36aeb162020-05-08 20:42:25 +0900427 -init
428 -system_server
429 -vendor_init
430} zram_control_prop:property_service set;
Inseob Kim1337e152020-05-12 22:51:48 +0900431
432neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900433 domain
Inseob Kim1337e152020-05-12 22:51:48 +0900434 -init
435 -system_server
436 -vendor_init
437} dalvik_runtime_prop:property_service set;
Inseob Kimdc1e5012020-04-27 21:13:01 +0900438
439neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900440 domain
Inseob Kimdc1e5012020-04-27 21:13:01 +0900441 -coredomain
442 -vendor_init
443} {
444 usb_config_prop
445 usb_control_prop
446}:property_service set;
Inseob Kim3b82aec2020-05-14 01:38:40 +0900447
448neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900449 domain
Inseob Kim3b82aec2020-05-14 01:38:40 +0900450 -init
451 -system_server
452} {
453 provisioned_prop
454 retaildemo_prop
455}:property_service set;
456
457neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900458 domain
Inseob Kim3b82aec2020-05-14 01:38:40 +0900459 -coredomain
460 -vendor_init
461} {
462 provisioned_prop
463 retaildemo_prop
464}:file no_rw_file_perms;
Inseob Kim15e5e0a2020-05-14 19:43:08 +0900465
466neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900467 domain
Inseob Kim15e5e0a2020-05-14 19:43:08 +0900468 -init
469} {
470 init_service_status_private_prop
471 init_service_status_prop
472}:property_service set;
Inseob Kimad631702020-05-14 21:47:43 +0900473
474neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900475 domain
Inseob Kimad631702020-05-14 21:47:43 +0900476 -init
477 -radio
478 -appdomain
479 -hal_telephony_server
Inseob Kim285da2f2020-06-04 20:29:43 +0900480 not_compatible_property(`-vendor_init')
Inseob Kimad631702020-05-14 21:47:43 +0900481} telephony_status_prop:property_service set;
Peiyong Lin37dea072020-06-03 12:20:41 -0700482
483neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900484 domain
Peiyong Lin37dea072020-06-03 12:20:41 -0700485 -init
486 -vendor_init
487} {
488 graphics_config_prop
489}:property_service set;
Inseob Kim6ffdf1b2020-06-16 20:00:41 +0900490
491neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900492 domain
Amy Hsu0f352fb2020-06-15 17:04:12 +0800493 -init
Midas Chien0d0391f2020-06-17 22:13:21 +0800494 -surfaceflinger
Amy Hsu0f352fb2020-06-15 17:04:12 +0800495} {
496 surfaceflinger_display_prop
497}:property_service set;
498
Inseob Kim072b0142020-06-16 20:00:41 +0900499neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900500 domain
Inseob Kim5eacf722020-07-01 01:27:49 +0900501 -coredomain
502 -appdomain
Inseob Kim6ffdf1b2020-06-16 20:00:41 +0900503 -vendor_init
Inseob Kim6ffdf1b2020-06-16 20:00:41 +0900504} packagemanager_config_prop:file no_rw_file_perms;
Inseob Kim04f435c2020-07-07 12:46:24 +0900505
506neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900507 domain
Inseob Kim04f435c2020-07-07 12:46:24 +0900508 -coredomain
509 -vendor_init
510} keyguard_config_prop:file no_rw_file_perms;
Alexander Mishkovetsf0be89b2020-07-08 23:11:03 +0200511
512neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900513 domain
Alexander Mishkovetsf0be89b2020-07-08 23:11:03 +0200514 -init
515} {
516 localization_prop
517}:property_service set;
Inseob Kimc80b0242020-07-16 22:25:47 +0900518
519neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900520 domain
Inseob Kimc80b0242020-07-16 22:25:47 +0900521 -init
522 -vendor_init
523 -dumpstate
524 -system_app
525} oem_unlock_prop:file no_rw_file_perms;
526
527neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900528 domain
Inseob Kimc80b0242020-07-16 22:25:47 +0900529 -coredomain
530 -vendor_init
531} storagemanager_config_prop:file no_rw_file_perms;
532
533neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900534 domain
Inseob Kimc80b0242020-07-16 22:25:47 +0900535 -init
536 -vendor_init
537 -dumpstate
538 -appdomain
539} sendbug_config_prop:file no_rw_file_perms;
Inseob Kimc97a97c2020-07-20 20:26:07 +0900540
541neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900542 domain
Inseob Kimc97a97c2020-07-20 20:26:07 +0900543 -init
544 -vendor_init
545 -dumpstate
546 -appdomain
547} camera_calibration_prop:file no_rw_file_perms;
Inseob Kim46dd4be2020-08-18 11:25:32 +0900548
549neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900550 domain
Inseob Kim46dd4be2020-08-18 11:25:32 +0900551 -init
552 -dumpstate
Jeff Vander Stoep684d25b2020-08-25 11:41:00 +0200553 -hal_dumpstate_server
Inseob Kim46dd4be2020-08-18 11:25:32 +0900554 not_compatible_property(`-vendor_init')
555} hal_dumpstate_config_prop:file no_rw_file_perms;
Primiano Tuccicd452302020-10-09 09:15:10 +0100556
557neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900558 domain
Primiano Tuccicd452302020-10-09 09:15:10 +0100559 -init
Yabin Cuibd4c9e82021-03-18 11:15:36 -0700560 userdebug_or_eng(`-profcollectd')
Yabin Cuif17fb422021-11-24 14:06:07 -0800561 userdebug_or_eng(`-simpleperf_boot')
Primiano Tuccicd452302020-10-09 09:15:10 +0100562 userdebug_or_eng(`-traced_probes')
Florian Mayer167407d2020-11-11 11:01:36 +0000563 userdebug_or_eng(`-traced_perf')
Primiano Tuccicd452302020-10-09 09:15:10 +0100564} {
565 lower_kptr_restrict_prop
566}:property_service set;
Janis Danisevskis202e8632020-10-23 11:16:34 -0700567
Inseob Kimd5a04482020-11-05 22:17:26 +0900568neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900569 domain
Inseob Kimd5a04482020-11-05 22:17:26 +0900570 -init
571} zygote_wrap_prop:property_service set;
572
573neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900574 domain
Inseob Kimd5a04482020-11-05 22:17:26 +0900575 -init
576} verity_status_prop:property_service set;
577
578neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900579 domain
Inseob Kimd5a04482020-11-05 22:17:26 +0900580 -init
581} setupwizard_prop:property_service set;
Inseob Kim99855662020-11-12 22:21:51 +0900582
583# ro.product.property_source_order is useless after initialization of ro.product.* props.
584# So making it accessible only from init and vendor_init.
585neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900586 domain
Inseob Kim99855662020-11-12 22:21:51 +0900587 -init
588 -dumpstate
589 -vendor_init
590} build_config_prop:file no_rw_file_perms;
Inseob Kim0cef0fe2020-11-17 13:54:52 +0900591
592neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900593 domain
Inseob Kim0cef0fe2020-11-17 13:54:52 +0900594 -init
595 -shell
596} sqlite_log_prop:property_service set;
597
598neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900599 domain
Inseob Kim0cef0fe2020-11-17 13:54:52 +0900600 -coredomain
601 -appdomain
602} sqlite_log_prop:file no_rw_file_perms;
Inseob Kim4c110ff2020-11-26 21:50:23 +0900603
Inseob Kim5c011e52021-01-14 04:08:16 +0000604neverallow {
Inseob Kim85acf6e2021-03-10 10:42:23 +0900605 domain
Inseob Kim5c011e52021-01-14 04:08:16 +0000606 -init
607} default_prop:property_service set;
608
Inseob Kim4c110ff2020-11-26 21:50:23 +0900609# Only one of system_property_type and vendor_property_type can be assigned.
610# Property types having both attributes won't be accessible from anywhere.
611neverallow domain system_and_vendor_property_type:{file property_service} *;
JW Wang0f8cf042021-02-24 14:29:06 +0800612
613neverallow {
614 # Only allow init and shell to set rollback_test_prop
Inseob Kim85acf6e2021-03-10 10:42:23 +0900615 domain
JW Wang0f8cf042021-02-24 14:29:06 +0800616 -init
617 -shell
618} rollback_test_prop:property_service set;
Yi Kong9b658452021-03-22 22:02:22 +0800619
620neverallow {
621 # Only allow init and profcollectd to access profcollectd_node_id_prop
622 domain
623 -init
624 -dumpstate
625 -profcollectd
626} profcollectd_node_id_prop:file r_file_perms;
627