1ec3d1a
policy_module(tripwire, 1.2.0)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Declarations
1ec3d1a
#
1ec3d1a
1ec3d1a
type siggen_t;
1ec3d1a
type siggen_exec_t;
1ec3d1a
application_domain(siggen_t, siggen_exec_t)
1ec3d1a
1ec3d1a
type tripwire_t;
1ec3d1a
type tripwire_exec_t;
1ec3d1a
application_domain(tripwire_t, tripwire_exec_t)
1ec3d1a
role system_r types tripwire_t;
1ec3d1a
1ec3d1a
type tripwire_etc_t;
1ec3d1a
files_config_file(tripwire_etc_t)
1ec3d1a
1ec3d1a
type tripwire_report_t;
1ec3d1a
files_type(tripwire_report_t)
1ec3d1a
1ec3d1a
type tripwire_tmp_t;
1ec3d1a
files_tmp_file(tripwire_tmp_t)
1ec3d1a
1ec3d1a
type tripwire_var_lib_t;
1ec3d1a
files_type(tripwire_var_lib_t)
1ec3d1a
1ec3d1a
type twadmin_t;
1ec3d1a
type twadmin_exec_t;
1ec3d1a
application_domain(twadmin_t, twadmin_exec_t)
1ec3d1a
1ec3d1a
type twprint_t;
1ec3d1a
type twprint_exec_t;
1ec3d1a
application_domain(twprint_t, twprint_exec_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Tripwire local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow tripwire_t self:capability { setgid setuid dac_override };
1ec3d1a
1ec3d1a
allow tripwire_t tripwire_etc_t:dir list_dir_perms;
1ec3d1a
read_files_pattern(tripwire_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
read_lnk_files_pattern(tripwire_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
files_search_etc(tripwire_t)
1ec3d1a
1ec3d1a
# Tripwire report files
1ec3d1a
manage_dirs_pattern(tripwire_t, tripwire_report_t, tripwire_report_t)
1ec3d1a
manage_files_pattern(tripwire_t, tripwire_report_t, tripwire_report_t)
1ec3d1a
manage_lnk_files_pattern(tripwire_t, tripwire_report_t, tripwire_report_t)
1ec3d1a
1ec3d1a
manage_dirs_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t)
1ec3d1a
manage_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t)
1ec3d1a
manage_lnk_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t)
1ec3d1a
manage_fifo_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t)
1ec3d1a
manage_sock_files_pattern(tripwire_t, tripwire_tmp_t, tripwire_tmp_t)
1ec3d1a
files_tmp_filetrans(tripwire_t, tripwire_tmp_t,{ dir file lnk_file sock_file fifo_file })
1ec3d1a
1ec3d1a
manage_files_pattern(tripwire_t, tripwire_var_lib_t, tripwire_var_lib_t)
1ec3d1a
files_var_lib_filetrans(tripwire_t, tripwire_var_lib_t, file)
1ec3d1a
1ec3d1a
kernel_read_system_state(tripwire_t)
1ec3d1a
kernel_read_network_state(tripwire_t)
1ec3d1a
kernel_read_software_raid_state(tripwire_t)
1ec3d1a
kernel_getattr_core_if(tripwire_t)
1ec3d1a
kernel_getattr_message_if(tripwire_t)
1ec3d1a
kernel_read_kernel_sysctls(tripwire_t)
1ec3d1a
1ec3d1a
corecmd_exec_shell(tripwire_t)
1ec3d1a
corecmd_exec_bin(tripwire_t)
1ec3d1a
1ec3d1a
domain_use_interactive_fds(tripwire_t)
1ec3d1a
1ec3d1a
files_read_all_files(tripwire_t)
1ec3d1a
files_read_all_symlinks(tripwire_t)
1ec3d1a
files_getattr_all_pipes(tripwire_t)
1ec3d1a
files_getattr_all_sockets(tripwire_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(tripwire_t)
1ec3d1a
1ec3d1a
userdom_use_inherited_user_terminals(tripwire_t)
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	cron_system_entry(tripwire_t, tripwire_exec_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Twadmin local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
manage_dirs_pattern(twadmin_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
manage_files_pattern(twadmin_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
manage_lnk_files_pattern(twadmin_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
1ec3d1a
domain_use_interactive_fds(twadmin_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(twadmin_t)
1ec3d1a
1ec3d1a
userdom_use_inherited_user_terminals(twadmin_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Twprint local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow twprint_t tripwire_etc_t:dir list_dir_perms;
1ec3d1a
read_files_pattern(twprint_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
read_lnk_files_pattern(twprint_t, tripwire_etc_t, tripwire_etc_t)
1ec3d1a
1ec3d1a
allow twprint_t tripwire_report_t:dir list_dir_perms;
1ec3d1a
read_files_pattern(twprint_t, tripwire_report_t, tripwire_report_t)
1ec3d1a
read_lnk_files_pattern(twprint_t, tripwire_report_t, tripwire_report_t)
1ec3d1a
1ec3d1a
allow twprint_t tripwire_var_lib_t:dir list_dir_perms;
1ec3d1a
read_files_pattern(twprint_t, tripwire_var_lib_t, tripwire_var_lib_t)
1ec3d1a
read_lnk_files_pattern(twprint_t, tripwire_var_lib_t, tripwire_var_lib_t)
1ec3d1a
files_search_var_lib(twprint_t)
1ec3d1a
1ec3d1a
domain_use_interactive_fds(twprint_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(twprint_t)
1ec3d1a
1ec3d1a
userdom_use_inherited_user_terminals(twprint_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Siggen local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
domain_use_interactive_fds(siggen_t)
1ec3d1a
1ec3d1a
# Need permission to read files
1ec3d1a
files_read_all_files(siggen_t)
1ec3d1a
1ec3d1a
logging_send_syslog_msg(siggen_t)
1ec3d1a
1ec3d1a
userdom_use_inherited_user_terminals(siggen_t)