[tomoyo-users 57] TOMOYO Linux の開発状況

Back to archive index

Tetsuo Handa from-****@i-lov*****
2006年 2月 23日 (木) 21:04:11 JST


 version 1.0.2 公開後、アクセス許可の拡張が行なわれています。

 version 1.0.2 まではファイルやディレクトリに対するアクセス許可の粒度は
read/write/execute の3種類のみでした。
そのため、 write 権限の中には
 open(O_WRONLY)
 open(O_RDWR)
 open(O_TRUNC)
 open(O_CREAT)
 sysctl(WRITE)
の他に
 mkdir
 rmdir
 unlink
 mksock
 mkfifo
 mkchar
 mkblock
 link
 symlink
 rename
 create
 truncate
が含まれていました。
しかし、あるファイルへの write 権限があればそのファイルを削除して同名の異なるファイルを
作成できてしまうのは嬉しくないので、次のバージョン(1.0.3 or 1.1 ?)では
write 権限は open(O_WRONLY) open(O_RDWR) sysctl(WRITE) だけを指すようにして、新規に
 allow_mkdir
 allow_rmdir
 allow_unlink
 allow_mksock
 allow_mkfifo
 allow_mkchar
 allow_mkblock
 allow_link
 allow_symlink
 allow_rename
 allow_create
 allow_truncate
という(細分化された書き込み)権限を導入する予定です。
また、 /root/security/mapping.txt を導入し、上記の権限をどのようにチェックするかも
指定できるようにする予定です。以下は指定例です。

 create=generic-write
 unlink=generic-write
 mkdir=mkdir
 rmdir=rmdir
 mkfifo=mkfifo
 mksock=mksock
 mkblock=mkblock
 mkchar=mkchar
 truncate=generic-write
 symlink=symlink
 link=link
 rename=rename

generic-write が従来の read/write/execute の write に相当します。
全項目に generic-write を指定すれば従来と同様の振る舞いをします。
no-check を指定すればそのパーミッションをチェックしません。

詳細に制御したい場合は個別のアクセス許可でチェックし、
大まかに制御したい場合は generic-write でチェックします。

既に実装とフック部分の修正は完了しており、権限を細分化しても
学習モードを使うことによりポリシー策定の負担はあまり増えないことを確認済みです。

 以上、開発状況のお知らせでした。

 ここから先はご意見募集です。

 上記の /root/security/mapping.txt では
「アクセス許可の種別毎にどのようにチェックするかを指定」
していますが、それよりも
「ドメイン毎にどのようにチェックするかを指定」
できるほうが嬉しいというご意見はありますでしょうか?
例えば、「<kernel> /usr/sbin/sshd /bin/bash」ドメイン以下は
generic-write でのチェックを行い、
「<kernel> /usr/sbin/httpd」ドメイン以下は
個別のアクセス許可によるチェックを行ないたいというようにです。
実装は容易(ドメイン属性で処理分岐するだけ)なので、
(ニーズがあるならば)検討したいと思います。
希望するポリシー構文(例えば exception_policy の中で
「use_strict_check <kernel> /usr/sbin/httpd」と指定する)と
一緒にお知らせください。
ニーズが無ければ「アクセス許可の種別毎の指定」を
次のバージョンに採用したいと思います。



tomoyo-users メーリングリストの案内
Back to archive index