TLDR ARP ポイズニングではテーブル内の IP dst は変更されないので、別の IP アドレスで MAC をスプーフィングするとトラフィックのリダイレクトに役立つのはなぜでしょうか?
私が見つけたビデオでは、ARP ポイズニングの目的は、迷惑メッセージを送信してホストとルーターの ARP テーブルを「上書き」し、MitM 攻撃者の MAC アドレスが両方に関連付けられて次のようになることであると説明されています。
被害者: aa:bb:cc:dd:ee:ff (192.168.1.100) ルーター: aa:bb:cc:dd:ee:ff (192.168.1.1) MitM マシン: aa:bb:cc:dd:ee:ff (192.168.1.199)
このようにして、両方とも中間者に送信され、中間者はエンドポイント 192.168.1.199 と 192.168.1.1 に転送しますが、実際にはこれらのエンドポイントには別の MAC アドレスがあります。
...私の質問は、それがどのように機能するかということです。これらのデバイスを騙して間違った MAC を正しい IP に関連付けさせる場合、トラフィックは実際にどのように再ルーティングされるのでしょうか。つまり、私の見方では次のようになります。
被害者 > パケットが 192.168.1.1 のルーターに送信され、ルーターに到達してパケットを開くと、MAC が間違っていることがわかりますか?
答え1
IP アドレスが間違っている場合、ARP ポイズニングはどのように機能しますか?
これは通常、ARP スプーフィングと呼ばれますが、ARP ポイズン ルーティング (APR) または ARP キャッシュ ポイズニングとも呼ばれます。
ARP ポイズニングではテーブル内の IP 宛先は変更されないのに、別の IP アドレスで MAC をスプーフィングするとトラフィックのリダイレクトに役立つのはなぜですか?
ハブ、スイッチ、ルーターの LAN 側は、イーサネット データ フレームに含まれる MAC アドレスを使用してデータをルーティングします。
攻撃中、被害者の IP アドレスの ARP テーブル エントリには攻撃者の MAC アドレスが含まれます。
被害者の IP アドレスとの間でデータが送受信されると、そのデータは攻撃者の MAC アドレスにルーティングされます。
ARP ポイズニングの目的は、迷惑メッセージを送信してホストとルーターの ARP テーブルを「上書き」し、MitM 攻撃者の MAC アドレスが両方に関連付けられるようにすることです。
いいえ、これは正しくありません。
- 被害者の IP アドレスの ARP テーブル エントリには、攻撃者の MAC アドレスが含まれます。
- ルーターの IP の ARP テーブル エントリは変更されません。
- 攻撃者は、被害者の IP アドレスからルーターにトラフィックを転送することを選択できますが、必ずしもそうする必要はありません。
見る次は何が起こる詳細については下記をご覧ください。
ARP スプーフィングとは何ですか?
ARP スプーフィングは、悪意のある人物が偽の ARP (アドレス解決プロトコル) メッセージをローカル エリア ネットワーク経由で送信する攻撃の一種です。これにより、攻撃者の MAC アドレスが、ネットワーク上の正当なコンピュータまたはサーバーの IP アドレスにリンクされます。
攻撃者の MAC アドレスが本物の IP アドレスに接続されると、攻撃者はその IP アドレス宛てのすべてのデータを受信し始めます。
ARP スプーフィングにより、悪意のある第三者が転送中のデータを傍受、変更、または停止することさえ可能になります。ARP スプーフィング攻撃は、アドレス解決プロトコルを使用するローカル エリア ネットワークでのみ発生します。
ソース VeracodeARPスプーフィング
どのように機能しますか?
ARP スプーフィング攻撃は通常、同様の進行をたどります。ARP スプーフィング攻撃の手順は通常、次のとおりです。
攻撃者は ARP スプーフィング ツールを開き、ツールの IP アドレスをターゲットの IP サブネットと一致するように設定します。一般的な ARP スプーフィング ソフトウェアの例としては、Arpspoof、Cain & Abel、Arpoison、Ettercap などがあります。
攻撃者は ARP スプーフィング ツールを使用して、ターゲットのサブネット内のホストの IP アドレスと MAC アドレスをスキャンします。
攻撃者はターゲットを選択し、攻撃者の MAC アドレスとターゲットの IP アドレスを含む ARP パケットを LAN 経由で送信し始めます。
LAN 上の他のホストが偽装された ARP パケットをキャッシュすると、それらのホストが被害者に送信するデータは代わりに攻撃者に送信されます。ここから、攻撃者はデータを盗んだり、より高度なフォローアップ攻撃を開始したりできます。
ソース VeracodeARPスプーフィング
次は何が起こる?
攻撃者は、検出を避けるためにトラフィックを実際のデフォルト ゲートウェイに転送しながらパケットを検査したり (スパイ)、転送する前にデータを変更したり (中間者攻撃)、ネットワーク上のパケットの一部またはすべてをドロップさせることでサービス拒否攻撃を開始したりする可能性があります。
出典:WikipediaARPスプーフィング
参考文献
答え2
たとえば、スイッチで接続された LAN では、スイッチはネットワーク層 (OSI のレイヤー 3) までパケットのカプセル化を解除しません。スイッチは CAM テーブルから MAC をチェックし、適切なポートにパケットを転送するだけです。そのため、特にスイッチの CAM テーブルにすでにデータが入力されている場合は、IP はチェックされません。
答え3
パケットがリンク層ネットワーク上で送信されると、攻撃者の MAC アドレスに送信されるため、パケットを受け取るのは意図した受信者ではなく、攻撃者になります。
リンク層ネットワークを指定して、これをもう少し具体的にしてみましょう。イーサネットを例に挙げてみましょう。イーサネット NIC は、自身の (イーサネット) 層についてのみ認識します。IP が何であるかを知らないため、これらのパケットが IP 層でどのようにアドレス指定されるかはわかりません。これらはすべて、イーサネット NIC にとって不透明なペイロード バイトの集まりです。送信側 NIC は、aa:bb:cc:dd:ee:ff 宛てのフレームが渡されたことだけを認識しているため、その宛先アドレスをフレームに付けて送信します。攻撃者の NIC だけが aa:bb:cc:dd:ee:ff 宛てのフレームを見るようにプログラムされているため、攻撃者の NIC だけが、そのフレームをホストの OS のネットワーク スタックに渡して受信します。