- スニファへの防衛策←スイッチングハブ
- →パケットがLAN全体にブロードキャストされなくなる
- しかしこの対策を迂回する方法がある!
- ARP poisoning
- 偽のARPパケットを標的ホストに記憶させる
- (偽装ARP replyをブロードキャストする)
- Aさんが「Bさんどこー?」って聞いたら、
- 悪意のあるCさんが「ここだよー」って言う。
- Bさんにも同様にする。
- するとAさんがBさんに送ったつもりでもCさんを経由
- つまりman-in-the-middle攻撃ができる
- ARPスプーフィングともいう
- 2007年に流行
- spoofing=なりすまし
- LAN内(Ethernet)内で端末を特定するのはMACアドレス
- 通信ではIPアドレス&MACアドレスなどをパケットに付加し送信
- 送られてきた宛先MAC=自分のMAC→受け取ろう
- つまり通信するにはまずMAC
- そのためにIPからMACを知るのがARP
- ARP要求パケット、ARP応答パケット
- ARP要求パケットをブロードキャストする
- 何度も聞くのは面倒なのでARPテーブルにキャッシュする
- さて、どう傍受するか
- 悪意のあるCさんが、AさんBさんのMACをARPで下調べ
- CさんはAさんBさんに「BさんのMACはCさんのMACだよ」
- 「AさんのMACはCさんのMACだよ」と嘘を教える
- AさんBさんのARPテーブルが間違ったものに書き換えられる
- ARP要求をしてもないのにARP応答を受け取ってしまう
- AさんがBさんに送信したとき
- 騙されているのでCさんに送ってしまう
- CさんはBさんに中継する
- そのとき、送信元IPアドレスをAさんのものにしておく
- そうすればばれない
- 盗み見だけでなく、改ざんも可能
- Aさんとルータに対してARPスプーフィングを実行すれば、
- Aさんのインターネット通信が丸見え!
- 問題は、ARP応答を信じてしまうこと
- 対策:MACとIPの組み合わせを静的に決めておく(面倒)
- 対策:こめめにARP要求
- ARPスプーフィングが行われた場合、
- arp -a
- →異なるIPアドレスに同じMACアドレスが現れる
- 「Aさんは俺(C)、Bさんも俺(C)、みんな俺(C)」
- 対策:秘密情報をNWに流さない
- 対策:NWを経由する際には暗号化
- メールなら、S/MIME、PGPなどの暗号化ツールを使おう
- WEBならSSL(WEBサーバとブラウザの間で暗号化)
- 「偽の郵便ポスト」という例
- インターネット上のサーバに接続したい
- →デフォルト・ゲートウェイを知るためにARP
- 対策:ルータ自体のIPとMACの対応が書き換えられていないか
- ARPスプーフィング=ARPポイズニング=ARPリダイレクト
- 最寄りのゲートウェイのIPとMACを知るipconfig
- ちゃんとしたのを知って、IPとMACの関係をstaticにすれば対策に
- NIDS(ネットワークIDSを導入し、ARPテーブルの書き換えに反応)
- →こまめにARPして、正しいARPもたまに返ってくるのなら、
- ARPテーブルの書き換えが大量発生し、検知できるはず
結構今も流行っているみたいですよ?