web-dev-qa-db-ja.com

ブルートフォースのウェブサイトパスワードのための攻撃ベクトル

パスワードのセキュリティについて話すとき、多くの議論は、ブルートフォース攻撃でパスワードが推測されるリスクに集中しています。ユーザーがアカウントを登録しているWebサイトの場合、ブルートフォース攻撃の可能なベクターは何ですか?

ユーザー名/パスワードのペアをWebサイトの認証フィールドに直接入力することは1つですが、試行が失敗した後のタイムアウトまたはロックアウトによって軽減されることがよくあります。ハッシュされたパスワードの盗まれたデータベースへの攻撃を実行することも別の方法ですが、データベースが危険にさらされていると想定しています。他にどのようにブルートフォースパスワード攻撃を実行することができますか?

8
jrdioko

他にどのようにブルートフォースパスワード攻撃を実行できますか?

あなたは両方のベースをカバーしました、そしてそれは本当にそれについてです。利用可能なWebフロントエンドに繰り返し送信するか、データベースサーバーをクラックしてWebソフトウェアを悪用することにより、ハッシュのコピーを取得して管理します。

Webフロントエンドのクラッキングは通常、ブルートフォースよりもスマートフォースの問題であり、その結果、想定よりもうまく機能します。たとえば、会社のディレクトリ(最初、最後、および拡張)があり、約100人のWebサイトがある場合、アルゴリズムの推測をそのデータと組み合わせることで、アカウントの30%を「総当たり」することができました。認証サイトはMicrosoft Exchangeだったので、NSA推奨されるロックアウトのしきい値を下回ったままで問題ありませんでした(実際、これはペンテストであり、テストする前に確認してから、ユーザーをロックアウトしましたが、正確に推測するのは簡単でした)推測の速度が遅い場合でも、1日足らずで完了しました。

6
gowenfawr

私は、提供された資格情報に基づいて動作を変更するサイトのかなりの部分を見てきました。存在しないユーザー名を送信すると、正当なユーザー名とパスワードのペアを送信するよりも、固有のエラーメッセージまたはHTTP応答が速くなる可能性があります。

1つのアイデア-ログインしたユーザーの有効なセッションを正常に盗み、パスワード変更機能でユーザーの既存のパスワードを入力する必要があるとします。元のパスワード。

5
Tate Hansen

Gowenfawrはすでにユーザー列挙をカバーしています(私が正しく理解していれば)。

ほとんどのシステム(すべてではないにしても)、ロックアウトポリシーは各アカウントに適用されます。そのため、各アカウントのロックアウトのしきい値を下回る量のパスワードを試して、知っているすべてのユーザーを反復処理できるようにする必要があります。無効なログインの猶予時間に達したら、もう一度やり直してください。

これも、ユーザーのパスワードに対する誕生日攻撃に非常に近いものではないでしょうか。

オンラインバンクのようなことをした学生に関する記事を読みました。ユーザー名は社会保障番号で、銀行の平均的な顧客は30〜40歳の男性でした。彼はこの年齢層のランダムな社会保障番号を生成し、別のピンを試しました(ログインは4桁のピンコードのみでした!)。私は、彼が2万回の試行ごとにオンライン銀行口座にアクセスできたと信じています。

5

ブルートフォーシングが人気のあるディスカッショントピックである理由は、主にポップカルチャーにあります。コンピューターのしくみを理解していない人でも比較的簡単に理解できるため、このクラスの攻撃には多くの関連性と一般的な描写があります。彼らの実用的な実現可能性はより制限されています。

そうは言っても、自家製のソフトウェアシステムは、徹底的に分析されたシステムが防御する傾向があるという点で、しばしば脆弱です。たとえば、ロックアウトを適切に実装するには、ユーザーごとおよびクライアントごとに特定のデータを収集して保存する必要があります。経験の浅いプログラマが、追加のSQLフィールドやテーブルを定義したくない、または政治的にできないなどの理由で、ロックアウトポリシーの実装を怠ることは珍しくありません。適切なセキュリティ分析を行わずに設計されたシステムは、データセキュリティのアクセシビリティの側面を過度に強調し、機密性の側面を過度に強調する傾向があることは一般的な経験則です。アクセシビリティへの直接の影響、それはウェブサイトを持っているいくつかの組織によって嫌われさえするかもしれません。

3
dig

理論的には、ブルートフォース攻撃は、ご使用の認証システムがブルートフォース攻撃から保護されていない場合の単純な理由で、考えられるシナリオの非常に小さなセットに制限する必要がありますそれは壊れています、ピリオド

実際には、多くの認証システムある壊れており、実際、ブルートフォース攻撃を許可しています。それらの保護は存在しないか、効果がありません。

さらに、正しく推測したように、実行を制御している場合、つまりパスワードデータベースや暗号文など、攻撃したい場合はdataであれば、ブルートフォース攻撃を実行できます。

また、ブルートフォース攻撃に対する保護がバイパスされるブルートフォース攻撃の特定のサブセットが1つあります。ハードウェアでは、ブルートフォース保護を無効にするか、デバイスを以前の状態に戻し(バックアップからの回復など)、再試行することができます。これは非常に具体的なシナリオであり、機能させるための条件は非常に狭くなっていますが、FBIがこのアプローチを試みたのは数年前のiPhoneケースで、明らかに成功しました。

0
Tom