2

私は私たちのウェブサイトのウォークアップ作成アカウントページを作成しています。2つのパスワードが一致し、有効であっても、ユーザーがフォームを送信した後、パラノイアから入力されたtype="password"のデフォルト値=""を常にクリアしました。私たちのデザイナーが私にそれをすることに本当の意味があるかどうか尋ねた後、私はこれについて考え始めました。パスワードが問題のある検証の失敗でない場合は、送信後にvalue = ""フィールドにパスワードを確実にエコーできますが、このアプローチに関連する脆弱性はありますか?この特定のページでは、デフォルトでhttpsになっています。マスクされていない入力にエコーするように入力タイプを変更するために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から手動で引き出し、最初にサニタイズを行います。

ジョシュ

4

2 に答える 2

1

同僚がプロフィールページにアクセスしてパスワードを盗み、ソースを表示する可能性があるため、これを行うべきではないと思います。

安全なハッシュを使用してパスワードがスクランブルされている場合は、この機能を実装できない可能性があります。これは単一の方法であり、元のパスワードを取り戻すことができないためです。

于 2009-08-27T18:49:15.730 に答える
1

HTTPヘッダーを使用してキャッシュしないように指示した場合でも、HTMLソースがキャッシュされる可能性があるため、この方法で行うのは悪い考えだと思います。これはブラウザによって異なります。Microsoftは、BODYタグの後に追加のHEADタグを含めることをお勧めします。Microsoftには、InternetExplorerのこの「機能」に関する詳細情報があります。

于 2009-08-27T19:21:09.923 に答える