Time synchronization(時刻同期)

NTP(Network Time Protocol)は、ネットワーク経由でシステム時刻の同期を行うプロトコルです。NTPの仕組み使用したDDoS攻撃は、以下の手順で特定のサイトに対して大量のトラフィックを発生させます。

  • 送信元IPアドレスを詐称したリクエストパケットを公開NTPサーバに対して大量に送り付ける。リクエストパケットにはNTPサーバが過去にやり取りした最大600件のアドレスを返す"monlist"コマンドを指定する。
  • 公開NTPサーバは大量のアドレスが記述されたレスポンスパケットを、詐称された送信元IPアドレス宛に送信する
  • 大量のレスポンスパケットが送信されたサイトではトラフィックが大幅に増加し、サービス不能に陥る。

f:id:lullylapislazuli:20220322060503p:plain

攻撃の流れとしてはDNS amp攻撃などと同様ですが、NTPの"monlist"の仕様上、200バイト程度のリクエストに対して、その100倍以上のレスポンスパケットが生じることもあり、パケット増幅率の大きさが特徴の1つになっています。

対処としては、NTPサーバプログラム(ntpd)を問題が修正されたバージョンにアップデートすることが一番ですが、その適用が難しい場合はネットワーク内の非公開NTPサーバであれば外部からのサービス要求を拒否する、公開NTPサーバであれば"monlist"機能を無効にするなどの対策をとることになります。

 

 

Reference

第1回 NTPとWindows時刻同期サービス (1/2):Windowsネットワーク時刻同期の基礎とノウハウ(改訂版) - @IT