ターゲット システムの 2FA 検証メカニズムをバイパスする単純な総当たり列挙手法の実験
今日共有したライトアップは、著者が脆弱性テストに参加しているターゲット システムの動的パスワード OTP (ワン タイム パスワード) であり、単純な総当たり列挙手法を使用して実装されています。 . ターゲット システムの 2 要素認証メカニズム 2FA (Two-Factor Authentication) をバイパスまたはクラッキングします。対象となるシステムは、二要素認証 2FA の実装手段として動的パスワード OTP を使用するインド最大の旅行サービス会社の Web サイトです。
一般的に、OTP は 0000 から 9999 までの 4 桁の組み合わせです。OTP に 10,000 通りの組み合わせがある場合、今日の強力なコンピューター時代では、10,000 個の組み合わせを処理するのに数分しかかかりません。したがって、OTP の検証メカニズムが不適切な場合、単純な総当たり列挙によって誰でもそれを回避できます。
2FA をバイパスできるのはなぜですか?
ターゲット システムは、失敗したリクエストの試行回数を制限しません。
ターゲット システムには、失敗した要求試行に対する新しい動的パスワード対策がありません。
前提条件の準備:
Web ブラウザ、BurpSuite。
2FA バイパスの再発プロセス
2FA バイパスの再発プロセス
1. BurpSuite を開き、ターゲット システムの Web サイトにログインします。携帯電話番号、ここでは、システムによって携帯電話に送信される間違った動的 OTP を意図的に入力し (ここでは無造作に 1234 と入力します)、その後、BurpSuite を使用してトラフィックをキャプチャします。
BurpSuite から OTP API に関連する情報を確認できます – verifyOTP?otp=:
2. OTP 送信プロセスを右クリックし、侵入者に送信:
3. otp=1234 プレースホルダーを選択し、単純な暴力列挙変数モードに設定します:
4.ペイロード タグ アイテムを任意の組み合わせに変更し、[攻撃] をクリックします:
5. 攻撃が開始されます。列挙応答の結果から、長さ 2250 の異常な応答がわかります。予想通り、これは次のとおりです:
6. この OTP を使用してログインしてください。成功して効果的になることができます!
関連チュートリアルの推奨事項: Web サーバーのセキュリティ
以上がターゲット システムの 2FA 検証メカニズムをバイパスする単純な総当たり列挙手法の実験の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









先週、マスク氏はニューラリンクのショー・アンド・テル・デモンストレーション・イベントを開催し、ブレイン・コンピューター・インターフェースの最新の進歩を世界に披露した。マスク氏は会合で、プロトタイプから量産に移行するのは非常に難しく、多くの課題に直面していると述べた。 Neuralink は人体治験を開始するために熱心に取り組んでおり、人体治験を開始するために必要なすべての文書を FDA に提出しました。マスク氏は、最初の Neuralink デバイスが 5 ~ 6 か月以内に人間の脳に搭載される可能性があると推定しています。マスク氏は会議で、ニューラリンクは動物被験者を尊重しており、ブレインコンピューターインターフェースデバイスは動物に埋め込まれる前に広範なベンチマークテストを受けていることを強調した。 2匹のサルのポケベルと

パッチ不可能な Yubico の 2 要素認証キーの脆弱性により、ほとんどの Yubikey 5、セキュリティ キー、および YubiHSM 2FA デバイスのセキュリティが破られています。 Feitian A22 JavaCard および Infineon SLB96xx シリーズ TPM を使用するその他のデバイスも脆弱です。すべて

Python の列挙は、名前付きの値のセットで構成されるユーザー定義のデータ型です。有限の値セットは列挙を使用して定義され、Python では整数値の代わりに名前を使用してこれらの値にアクセスできます。列挙により、コードが読みやすく保守しやすくなり、型の安全性も強化されます。この記事では、Python で文字列値によって列挙型を検索する方法を学びます。文字列値で enum を検索するには、次の手順に従う必要があります。 コードに enum モジュールをインポートします。 必要な値のセットを使用して enum を定義します。 enum 文字列を入力として受け取り、対応する enum 値を返す関数を作成します。構文 fromenumimportEnumclassClassName(Enum

列挙型を関数の戻り値として使用する利点: 可読性の向上: 意味のある名前定数を使用して、コードの理解を強化します。タイプ セーフティ: 戻り値が予期される範囲内に収まることを確認し、予期しない動作を回避します。メモリの節約: 列挙型は通常、占有する記憶領域が少なくなります。拡張が簡単: 新しい値を列挙に簡単に追加できます。

php8.1の列挙関数は、指定された定数を定義することにより、コードの明確さとタイプの安全性を高めます。 1)列挙は、整数、文字列、またはオブジェクトであり、コードの読みやすさとタイプの安全性を向上させることができます。 2)列挙はクラスに基づいており、トラバーサルや反射などのオブジェクト指向の機能をサポートします。 3)列挙を比較と割り当てに使用して、タイプの安全性を確保できます。 4)列挙は、複雑なロジックを実装するためのメソッドの追加をサポートします。 5)厳密なタイプのチェックとエラー処理は、一般的なエラーを回避できます。 6)列挙は魔法の価値を低下させ、保守性を向上させますが、パフォーマンスの最適化に注意してください。

列挙型は、C 言語のユーザー定義のデータ型です。これは整数定数に名前を付けるために使用され、プログラムを読みやすく、保守しやすくします。キーワード「enum」は列挙型を宣言するために使用されます。 C 言語の列挙型の構文は次のとおりです: enumenum_name{const1,const2,....};enum キーワードは変数 sofenum 型の定義にも使用されます。変数 sofenum 型を定義するには次の 2 つの方法があります。enumweek{sunday,monday,tuesday,

C++ は一般的なプログラミング言語であり、その構文は比較的厳密であり、学習と適用が簡単です。ただし、特定のプログラミングでは、さまざまなエラーが発生することは避けられません。よくあるエラーの 1 つは、「列挙型メンバーは括弧内で初期化する必要がある」です。 C++ では、列挙型は、次のような離散値を持つ定数のセットを定義できる非常に便利なデータ型です: enumColor{RED,YELLOW,GREEN}; この例では、3 つの列挙を含む列挙型 Type Color を定義します。

JDK バージョン 5 以降、Java には列挙型が導入されました。これは、キーワード「enum」を使用して定義された定数のセットです。 Java では、final 変数は列挙型に似ています。この記事では、列挙型クラスを定義し、valueOf() メソッドと value() メソッドを使用して列挙型で定義されたすべての定数にアクセスする Java プログラムを作成します。 Enum の中国語訳は: Enumeration. 固定の定数セットを定義する必要がある場合は、列挙クラスを使用します。たとえば、曜日、惑星の名前、5 つの母音の名前などを使用したい場合。すべての定数の名前は大文字で宣言されていることに注意してください。 Java では列挙はクラス型ですが、インスタンス化することはできません。存在する
