[PHP-users 19120]Re: register_globals=Onはどの程度危険なのでしょう?
Mori Reo
list-program @ rucifer.ddo.jp
2003年 11月 26日 (水) 07:18:28 JST
森です。
> この場合、$validの初期化がなくても、foo.php?valid=1として設定されるのは
> 文字列の"1"であって数値の1ではないので、やはり$valid===1という条件は満た
> されないようです。($valid==1という条件は満たされます)
>
> というわけで、「こうするべきだ」というコードを書いておけば自然にセキュア
> なコードになるという例になってしまっているようで。
こちらでも確認しましたが、岸田様のご説明通りの動作ですね。
かさねがさね有難う御座います。
-------------------------------安全なコード
$valid = 0;
if($validPassword === "drowssaP")
$valid = 1;
if ($valid === 1)
print "認証が成功した場合に表示する";
-------------------------------危険なコード
if($validPassword == "drowssaP")
$valid = 1;
if ($valid == 1)
print "認証が成功した場合に表示する";
----------
森 怜峰 <reo @ rucifer.ddo.jp>
PHP-users メーリングリストの案内