Skip to content
Snippets Groups Projects
Commit d15d5a4e authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Start the process of locking down proc/net"

parents 8e15da53 08731895
No related branches found
No related tags found
No related merge requests found
...@@ -35,7 +35,8 @@ type proc_meminfo, fs_type, proc_type; ...@@ -35,7 +35,8 @@ type proc_meminfo, fs_type, proc_type;
type proc_misc, fs_type, proc_type; type proc_misc, fs_type, proc_type;
type proc_modules, fs_type, proc_type; type proc_modules, fs_type, proc_type;
type proc_mounts, fs_type, proc_type; type proc_mounts, fs_type, proc_type;
type proc_net, fs_type, proc_type; type proc_net, fs_type, proc_type, proc_net_type;
type proc_net_vpn, fs_type, proc_type, proc_net_type;
type proc_page_cluster, fs_type, proc_type; type proc_page_cluster, fs_type, proc_type;
type proc_pagetypeinfo, fs_type, proc_type; type proc_pagetypeinfo, fs_type, proc_type;
type proc_panic, fs_type, proc_type; type proc_panic, fs_type, proc_type;
......
...@@ -39,7 +39,7 @@ allow hal_telephony_server self:netlink_kobject_uevent_socket create_socket_perm ...@@ -39,7 +39,7 @@ allow hal_telephony_server self:netlink_kobject_uevent_socket create_socket_perm
# Access to wake locks # Access to wake locks
wakelock_use(hal_telephony_server) wakelock_use(hal_telephony_server)
r_dir_file(hal_telephony_server, proc_net) r_dir_file(hal_telephony_server, proc_net_type)
r_dir_file(hal_telephony_server, sysfs_type) r_dir_file(hal_telephony_server, sysfs_type)
r_dir_file(hal_telephony_server, system_file) r_dir_file(hal_telephony_server, system_file)
......
...@@ -5,7 +5,7 @@ binder_call(hal_wifi_server, hal_wifi_client) ...@@ -5,7 +5,7 @@ binder_call(hal_wifi_server, hal_wifi_client)
add_hwservice(hal_wifi_server, hal_wifi_hwservice) add_hwservice(hal_wifi_server, hal_wifi_hwservice)
allow hal_wifi_client hal_wifi_hwservice:hwservice_manager find; allow hal_wifi_client hal_wifi_hwservice:hwservice_manager find;
r_dir_file(hal_wifi, proc_net) r_dir_file(hal_wifi, proc_net_type)
r_dir_file(hal_wifi, sysfs_type) r_dir_file(hal_wifi, sysfs_type)
set_prop(hal_wifi, exported_wifi_prop) set_prop(hal_wifi, exported_wifi_prop)
......
...@@ -10,7 +10,7 @@ allow hal_wifi_hostapd_server self:global_capability_class_set { net_admin net_r ...@@ -10,7 +10,7 @@ allow hal_wifi_hostapd_server self:global_capability_class_set { net_admin net_r
allow hal_wifi_hostapd_server sysfs_net:dir search; allow hal_wifi_hostapd_server sysfs_net:dir search;
# Allow hal_wifi_hostapd to access /proc/net/psched # Allow hal_wifi_hostapd to access /proc/net/psched
allow hal_wifi_hostapd_server proc_net:file { getattr open read }; allow hal_wifi_hostapd_server proc_net_type:file { getattr open read };
# Various socket permissions. # Various socket permissions.
allowxperm hal_wifi_hostapd_server self:udp_socket ioctl priv_sock_ioctls; allowxperm hal_wifi_hostapd_server self:udp_socket ioctl priv_sock_ioctls;
......
...@@ -5,5 +5,5 @@ binder_call(hal_wifi_offload_server, hal_wifi_offload_client) ...@@ -5,5 +5,5 @@ binder_call(hal_wifi_offload_server, hal_wifi_offload_client)
add_hwservice(hal_wifi_offload_server, hal_wifi_offload_hwservice) add_hwservice(hal_wifi_offload_server, hal_wifi_offload_hwservice)
allow hal_wifi_offload_client hal_wifi_offload_hwservice:hwservice_manager find; allow hal_wifi_offload_client hal_wifi_offload_hwservice:hwservice_manager find;
r_dir_file(hal_wifi_offload, proc_net) r_dir_file(hal_wifi_offload, proc_net_type)
r_dir_file(hal_wifi_offload, sysfs_type) r_dir_file(hal_wifi_offload, sysfs_type)
...@@ -9,7 +9,7 @@ allow hal_wifi_supplicant_client hal_wifi_supplicant_hwservice:hwservice_manager ...@@ -9,7 +9,7 @@ allow hal_wifi_supplicant_client hal_wifi_supplicant_hwservice:hwservice_manager
allowxperm hal_wifi_supplicant self:udp_socket ioctl priv_sock_ioctls; allowxperm hal_wifi_supplicant self:udp_socket ioctl priv_sock_ioctls;
r_dir_file(hal_wifi_supplicant, sysfs_type) r_dir_file(hal_wifi_supplicant, sysfs_type)
r_dir_file(hal_wifi_supplicant, proc_net) r_dir_file(hal_wifi_supplicant, proc_net_type)
allow hal_wifi_supplicant kernel:system module_request; allow hal_wifi_supplicant kernel:system module_request;
allow hal_wifi_supplicant self:global_capability_class_set { setuid net_admin setgid net_raw }; allow hal_wifi_supplicant self:global_capability_class_set { setuid net_admin setgid net_raw };
......
...@@ -275,7 +275,7 @@ allow init kernel:system syslog_mod; ...@@ -275,7 +275,7 @@ allow init kernel:system syslog_mod;
allow init self:global_capability2_class_set syslog; allow init self:global_capability2_class_set syslog;
# init access to /proc. # init access to /proc.
r_dir_file(init, proc_net) r_dir_file(init, proc_net_type)
allow init { allow init {
proc_cmdline proc_cmdline
...@@ -293,7 +293,7 @@ allow init { ...@@ -293,7 +293,7 @@ allow init {
proc_hostname proc_hostname
proc_hung_task proc_hung_task
proc_extra_free_kbytes proc_extra_free_kbytes
proc_net proc_net_type
proc_max_map_count proc_max_map_count
proc_min_free_order_shift proc_min_free_order_shift
proc_overcommit_memory proc_overcommit_memory
......
...@@ -6,7 +6,10 @@ type logd_exec, exec_type, file_type; ...@@ -6,7 +6,10 @@ type logd_exec, exec_type, file_type;
r_dir_file(logd, cgroup) r_dir_file(logd, cgroup)
r_dir_file(logd, proc_kmsg) r_dir_file(logd, proc_kmsg)
r_dir_file(logd, proc_meminfo) r_dir_file(logd, proc_meminfo)
r_dir_file(logd, proc_net) r_dir_file(logd, proc_net_type)
userdebug_or_eng(`
auditallow logd proc_net_type:{ dir file lnk_file } { getattr open read };
')
allow logd self:global_capability_class_set { setuid setgid setpcap sys_nice audit_control }; allow logd self:global_capability_class_set { setuid setgid setpcap sys_nice audit_control };
allow logd self:global_capability2_class_set syslog; allow logd self:global_capability2_class_set syslog;
......
...@@ -41,9 +41,9 @@ allow netd proc_qtaguid_ctrl:file rw_file_perms; ...@@ -41,9 +41,9 @@ allow netd proc_qtaguid_ctrl:file rw_file_perms;
# Allow netd to read /dev/qtaguid. This is the same privilege level that normal apps have. # Allow netd to read /dev/qtaguid. This is the same privilege level that normal apps have.
allow netd qtaguid_device:chr_file r_file_perms; allow netd qtaguid_device:chr_file r_file_perms;
r_dir_file(netd, proc_net) r_dir_file(netd, proc_net_type)
# For /proc/sys/net/ipv[46]/route/flush. # For /proc/sys/net/ipv[46]/route/flush.
allow netd proc_net:file rw_file_perms; allow netd proc_net_type:file rw_file_perms;
# Enables PppController and interface enumeration (among others) # Enables PppController and interface enumeration (among others)
allow netd sysfs:dir r_dir_perms; allow netd sysfs:dir r_dir_perms;
......
...@@ -5,7 +5,7 @@ type ppp_exec, exec_type, file_type; ...@@ -5,7 +5,7 @@ type ppp_exec, exec_type, file_type;
net_domain(ppp) net_domain(ppp)
r_dir_file(ppp, proc_net) r_dir_file(ppp, proc_net_type)
allow ppp mtp:socket rw_socket_perms; allow ppp mtp:socket rw_socket_perms;
......
...@@ -10,4 +10,7 @@ allow preopt2cachename cppreopts:fd use; ...@@ -10,4 +10,7 @@ allow preopt2cachename cppreopts:fd use;
allow preopt2cachename cppreopts:fifo_file { getattr read write }; allow preopt2cachename cppreopts:fifo_file { getattr read write };
# Allow write to logcat. # Allow write to logcat.
allow preopt2cachename proc_net:file r_file_perms; allow preopt2cachename proc_net_type:file r_file_perms;
userdebug_or_eng(`
auditallow preopt2cachename proc_net_type:{ dir file lnk_file } { getattr open read };
')
...@@ -115,7 +115,7 @@ hwbinder_use(shell) ...@@ -115,7 +115,7 @@ hwbinder_use(shell)
allow shell hwservicemanager:hwservice_manager list; allow shell hwservicemanager:hwservice_manager list;
# allow shell to look through /proc/ for lsmod, ps, top, netstat. # allow shell to look through /proc/ for lsmod, ps, top, netstat.
r_dir_file(shell, proc_net) r_dir_file(shell, proc_net_type)
allow shell { allow shell {
proc_asound proc_asound
......
...@@ -123,8 +123,8 @@ allow vendor_init { ...@@ -123,8 +123,8 @@ allow vendor_init {
allow vendor_init dev_type:blk_file getattr; allow vendor_init dev_type:blk_file getattr;
# Write to /proc/sys/net/ping_group_range and other /proc/sys/net files. # Write to /proc/sys/net/ping_group_range and other /proc/sys/net files.
r_dir_file(vendor_init, proc_net) r_dir_file(vendor_init, proc_net_type)
allow vendor_init proc_net:file w_file_perms; allow vendor_init proc_net_type:file w_file_perms;
allow vendor_init self:global_capability_class_set net_admin; allow vendor_init self:global_capability_class_set net_admin;
# Write to /proc/sys/vm/page-cluster # Write to /proc/sys/vm/page-cluster
......
...@@ -8,7 +8,11 @@ allow vold cache_file:file { getattr read }; ...@@ -8,7 +8,11 @@ allow vold cache_file:file { getattr read };
allow vold cache_file:lnk_file r_file_perms; allow vold cache_file:lnk_file r_file_perms;
# Read access to pseudo filesystems. # Read access to pseudo filesystems.
r_dir_file(vold, proc_net) r_dir_file(vold, proc_net_type)
userdebug_or_eng(`
auditallow vold proc_net_type:{ dir file lnk_file } { getattr open read };
')
r_dir_file(vold, sysfs_type) r_dir_file(vold, sysfs_type)
# XXX Label sysfs files with a specific type? # XXX Label sysfs files with a specific type?
allow vold sysfs:file w_file_perms; # writing to /sys/*/uevent during coldboot. allow vold sysfs:file w_file_perms; # writing to /sys/*/uevent during coldboot.
......
...@@ -21,7 +21,7 @@ allow wificond self:netlink_socket create_socket_perms_no_ioctl; ...@@ -21,7 +21,7 @@ allow wificond self:netlink_socket create_socket_perms_no_ioctl;
# newer kernels (e.g. 4.4 but not 4.1) have a new class for sockets # newer kernels (e.g. 4.4 but not 4.1) have a new class for sockets
allow wificond self:netlink_generic_socket create_socket_perms_no_ioctl; allow wificond self:netlink_generic_socket create_socket_perms_no_ioctl;
r_dir_file(wificond, proc_net) r_dir_file(wificond, proc_net_type)
# allow wificond to check permission for dumping logs # allow wificond to check permission for dumping logs
allow wificond permission_service:service_manager find; allow wificond permission_service:service_manager find;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment