policy_module(tripwire, 1.2.1) ######################################## # # Declarations # attribute_role siggen_roles; attribute_role tripwire_roles; attribute_role twadmin_roles; attribute_role twprint_roles; type siggen_t; type siggen_exec_t; application_domain(siggen_t, siggen_exec_t) role siggen_roles types siggen_t; type tripwire_t; type tripwire_exec_t; application_domain(tripwire_t, tripwire_exec_t) role tripwire_roles types tripwire_t; type tripwire_etc_t; files_config_file(tripwire_etc_t) type tripwire_report_t; files_type(tripwire_report_t) type tripwire_tmp_t; files_tmp_file(tripwire_tmp_t) type tripwire_var_lib_t; files_type(tripwire_var_lib_t) type twadmin_t; type twadmin_exec_t; application_domain(twadmin_t, twadmin_exec_t) role twadmin_roles types twadmin_t; type twprint_t; type twprint_exec_t; application_domain(twprint_t, twprint_exec_t) role twprint_roles types twprint_t; ######################################## # # Local policy # allow tripwire_t self:capability { setgid setuid dac_override }; allow tripwire_t tripwire_etc_t:dir list_dir_perms; allow tripwire_t tripwire_etc_t:file read_file_perms; allow tripwire_t tripwire_etc_t:lnk_file read_lnk_file_perms; manage_dirs_pattern(tripwire_t, tripwire_report_t, tripwire_report_t) manage_files_pattern(tripwire_t, tripwire_report_t, tripwire_report_t) manage_lnk_files_pattern(tripwire_t, tripwire_report_t, tripwire_report_t) manage_dirs_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t) manage_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t) manage_lnk_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t) manage_fifo_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t) manage_sock_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t) files_tmp_filetrans(tripwire_t, tripwire_tmp_t,{ dir file lnk_file sock_file fifo_file }) manage_files_pattern(tripwire_t, tripwire_var_lib_t, tripwire_var_lib_t) files_var_lib_filetrans(tripwire_t, tripwire_var_lib_t, file) kernel_read_system_state(tripwire_t) kernel_read_network_state(tripwire_t) kernel_read_software_raid_state(tripwire_t) kernel_getattr_core_if(tripwire_t) kernel_getattr_message_if(tripwire_t) kernel_read_kernel_sysctls(tripwire_t) corecmd_exec_bin(tripwire_t) corecmd_exec_shell(tripwire_t) domain_use_interactive_fds(tripwire_t) files_read_all_files(tripwire_t) files_read_all_symlinks(tripwire_t) files_getattr_all_pipes(tripwire_t) files_getattr_all_sockets(tripwire_t) logging_send_syslog_msg(tripwire_t) userdom_use_inherited_user_terminals(tripwire_t) optional_policy(` cron_system_entry(tripwire_t, tripwire_exec_t) ') ######################################## # # Twadmin local policy # allow twadmin_t tripwire_etc_t:dir list_dir_perms; allow twadmin_t tripwire_etc_t:file read_file_perms; allow twadmin_t tripwire_etc_t:lnk_file read_lnk_file_perms; domain_use_interactive_fds(twadmin_t) files_search_etc(twadmin_t) logging_send_syslog_msg(twadmin_t) userdom_use_inherited_user_terminals(twadmin_t) ######################################## # # Twprint local policy # allow twprint_t tripwire_etc_t:dir list_dir_perms; allow twprint_t tripwire_etc_t:file read_file_perms; allow twprint_t tripwire_etc_t:lnk_file read_lnk_file_perms; allow twprint_t tripwire_report_t:dir list_dir_perms; allow twprint_t tripwire_report_t:file read_file_perms; allow twprint_t tripwire_report_t:lnk_file read_lnk_file_perms; allow twprint_t tripwire_var_lib_t:dir list_dir_perms; allow twprint_t tripwire_var_lib_t:file read_file_perms; allow twprint_t tripwire_var_lib_t:lnk_file read_lnk_file_perms; domain_use_interactive_fds(twprint_t) files_search_etc(twprint_t) files_search_var_lib(twprint_t) logging_send_syslog_msg(twprint_t) userdom_use_inherited_user_terminals(twprint_t) ######################################## # # Siggen local policy # domain_use_interactive_fds(siggen_t) files_read_all_files(siggen_t) logging_send_syslog_msg(siggen_t) userdom_use_inherited_user_terminals(siggen_t)