audit.logの保護

auditdは、/var/log/audit/audit.logをローテートしてる。
で、/var/log/audit/audit.log をrenameしてる。
今のseeditでは、/var/log/audit以下の「e」パーミッションを許可しなきゃいけない。。
これだと、audit.logが消去されちゃう可能性が。
dirのremove_nameも必要。
renameの統合箇所を考えたほうがいいようだ。。
remove_nameも、実はチェックしなくて良い気がするが。。

refpolicyでは?

ちなみに、refpolicyではどうしてるかと思ったら、、

allow auditd_t auditd_log_t:dir rw_dir_perms;
allow auditd_t auditd_log_t:file create_file_perms;
allow auditd_t auditd_log_t:lnk_file create_lnk_perms;
define(`create_file_perms', 
`{ create ioctl read getattr lock write setattr append link unlink rename }')

auditdが、/var/log/auditにフルアクセスなようだ。上書き、消去可能。
いいのか??
彼らの方針が分からない。

その他変更点

ポリシーをちょっと整理。
includeのネストをできるよう変更。

Firefoxを動かしてみる

AppArmor ネ申が、AppArmorで、firefox用プロファイルを作って動かしてる、っていうので、
seeditでも、firefox_tドメインを作ってみた。
現在、Enforcingモードで動作中&この日記書き込み中
試しに、Firefoxからデスクトップを参照できなくしてみた。
ポリシー記述は、こんな感じ。

{
domain firefox_t;
program /usr/bin/firefox;
include common-relaxed.sp;
include tmpfile.sp;
include nameservice.sp;
include xapps.sp;

#access to system files
allow /etc/localtime  r,s;
allow /etc/rc.d/init.d  s;
allow /usr/share/doc/HTML/** r,s;
allow /var/run/nscd/**  r,s;
allowfs proc_pid_other  o,r,s;
allowfs inotifyfs  r,s;
allow /etc/init.d r,s;

#access to commands
allow /bin/** x,r,s;
allow /usr/bin/** x,r,s;

#access to other process's tmp files
allow gdm_tmp_t  o,r,s;
allow unconfined_tmp_t  r,w,s;
allow xauthority_t  r,s;

allowpriv netlink;
allownet -protocol tcp -port 80,443 client;
allownet -protocol tcp -port 1024- client;
allowcom -ipc unconfined_t w,r;
allowcom -ipc xserver_t r,w;

#access to home dirs
#このへんは好みにあわせて。
allow ~/** r,w,s;
deny ~/Desktop/** ;
allow ~/.mozilla/** r,w,s;
}