第5回 Referenceポリシーの作成と動作テスト
古田 真己サイオステクノロジー株式会社
インフラストラクチャービジネスユニット
Linuxテクノロジー部
OSSテクノロジーグループ
2006/6/17
実行ファイルのタイプを考える
次に、ドメイン名と関連付けたアプリケーションの実行ファイルに付けるタイプを考えます。これはtomcat.fcを作成する部分に当たります。
SELinuxではドメイン遷移を起こす起点(エントリポイント)のバイナリに対してXX_exec_tタイプを与えています。今回は/etc/init.d/tomcat,service tomcatに対して、start、stop、restart、condrestartを実行するとドメイン遷移を起こすように設定するため、/usr/lib/jvm/java/bin/javaにtomcat_exec_tを与えることとします。
fcファイルの構成は以下の手順で行っていきます。
1.rpmコマンドを使ったファイルのリストアップ(tomcat.fc)
/etc/tomcat5(/.*)? gen_context(system_u:object_r:tomcat_etc_t,s0) /var/lib/tomcat5(/.*)? gen_context(system_u:object_r:tomcat_lib_t,s0) /usr/share/tomcat5(/.*)? gen_context(system_u:object_r:tomcat_lib_t,s0) /usr/lib/jvm/java/bin/java gen_context(system_u:object_r:tomcat_exec_t,s0) |
2.動作に必要なファイルのリストアップ(tomcat.fc)
/var/run/tomcat5.* gen_context(system_u:object_r:tomcat_var_run_t,s0) /tmp/(catalina|jakarta|jsp|naming|servlets|struts|tomcat).* gen_context(system_u:object_r:tomcat_tmp_t,s0) |
3.fcファイルの完成(tomcat.fc)
/var/lib/tomcat5(/.*)? gen_context(system_u:object_r:httpd_sys_content_t,s0) /etc/tomcat5(/.*)? gen_context(system_u:object_r:tomcat_etc_t,s0) /var/run/tomcat5.* gen_context(system_u:object_r:tomcat_var_run_t,s0) /usr/lib/jvm/java/bin/java gen_context(system_u:object_r:tomcat_exec_t,s0) /var/log/tomcat5(/.*)? gen_context(system_u:object_r:tomcat_log_t,s0) /tmp/(catalina|jakarta|jsp|naming|servlets|struts|tomcat).* gen_context(system_u:object_r:tomcat_tmp_t,s0) |
インターフェイスを考える
最後にほかのポリシーモジュールから利用するインターフェイスを作成します。これはtomcat.ifを作成する部分に当たります。
インターフェイスといっても、従来のm4によるマクロを別ファイルに固めたものです。ほかのアプリケーションから使用する可能性がなければ作成する必要はありません。
これはReferenceポリシーの強力なカプセル化、手続きの隠ぺいのために行うもので、現在のポリシーではポリシーファイル(*.te)に書かれているタイプをそのまま使用しても問題なく動作します。 |
モジュールの作成
モジュールの作成は以下の手順で行っていきます。
1.ファイルの配置と作成方法
mv -v tomcat.te /etc/selinux/refpolicy/src/policy/poliy/moudles mv -v tomcat.fc /etc/selinux/refpolicy/src/policy/poliy/moudles mv -v tomcat.if /etc/selinux/refpolicy/src/policy/poliy/moudles cd /etc/selinux/refpolicy/src/policy/ make tomcat.pp |
2.モジュールのインストールと確認
semodule -i tomcat.pp semodule -l |grep tomcat |
3.ファイルコンテキストの再付与
restorecon -Rv /usr/share/tomcat5 /var/lib/tomcat5 /var/log/httpd /etc/tomcat5 |
ログの再確認と修正
ポリシーを作成したら、動作検証と併せてログを確認します。SELinuxのモードによるエラーログ出力回数と動作しているサービスによる出力先の変化に注意してください。
モードによって、それぞれ次のような特徴があります。
Permissiveモード
警告は最初1回のみログに出力されます。
Enforcingモード
アクセス制御ルールに抵触するたびに警告メッセージがログに出力されます。
ログの確認方法には、syslogdとauditdの2種類があります。
syslogd
auditdが動作している場合はauditログが出力されます。auditdを停止させることで、すべてのSELinuxのログメッセージを/var/log/messagesに出力してtailコマンドで逐次出力されるログを確認できます。
auditd
ausearchコマンドで「[root@vmfc4~]# ausearch -m AVC」とすることで、mauditのレコードからSELinuxのAVCを含んだセキュリティインシデントを検索して表示させることができます。
2/4
|
Index | |
Referenceポリシーの作成と動作テスト | |
Page1 ドメイン名を考える |
|
Page2 実行ファイルのタイプを考える インターフェイスを考える モジュールの作成 ログの再確認と修正 |
|
Page3 FC5におけるポリシーソースのインストール方法 新しくなったaudit2allowによる設定方法 |
|
Page4 SELinuxのこれからの展開 |
Security&Trust記事一覧 |
- Windows起動前後にデバイスを守る工夫、ルートキットを防ぐ (2017/7/24)
Windows 10が備える多彩なセキュリティ対策機能を丸ごと理解するには、5つのスタックに分けて順に押さえていくことが早道だ。連載第1回は、Windows起動前の「デバイスの保護」とHyper-Vを用いたセキュリティ構成について紹介する。 - WannaCryがホンダやマクドにも。中学3年生が作ったランサムウェアの正体も話題に (2017/7/11)
2017年6月のセキュリティクラスタでは、「WannaCry」の残り火にやられたホンダや亜種に感染したマクドナルドに注目が集まった他、ランサムウェアを作成して配布した中学3年生、ランサムウェアに降伏してしまった韓国のホスティング企業など、5月に引き続きランサムウェアの話題が席巻していました。 - Recruit-CSIRTがマルウェアの「培養」用に内製した動的解析環境、その目的と工夫とは (2017/7/10)
代表的なマルウェア解析方法を紹介し、自社のみに影響があるマルウェアを「培養」するために構築した動的解析環境について解説する - 侵入されることを前提に考える――内部対策はログ管理から (2017/7/5)
人員リソースや予算の限られた中堅・中小企業にとって、大企業で導入されがちな、過剰に高機能で管理負荷の高いセキュリティ対策を施すのは現実的ではない。本連載では、中堅・中小企業が目指すべきセキュリティ対策の“現実解“を、特に標的型攻撃(APT:Advanced Persistent Threat)対策の観点から考える。
|
|