0
私のアプリケーションでは、reCaptchaを追加していますが、ブルートフォース攻撃を防ぐための2番目の方法もあります。いくつかの調査の後、私は、試行が1秒間で行われた場合にログインしようとしているユーザーをブロックするソリューションを考えました。たとえば、ユーザーがページに入り、資格情報を入力してEnterキーを押してログインしようとすると、それが1秒間に発生した場合、私はユーザーのログイン情報をブラウザに保存していても、人間が可能ではないため、ユーザーをブロックします。ブルートフォースセキュリティ - ログインの時間
しかし、問題は、ページが読み込まれた後にJavaScriptのレイヤーの時間を数えていることです。このソリューションは明らかに簡単にハッキングされます。私はデータベースの使用を考えましたが、それは(要求のために)時間的に信頼できないようです。では、この状況で最適なソリューションを実装するために私は何ができますか?
クライアントとサーバーの両方のブロックを使用します。クライアント側私はログインボタンなどを無効にし、何が起こったのかをユーザーに警告します。サーバー側では、クライアント側の検証がハッキングされる可能性があるため、これも必要です。これらのシナリオでは、時間は重要な要素ではないので、私の意見では、要求時間は重要ではありません。さらに、同じIPからサーバにリクエストが多すぎると、おそらくフラッド攻撃なので、しばらくしてからリクエストを拒否することができます(たとえば、1分以内に10個の失敗したcaptchaなど) – Ursache