[tomoyo-users 757] 環境変数を使った権限昇格

Zurück zum Archiv-Index

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 }

という指定を行っておくと、プログラム実行時に渡すことができる環境変数名を
制限することができます。




tomoyo-users メーリングリストの案内
Zurück zum Archiv-Index