Tetsuo Handa
from-****@I-lov*****
2010年 10月 24日 (日) 10:20:52 JST
http://www.st.ryukoku.ac.jp/~kjm/security/ml-archive/full-disclosure/2010.10/msg00263.html の脆弱性、 CentOS 5.5 であっさり死亡しました。(^^; 最も安全なのはユーザが用意したプログラムの実行を認めないようにすることですが、 ユーザが用意したプログラムの実行を認めざるを得ない場合には、 TOMOYO 1.7 の 環境変数名の制限機能を利用することもできます。 必要な環境変数名は 0-CONFIG::misc::env={ mode=learning } 1-CONFIG::misc::env={ mode=learning } 2-CONFIG::misc::env={ mode=learning } 3-CONFIG::misc::env={ mode=learning } で収集して、その結果を grep "^allow_env " /proc/ccs/domain_policy | sort | uniq で確認することができます。 使ってよい環境変数名をドメイン単位で制限したい場合にはドメインポリシーで 指定できます。一部の環境変数名を除き、システム全体に対して許可してしまっても 構わないと思います。 例外ポリシーで allow_env 使ってよい環境変数名1 allow_env 使ってよい環境変数名2 ・ ・ ・ allow_env 使ってよい環境変数名N という指定を行い、プロファイルで 0-CONFIG::misc::env={ mode=enforcing } 1-CONFIG::misc::env={ mode=enforcing } 2-CONFIG::misc::env={ mode=enforcing } 3-CONFIG::misc::env={ mode=enforcing } という指定を行っておくと、プログラム実行時に渡すことができる環境変数名を 制限することができます。