[PHP-users 4358] Re: スクリプトが丸見え ?
Nakamura Kazuto
php-users@php.gr.jp
Wed, 19 Dec 2001 13:23:26 +0900
中村です。
>重松です。
>nobody が .htaccess を読める、という状態と、index.html などの他のファイルが
>読める、というのに何らかの差異はあるのでしょうか?
>(隠しファイルは扱いが異なる?)
もし .htaccess を root 権限で読んでいるのなら DirectoryIndex を
出鱈目な文字列にする等の手段も考えられるのですが…という事です。
>ですが、nobody に、というか、group www に、書き込み権限を与えなければ、
>大丈夫だと思うのですが。。。
>
>/home/foo foo.www 710
>/home/foo/public_html foo.www 710
>/home/foo/public_html/index.html foo.foo 644
>
>というような権限ではダメなのでしょうか。
収束させると nobody が target file を読み出せる状態があると
考えるべきでしょう。http経由だとそれが実行された結果が出ます
が、別スクリプトがダイレクトにそのファイル本体を読み出す事を
制限は出来ないはずです。
>そうすれば、bar というユーザがいるとして、bar は /home/foo に対して、
>実行権限がないため、中に入れないと思いますが、nobody は group www に属すので、
>実行権限を持っており、/home/foo/public_html を開くことができますよね?
>その中実は、通常 644 だと思いますから、読むことはできる状態だと思います。
bar 自身が読みに行くのではなく、bar が nobody を使って読み
出すのです。
>そして、これら危険は、ZEND encoder でもで、コードそのものを隠蔽しないと、
>たとえ DB に書いても、DB の ID, password がばれてしまえば、元も子もないので、
>結局とっても危険という結論に達しますね。
Refer も詐称出来てしまうので結論的には「厳しい」となるのでは
ないでしょうか…。
先日発覚した wu-ftpd のセキュリティホールにしても、バーチャル
で無ければ問題無いものですし、妥協しなくてはいけない点がどこか
に存在するのだと思います。
--
中村 和人 kazuto@sainet.or.jp