2009-08-27 10 views
2

私たちのウェブサイトのウォークアップ作成アカウントページを作成しています。私は常に2つのパスワードが一致していても、ユーザがフォームを提出した後に、パラノイアから入力されたtype = "password"のデフォルト値= ""をクリアしました。デザイナーが私に尋ねた後、私はこのことを考え始めました。私は確かに、提出後にパスワードを値フィールドにエコーすることができます。もしそれらが妥当性検証の失敗ではない場合、このアプローチに関連する脆弱性はありますか?この特定のページでは、デフォルトでhttpsに設定されています。私はあなたが非マスク入力にecho'ingされているような入力の種類を変更するhtml書き換えを行うことができますが、それはユーザーにのみローカルに影響を与える可能性があるように思えます。妥当性検査の失敗後に以前のサブミットの値を入力タイプ「パスワード」に設定

例形式:提出オン

<input type="text" name="username" value="<?php echo $username; ?>"> 
<input type="password" name="password1" value=""> 
<input type="password" name="password2" value=""> 

、ユーザ名は適切な電子メールのように見えるかどうかを確認し、パスワードが一致、およびパスワードは、私たちの最低限の要件を破りました。電子メールが怒りますが、パスワードがなければ、私は追加することができます...

<input type="password" name="password1" value="<?php echo $password1; ?>"> 
<input type="password" name="password2" value="<?php echo $password2; ?>"> 

...と心配ですか?そして、いいえ、私はレジスタのグローバルを使用していません。私は手動で$ _POSTからそれらを引き出し、まずサニタイズを行います。

ジョシュ

答えて

1

私は同僚がプロフィールページに行くあなたのパスワードを盗み、ソースの表示を行うことができますよう、あなたがそれを行うべきではないと思います。

パスワードがsecure hashを使用してスクランブルされており、元のパスワードを元に戻せないため、この機能を実装できないはずです。

+0

パスワードが実際に検証されると、私はsha1 + saltを使用します。だから、主な抑止力は誰かが特にこのアカウントを作成するページにある間、コンピュータへの物理的なアクセスですか? – Josh

1

キャッシュされてはならないHTTPヘッダーを使用してもHTMLソースがキャッシュされる可能性があるので、この方法をとるのは悪い考えです。これはブラウザに依存し、BODYタグの後ろにHEADタグを追加することを提案しています。 Internet Explorerのこの「機能」のMicrosoft has more information

関連する問題