[PHP-users 13126] Re: パスワードファイルの保護
Hideo NAKAMITSU
php-users@php.gr.jp
Fri, 7 Feb 2003 11:25:46 +0900
中満です.
> >go16> ●suExec環境でphpはモジュール版
> >go16> -rw-r----- ユーザ名 www password.php
> >go16> wwwはapahceのグループ
> >go16> これでも十分安全でしょうか?
> >これだと、wwwグループに属する人が読めてしまいます。
>
> wwwグループに属する人はwwwだけで一般ユーザは1ユーザ1グループ
> になっております。これだと安全でしょうか?
apacheの実行ID www:www
あるユーザのファイル user1:user1
ということですよね.
モジュール版であれば,その実行権限はwww:wwwです.
user1が作ったスクリプトもuser2が作ったスクリプトも実行権限はwwwです.
つまり,他人の悪意のあるスクリプトからpassword.phpを読むことが出来ます.
# 逆に言うと,rwx------などにすると他人から読まれることはありませんが
# 実行すら出来なくなります.
> 一般ユーザはグループの追加はできないので重要なファイルを見られることは
> 無いと思うのですが・・・
この意味がちょっと分かりませんが,password.phpは
重要なファイルの内には入らないのでしょうか?
前にも書いたかもしれませんが,
・共用サーバでユーザ間のセキュリティを確保するためsuexec + CGI
・専用サーバでユーザ数が限られ,かつ信頼できるならDSO
が一般的のようです.
> apache2になるとphp版のsuExecができるようなことを
> 聞いたことがあるのですが、調べたのですが見つかりませんでした。
> 勘違いでしょうか??
おそらくconfigure時のperchildオプションでしょう.
これだとhttpdの子プロセス自体がバーチャルホストの権限で動作するため,
それに付随するモジュールなどもsuexec的に動作すると言われています.
# それにしてもperchildはなかなか言うこと聞いてくれませんし,
# 時間の都合もあり,実際にはまだ試してません.
/* -----------------------------------
Hideo NAKAMITSU <nomo@bluecoara.net>
http://solaris.bluecoara.net/
----------------------------------- */