3

スパムボットを除外するための 1 つの考えられる対策を読み、意見 (アドバイス) を取得したいと思います。

メジャーは次のようになります。

1) ログインフォームには直接アクセスできません。つまり、誰かが www.domain.com/login.php に入ると、インデックスなどにリダイレクトされるということです。

2) index.php にはボタン ログインがあります。訪問者がログインをクリックすると、ポップアップログインフォームが表示されます。ログイン時に $_SERVER["HTTP_REFERRER"] をチェックします。login.php でなければエラー(失敗)

そのような措置は有用ですか?$_SERVER["HTTP_REFERRER"] の代わりに何か他のものを使用できますか? そのような方法はまったく合理的ですか?

4

1 に答える 1

1

私は言うでしょう:本当にそうではありません。しかし、より良い解決策があります。以下を参照してください。

問題は、人間ができることはすべて、優れたボットができることです。ほとんどのボットは、ログイン システムがどのように機能するかなどを知っているため、人間よりもさらに優れています。JavaScript/Iframe/AJAX コンストラクトを使用してボットを防止すると、テキスト入力フォームやパスワード入力フォームを検索するだけの主流のクローラーを防ぐことができます。また、あなたのサイトが非常に優れた間接アクセス可能なログイン フォームを使用している場合でも、誰かがまさにそのユース ケース用のボットを作成する可能性があります。

この問題の良い解決策:

  1. 時間遅延ログインブロッカーを使用してください!重要な量のログイン失敗後にログイン試行を遅らせ、最終的にはブロックする方法に関するチュートリアルがあります: http://www.codedevelopr.com/articles/throttle-user-login-attempts-in-php/

  2. さらに、最初のログイン失敗後にハイエンド キャプチャを使用します。

  3. 本当に悪人向け: 特別な IP から大量のログインが失敗する場合は、この IP をブロックしてください。これはかなり高度ですが、一般的な方法です。

(注: このチュートリアルの作成者は、何年も前から古い mysql_query をまだ使用しています。mysqli または PDO を使用する必要があります。)

于 2013-07-28T20:10:41.177 に答える