このビデオは、ケーブルを利用してPPPoEセッションをハイジャックする実用的な方法を示しています。 この場合、ログインまたはパスワードは傍受されず、使用される認証の種類(CHAP / PAP)は重要ではありません。
残念ながら、ほとんどのイーサネットプロバイダーは、セッション全体で暗号化を使用せず、認証フェーズの暗号化に限定しています。 これにより、既存の接続の詳細を傍受して、正当なクライアントとして自己紹介できます。
理論
PPPoE (イーサネット経由のポイントツーポイントプロトコル)はデータリンクプロトコルであり、IPより1レベル低いため、接続を確立するためにIPアドレスは不要で、アドレス指定はMACを介して行われます。
条件付きで、接続プロセスは次のようになります。
pppoeサーバーを探しているクライアントがブロードキャストリクエストを送信し、
宛先MACアドレスFF:FF:FF:FF:FF:FF。
サーバーはクライアントに応答し、承認が発生します(たとえば、CHAP Challenge)
確立された接続では、サーバーはMACアドレスとセッションIDによってクライアントを識別します。 IPパケットはPPPoEフレーム内にカプセル化されます。 暗号化されていない接続では、パケットのコンテンツ全体を表示できます。
したがって、接続の詳細を学習したら、セッションをインターセプトできます。
このような攻撃から保護するために、サーバーが特定の時間間隔でクライアントを再識別した場合、CHAP Rechallengeオプションがあります。 テストされたプロバイダーは、このオプションを使用していません。
ビデオでは、ホストシステムからのイーサネットカードを使用して、ブリッジモードで実行されている仮想マシンを使用しています。
ケーブルの切り替え中、LCPエコーパケット間を取得することが重要です。
オプションで再コンパイルされたPPPoEサーバーwww.roaringpenguin.com/products/pppoe
#define DEFAULT_MAX_SESSIONS 64000
rp-pppoeサーバーソースの選択を支援してくれたkekekeksに感謝します。