実際のネットワーク内の仮想マシンでの ARP スプーフィングの問題

実際のネットワーク内の仮想マシンでの ARP スプーフィングの問題

現在、PC 上の VirtualBox で実行されている Kali Linux 仮想マシンで Python ベースの ARP スプーフィング プログラムをテストしようとしているときに問題が発生しています。VM はネットワーク ブリッジを使用してネットワークに接続されているため、ネットワーク上の他のデバイスにアクセスできます。ただし、ARP スプーフィング プログラムを起動してネットワーク内のラップトップを攻撃しようとすると、問題が発生します。

私が経験している問題は、ARP スプーフィングの実行が開始されると、ラップトップの ARP キャッシュが、VirtualBox が実行中の PC の MAC アドレスで更新されますが、VM 内で「ifconfig」を使用して見つけることができる Kali Linux VM の MAC アドレスでは更新されないことです。PC の MAC アドレスでは更新されます。その結果、ラップトップはインターネット接続を失います。ブラウザーで Web サイトにアクセスしようとしても、何も起こりません。

考慮すべき追加事項: Kali Linux VM 用の追加 Wi-Fi スティックはありません。IP 転送は ARP スプーフィングを開始する前に有効になっており、プロセス全体を通じてアクティブのままでした。プログラムは、NAT ネットワーク ネットワークで被害者として使用される他のすべての VM で正常に動作します。また、ラップトップのウイルス対策システムを無効にしました。動作しないのはカスタム ARP スプーフィング プログラムだけでなく、Kali Linux ツールの arpspoof ツールも動作しません。

なぜこのようなことが起こるのでしょうか?

答え1

Wi-Fi クライアント デバイスは、複数の MAC アドレスからフレームを送信できません。AP に接続された無線の MAC は、暗黙的に送信されるフレームの MAC になります。

これに対処するために、VirtualBoxの「ブリッジ」ドライバーはL2 NATを実行する必要があります。つまり、VMから送られてくるフレームを書き換えて、ヘッダーにホストシステムのMACアドレスを含めます。そしてARP 要求と応答がそれに応じて書き換えられます。VM はブリッジされていると認識しますが、LAN の残りの部分では 1 つの MAC アドレスしか認識されません。

VM をゲートウェイとして使用するには、VM 専用の Wi-Fi インターフェイス、または VM ホスト用の有線イーサネット接続が必要です。

関連情報