1

より広い質問として、Webサイトのログインを保護するための現在の最善の戦略は何ですか。パスワードのソルト、パスワードのハッシュ、SSLを使用した送信の暗号化など、基本的なことはすべて知っていますが、それだけでは必ずしも十分ではないと思います。そこにある最高の「ハックプルーフ」方法は何ですか?

4

2 に答える 2

1

あなたのポイントはすでに最も重要なものです。さらに、これを行うことができます:

  1. BCrypt のようなスローキー導出関数を使用して、パスワードをハッシュします。
  2. X-Frame-Optionsをログイン ページの HTTP ヘッダーに追加して、ページが iframe 内に表示されないようにします。これにより、クリックジャッキングを防ぐことができます。PHP では、これは次のようになりますheader('X-Frame-Options: DENY');
  3. ログイン ページの HTTP ヘッダーにContent-Security-Policyを追加します。ブラウザーが CSP をサポートしている場合、これはクロスサイト スクリプティングに対する効果的な保護になります。PHP では、次のようになりますheader("X-Content-Security-Policy: allow 'self'");
  4. ログイン ページでセッション ID を再生成して、セッションの固定をより困難にします。
  5. サイト全体で HTTPS を使用すると、多くの問題を回避できます。HTTPS と HTTP を切り替える必要があり、認証に別の Cookie を使用する必要がある場合は、このをご覧ください。
  6. サイトが HTTPS のみの場合は、HTTP Strict Transport Securityヘッダーを追加できます。HSTS は、ユーザー (サイトに一度アクセスしたことのあるユーザー) が安全でない HTTP ページを呼び出すのを防ぐことができます。これは、SSL ストリップを防ぐのに役立ちます。
于 2012-12-14T08:15:19.230 に答える
0

パスワードをまったく保存せず、SRP を使用する

http://en.wikipedia.org/wiki/Secure_Remote_Password_protocol

于 2012-12-13T15:57:23.867 に答える