[PHP-users 5006] Re: [SECURITY]:PHP4 session spoofing exploit
Yasuo Ohgaki
php-users@php.gr.jp
Sat, 26 Jan 2002 13:02:03 +0900
大垣です。
Naofumi Kondoh wrote:
> ソフト工房の近藤です。
>
> Youichi Iwakiri wrote:
>
>>いわきりです
>>
>
> ....略....
>
>
>>あくまで、PHPによる内部処理で弾かれるだけで、ファイル自体の
>>パーミッションはグループまたはワールドに参照権を付加することになるので
>>localユーザからは丸見えですね。ログインを許さなくてもPHP以外の言語
>>(たとえばperl)が利用可能であれば、簡単に情報を見ることができます。
>>
>>Apache2に期待というところでしょうか。
>>
>>#レンタルサーバ屋さんはどうやって共有サーバ資源のセキュリティを
>>#確保しているのか興味あるところです。
>>
>
> コメントに反応しますが、レンタルサーバー屋さんが
> どうしているかは、私も知りたいです。
>
> 某レンタルサーバーで、PostgreSQL を使ってみたところ、
> 他の利用者の DB の中身も丸見えでした。
それはあんまりだと思います。DBを見えないように設定するのは
簡単ですから。でもその程度が普通なんでしょうか?
>
> DB の場合、パスワードを使って保護するにも、その
> パスワードの入ったファイルが、Web User (nobody 等)
> から読めなければならないので、PHP の include を
> たどって、 パスワード設定の PHP ソースを読めるはず
> ですね。なにか、うまい防御手段はあるのでしょうか。
私であれば、
httpd.conf
顧客毎にVitualHostを作り、httpdのUIDを
別にします。必要であれば、GIDも別にします。
顧客が変更できないphp.iniのエントリを定義します。
safe_modeをOn、必要であればsafe_mode_gidもOn
にします。doc_root等の必要な設定もします。
php.ini
全ての顧客に共通かつ変更可能なiniエントリを定義します。
.htaccess
顧客が変更したいiniエントリを定義します。
ユーザーは各自のUID/GIDでファイルを作成します。
実行できる関数、パーミッション等を適切に設定すれば、Web
サーバーからのコンテンツの書き換えも防げます。
IPC/shared memの問題が無ければ、chrootで複数のhttpdを
動作させると言う方法も可能かも知れません。
# 私はレンタルサーバー関係の仕事はしていません。
# 念のため :)
--
Yasuo Ohgaki
yohgaki@dd.iij4u.or.jp
__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo! http://bb.yahoo.co.jp/