Dan Walsh 3eaa99
policy_module(chrome,1.0.0)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
########################################
Dan Walsh 3eaa99
#
Dan Walsh 3eaa99
# Declarations
Dan Walsh 3eaa99
#
Dan Walsh 3eaa99
Dan Walsh 3eaa99
type chrome_sandbox_t;
Dan Walsh 3eaa99
type chrome_sandbox_exec_t;
Dan Walsh 3eaa99
application_domain(chrome_sandbox_t, chrome_sandbox_exec_t)
Dan Walsh 3eaa99
role system_r types chrome_sandbox_t;
Dan Walsh 3eaa99
Dan Walsh 3eaa99
type chrome_sandbox_tmp_t;
Dan Walsh 3eaa99
files_tmp_file(chrome_sandbox_tmp_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
type chrome_sandbox_tmpfs_t;
Dan Walsh 3eaa99
files_tmpfs_file(chrome_sandbox_tmpfs_t)
Dan Walsh 3eaa99
ubac_constrained(chrome_sandbox_tmpfs_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
########################################
Dan Walsh 3eaa99
#
Dan Walsh 3eaa99
# chrome_sandbox local policy
Dan Walsh 3eaa99
#
Dan Walsh 3eaa99
allow chrome_sandbox_t self:capability { chown dac_override fsetid setgid setuid sys_admin sys_chroot sys_ptrace };
Dan Walsh 3eaa99
allow chrome_sandbox_t self:process { signal_perms setrlimit execmem execstack };
Dan Walsh 3eaa99
allow chrome_sandbox_t self:fifo_file manage_file_perms;
Dan Walsh 3eaa99
allow chrome_sandbox_t self:unix_stream_socket create_stream_socket_perms;
Dan Walsh 3eaa99
allow chrome_sandbox_t self:unix_dgram_socket { create_socket_perms sendto };
Dan Walsh 3eaa99
allow chrome_sandbox_t self:shm create_shm_perms;
Dan Walsh 3eaa99
Dan Walsh 3eaa99
manage_dirs_pattern(chrome_sandbox_t, chrome_sandbox_tmp_t, chrome_sandbox_tmp_t)
Dan Walsh 3eaa99
manage_files_pattern(chrome_sandbox_t, chrome_sandbox_tmp_t, chrome_sandbox_tmp_t)
Dan Walsh 3eaa99
files_tmp_filetrans(chrome_sandbox_t, chrome_sandbox_tmp_t, { dir file })
Dan Walsh 3eaa99
Dan Walsh 3eaa99
manage_files_pattern(chrome_sandbox_t, chrome_sandbox_tmpfs_t, chrome_sandbox_tmpfs_t)
Dan Walsh 3eaa99
fs_tmpfs_filetrans(chrome_sandbox_t, chrome_sandbox_tmpfs_t, file)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
kernel_read_system_state(chrome_sandbox_t)
Dan Walsh 3eaa99
kernel_read_kernel_sysctls(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3034a8
fs_manage_cgroup_dirs(chrome_sandbox_t)
Dan Walsh 3034a8
fs_manage_cgroup_files(chrome_sandbox_t)
Dan Walsh 3034a8
Dan Walsh 3eaa99
corecmd_exec_bin(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
domain_dontaudit_read_all_domains_state(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
dev_read_urand(chrome_sandbox_t)
Dan Walsh 3eaa99
dev_read_sysfs(chrome_sandbox_t)
Dan Walsh 3eaa99
dev_rwx_zero(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
files_read_etc_files(chrome_sandbox_t)
Dan Walsh 3eaa99
files_read_usr_files(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
fs_dontaudit_getattr_all_fs(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
userdom_rw_user_tmpfs_files(chrome_sandbox_t)
Dan Walsh 3eaa99
userdom_use_user_ptys(chrome_sandbox_t)
Dan Walsh 3eaa99
userdom_write_inherited_user_tmp_files(chrome_sandbox_t)
Dan Walsh 3eaa99
userdom_read_inherited_user_home_content_files(chrome_sandbox_t)
Dan Walsh 3eaa99
userdom_dontaudit_use_user_terminals(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 3eaa99
miscfiles_read_localization(chrome_sandbox_t)
Dan Walsh 3eaa99
miscfiles_read_fonts(chrome_sandbox_t)
Dan Walsh 3eaa99
Dan Walsh 0b8f4c
sysnet_dontaudit_read_config(chrome_sandbox_t)
Dan Walsh 0b8f4c
Dan Walsh 3eaa99
optional_policy(`
Dan Walsh 3eaa99
	execmem_exec(chrome_sandbox_t)
Dan Walsh 3eaa99
')
Dan Walsh 3eaa99
Dan Walsh 3eaa99
optional_policy(`
Dan Walsh 3eaa99
	gnome_rw_inherited_config(chrome_sandbox_t)
Dan Walsh 3eaa99
	gnome_list_home_config(chrome_sandbox_t)
Dan Walsh 3eaa99
')
Dan Walsh 3eaa99
Dan Walsh 3eaa99
optional_policy(`
Dan Walsh 3eaa99
	xserver_use_user_fonts(chrome_sandbox_t)
Dan Walsh 3eaa99
	xserver_user_x_domain_template(chrome_sandbox, chrome_sandbox_t, chrome_sandbox_tmpfs_t)
Dan Walsh 3eaa99
')
Dan Walsh 3eaa99
Dan Walsh 3eaa99
tunable_policy(`use_nfs_home_dirs',`
Dan Walsh 3eaa99
	fs_dontaudit_append_nfs_files(chrome_sandbox_t)
Dan Walsh 3eaa99
	fs_dontaudit_read_nfs_files(chrome_sandbox_t)
Dan Walsh 3eaa99
	fs_dontaudit_read_nfs_symlinks(chrome_sandbox_t)
Dan Walsh 3eaa99
')
Dan Walsh 3eaa99
Dan Walsh 3eaa99
tunable_policy(`use_samba_home_dirs',`
Dan Walsh 3eaa99
	fs_dontaudit_append_cifs_files(chrome_sandbox_t)
Dan Walsh 3eaa99
	fs_dontaudit_read_cifs_files(chrome_sandbox_t)
Dan Walsh 3eaa99
')