不正なARPリプライによって、攻撃対象のARPキャッシュを改ざんしてしまう攻撃のこと。
ARPスプーフィングとは、ARPで正しいIPアドレスではなく嘘のIPアドレスを混ぜることによって、他の機器のARPテーブルに嘘のIPアドレスを入れる攻撃
それによって、本来の通信を攻撃者を中継させるように変更させて、通信の内容を傍受したり、通信の内容を改ざんしてしまうことができる。
ARPスプーフィング(アープスプーフィング)、ARPキャッシュ・ポイズニングとは、ARPプロトコルの応答を偽装することにより、LAN上で通信機器のなりすましを行う技法である。
一般的に、攻撃者が攻撃者のIPアドレスを他のホストのIPアドレスに偽装することによって、偽装したホストに向かう通信は攻撃者に送信されてしまう。ARPスプーフィングをすることによって、攻撃者はネットワークの通信に割りこみ、通信を改ざんし、全ての通信を停止することができる。
この攻撃は、DoS攻撃や中間者攻撃、セッションハイジャックなど次に行う攻撃の布石としても使われる。この攻撃はARPを使用しているネットワーク内でのみ使用できる。
すなわち、攻撃者はローカルネットワークに直接アクセスする必要がある。日本国内でARPスプーフィングによって許可なく他人の通信を盗聴する行為は、不正アクセス禁止法によって禁じられており、刑事罰を受ける可能性がある。
↓このサイトの解説が図入りで分かりやすい。同じLAN内のクライアントやルーターを騙す手順が解説されている。
上図では、ホストAに不正なARP応答を送信し、ホストAのARPテーブルが影響を受けた通信フローを示していますが、同じようにルータBからARP要求がきた場合は、ルータBに不正なARP応答を送信することによりホストAとルータBの両方の通信先を攻撃者に向けることによって、通信傍受やデータ改ざんなどができます。
ARPペイロードの「送信元IPアドレスとMACアドレス」は、IPヘッダとEthernetヘッダのアドレスと異なることから、そのような不正なARP応答パケットは受理されないのではないかと思えそうですが、Proxy ARPなどの機能をサポートするため、このような不正なARPパケットも受理してARPキャッシュしてしまいます。