概要
今回の実験は、仮想マシン上のKali Linuxから同一ネットワーク上のWindows 7に対し、中間者攻撃(Man-in-the-Middle Attack)を仕掛けます。
具体的には、`arpspoof` ツールを用いてARPスプーフィングを実行し、Windows 7とルーター(ゲートウェイ)間の通信経路上に割り込みます。
この実験を通じて、ARPプロトコルの脆弱性、通信が傍受(盗聴)される仕組み、およびIPフォワーディングの役割について実践的に理解することを目的としています。
1. 実験の流れ
中間者攻撃は、通信を行う2者間(今回はWindows 7とルーター)に攻撃者が割り込み、双方になりすますことで通信を中継・盗聴する攻撃です。
今回はその代表的な手法である「ARPスプーフィング」を実験します。
攻撃者(Kali Linux)が、被害者(Windows 7)に対して「私がルーターだ」と偽り、同時にルーターに対して「私がWindows 7だ」と偽ることで、両者間の通信をすべて攻撃者経由にさせます。
2. 環境構築
この実験は、ホストOS上で異なる仮想化ソフトウェア(VirtualBox)を動作させて行いますが、ネットワーク設定が重要です。両仮想マシンのネットワークアダプターを「ブリッジアダプター」に設定し、ホストOSと同じ物理ネットワーク(例: 192.168.2.xxx)に参加させます。
被害者側 (Windows 7)
ipconfig を実行し、IPアドレス(例: 192.168.2.172)とゲートウェイ(例: 192.168.2.1)を確認します。
arp -a を実行し、ゲートウェイ(192.168.2.1)のMACアドレスがルーター本来のものであることを確認します。
攻撃者側 (Kali Linux)
- 1. IPアドレスとMACアドレスの確認:
ip aを実行し、IPアドレス(例:192.168.2.105)とMACアドレスを確認します。 - 2. IPフォワーディングの有効化: 攻撃者が受け取ったパケットを破棄せず、本来の宛先に転送(中継)するために、IPフォワーディングを有効化します。これが無いと、被害者は通信ができなくなり攻撃が発覚します。
# IPフォワーディングを有効化 (1を書き込む)
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
# 有効化されたか確認 (1が表示されればOK)
cat /proc/sys/net/ipv4/ip_forward
3. 攻撃の実行
- ARPスプーフィングの開始: Kali Linuxで
arpspoofを実行します。2つのターミナルを開き、それぞれ実行します。すると連続でログが表示されますがそのまま放置します。
# arpspoof -i <インターフェース名> -t <ターゲット端末のIPアドレス> <書き換えたいIPアドレス>
# ターミナル1: 被害者(Windows 7)になりすまし、ルーターを騙す
sudo arpspoof -i eth0 -t 192.168.2.1 192.168.2.172
# ターミナル2: ルーターになりすまし、被害者(Windows 7)を騙す
sudo arpspoof -i eth0 -t 192.168.2.172 192.168.2.1
- パケットキャプチャの開始:wiresharkなどのパケットキャプチャソフトを起動し、Windows 7 (
192.168.2.172) が送受信するパケットをip.addr == 192.168.2.172やhttpなどでフィルタリングして監視を開始します。
4. 結果の確認
攻撃実行後、Windows 7側で再度 arp -a コマンドを実行します。
ゲートウェイ(192.168.2.1)に対応する物理アドレス(MACアドレス)が、ルーター本来のものではなく、攻撃者(Kali Linux)のMACアドレスに書き換わっていることが確認できます。これにより、ARPスプーフィングが成功したことが証明されます。
この状態でWindows 7がインターネット(例: http://57.181.220.64/ のサイト)にアクセスすると、Kali Linuxで起動しているWiresharkがその通信パケットをすべてキャプチャできることが確認できます。IPフォワーディングが有効なため、Windows 7側は通信が遅延なく行えているように見えます。
5. 考察と対策
この実験では、arpspoof というツールを使うだけで、いかに簡単に同一ネットワーク内の通信経路上に割り込めるかが確認できました。
ARPプロトコル自体に「送信者が本物か」を検証する仕組みがないという根本的な脆弱性が原因です。
脅威
攻撃者は通信経路上にいるため、暗号化されていない通信(HTTP、FTP、Telnetなど)の内容はすべて盗聴可能です。ログインパスワードやCookieが平文で盗まれる危険性があります。
また、以前の議論の通り、SSLストリッピングなどの攻撃と組み合わせることで、https:// で保護されているサイトへのアクセスを妨害し、偽のページに誘導することも可能になります。
対策・対処
この攻撃は、不特定多数が接続するフリーWi-Fiやカフェ、ネットカフェなどで特に脅威となります。
利用者側の対策:
ネットワーク管理者側の対策:
まだコメントはありません。