[PHP-users 2939] Re: FYI; from CERT/CC
Yasuo Ohgaki
php-users@php.gr.jp
Fri, 19 Oct 2001 14:41:53 +0900
YAMADA Satoshi wrote:
> やまだ@神戸市です。
>
> セキュリティホール memo でも紹介されたので
> ご存知の方もいらっしゃるかもしれませんが...
>
> Vulnerability Note VU#847803
> Php variables passed from the browser are stored in global context:
> http://www.kb.cert.org/vuls/id/847803
>
> 個人的には半分言いがかりのような気が...
私はPHPを使いはじめたときから、track var=on, register globals=off
で使っています。(使いはじめてすぐにこれはセキュリティーホールにな
ると理解したので。歴史的な負の遺産だったのですが、PHPを使いはじめ
たときは、何故HTTP_*_VARSだけ使う設定がデフォルトではないのか理解
ができませんでした。)
確かに言語のデフォルト仕様ですが、最近本家のphp-dev@lists.php.net
で議論されてやはりグローバル変数としてクライントからの変数を登録す
るのはまずい、と言うことになりCVS版のソースではphp.ini-recommended
と言うファイルが作られています。(デフォルトでregister globals=off,etc)
# 多分、次のリリース(PHP-4.1.0)ではphp.ini-recommendedが
# php.ini0-distになりデフォルトになると思いますが、4.1.0は
# 元もと4.0.7としてリリースされる予定だったのでどうなるかは
# 微妙と思います。
このページもphp-devの議論を受けて作成されたのはないかと推測します。
私もregister globals=offは強くお勧めします。(ついでに、余分に変数
を初期化しない分、ほんの少しパフォーマンスも向上します)
--
Yasuo Ohgaki
yohgaki@dd.iij4u.or.jp
__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo! http://bb.yahoo.co.jp/