ICMPフラッド攻撃【ICMP flooding attack】Pingフラッド攻撃/Ping flooding attack
概要

ICMP(Internet Control Message Protocol)はIPネットワーク上で通信の制御や状態確認を行うプロトコルで、機器への到達性を調べる「ping」コマンドや、経路を追跡する「traceroute」コマンドなどに利用されている。ネットワークの診断や障害検出に不可欠な仕組みである一方、その応答の仕組みが攻撃に悪用されることがある。
ICMPフラッド攻撃では、攻撃者が「ICMPエコー要求」(ICMP echo request)と呼ばれるメッセージを極めて短時間に集中して送信する。標的はこれら大量のパケット処理に追われ、CPUやメモリなどの計算資源が消費される。受信トラフィックが回線容量を超えると通信が麻痺状態となり、正規の利用者からの通信を受け付けられなくなる。
攻撃の効果を高める手段として、送信元IPアドレスを偽装するIPスプーフィングや、多数の踏み台ホストを経由する分散型DoS攻撃(DDoS攻撃)の手口が組み合わせて使われることも多い。過去には「スマーフ攻撃」と呼ばれる派生手法もあり、ブロードキャストアドレスを利用して標的のIPアドレスを詐称したICMPエコー要求を広範囲に送りつけることで、多数のホストから集中的な応答を引き出していた。現在は多くのルータがブロードキャスト宛てのICMPを遮断するよう設定されているため、この手法による被害は減少している。
対策としては、ファイアウォールや侵入防止システム(IPS)でICMPエコー要求の流量を制限したり、外部からのICMPを遮断したりする設定が一般的である。ただし、ICMPを完全に遮断すると、pingによる障害診断が行えなくなるなどネットワーク管理上の支障が生じる場合がある。そのため、一定量を超えるICMPのみをフィルタリングするレート制限が現実的な対処とされることが多い。
同じくICMPを悪用する攻撃に「Ping of Death」(死のping)がある。1回のメッセージに断片化した巨大なデータを含めて送信し、受信側のオペレーティングシステム(OS)や通信制御ソフトウェアの不具合を誘発する手法で、大量送信によって帯域や処理能力を圧迫するICMPフラッド攻撃とは性質が異なる。