Personal memo

英語キーボードにまだ慣れない。。。 今日の修正 存在しないファイル(存在を特定できないファイル)の扱い allow ~/public_html r,s; と設定を書いたとき、 allow ~/public_html/* r,s;と扱われてしまっていたので修正。 存在しない(存在を特定できないファ…

Russell Cokerさんとの勉強会が終わったころかな。 英語キーボードになったので、タイプミス続発。。。 全然関係ないけど、breakって、「分岐する」みたいな意味もあるんですね。 selinux-usersの投稿で初めて知った。 今日の変更点 audit2spdlのログ中のタ…

例によって作業メモ… ホームディレクトリのサポート ホームディレクトリのサポートを忘れてた。 例えば,httpd_tに,public_htmlのアクセスさせたい場合 allow /home//public_html r,s; をユーザーの数だけ書く必要がある。。100人ユーザがいたら100行(^^; A…

今浮かんだネタを実装 /etc/selinux/targeted/contexts/customizable_types にfile_type transitionで作られたラベルを登録するように (/etc/mtabなど) seedit-converterに-cオプションをつけ、customizable_typesファイルを生成する。 ファイルタイプ遷移…

今日の修正 seedit-unconfinedコマンドを作った ドメインが用意されてても、allowpriv allしてるものがあるので、注意を促すため。 appaprmorのunconfinedのパクリ seedit-unconfined -e :起動中のプロセスのドメイン+unconfinedなものはその旨表示 seedit-u…

今日の修正

ドメイン遷移のプログラム名のワイルドカードサポート dxパーミッション実装 { domain foo_t; ... allow /foo/bar dx; } とすると、/foo/barにドメインが定義されているときは、ドメイン遷移する。 allow /foo/** dxというワイルドカード指定も可能。/foo以…

AppArmorのドメイン遷移

seeditのドメイン遷移簡略化を考えるにあたってAppArmorのドメイン割り当てを見てみる。 AppArmorのドメイン(プロファイル)割り当ては、次のようになっているようだ。 プロファイルが割り当てられる場合 unconfinedなプロセスから起動され、プロファイルが…

ドメイン遷移さようなら?? ドメイン遷移も、「緩い」ポリシーならば隠蔽できる気がしてきた。 普通の場合、一つのプログラムにはドメインは一個しか割り当てない。 strictポリシだと、1つのプログラムにロール毎のドメインが割り当てられるけど。つまり,…

修正 statの返り値をちゃんと見るように変更。 PANDAさんありがとうございます。 他にも怪しい箇所が山盛りかも。。。 シンボリックリンクの扱いが怪しい allow /var/mail/** (/var/mail -> /var/spool/mail という関係) とした場合、 file_contextsに /var…

バグ取り

ファイルに対するdenyの動作が不定だったので、修正。 ファイルルールを格納するデータ構造を変更。ハッシュテーブルに入ってたのを普通の配列に。 statのハマリ statシステムコールを使う場合、 stat(buf,path) とするが、 ループでbufを使いまわす場合は,…

今日の修正

Simplified Policyのディレクトリ構造整理。 拡張子名を「.sp(Simplified Policy)」に変更。 .aだったのは、あんまりなので。 core,apps,servicesディレクトリに分割配置。 coreは、システム関連のポリシ。appsは、普通のコマンド類。servicesにデーモンの設…