NTPがDDoS攻撃の踏み台にならないために
「NTPサーバの設定を見なおして欲しい」と言うメールを頂いたので、対策してみました。
NTPサーバ
今更ですが、NTPサーバはネットワーク経由で、コンピュータの時間を同期させる為のものです。通信には、UDP123を使っています。
問題点
JVNVU#96176042によると、脆弱性が存在するのは、ntpd 4.2.7p26以前のもので、第三者によるDDoS攻撃への踏み台として使われる可能性があるとのことです。
この脆弱性は、NTPサーバのmonlist機能を悪用したものだそうです。
では、どのような仕組みなのか簡単に触れておきます
登場人物
- どこからの要求にも応えしまうNTPサーバ(踏み台)
- 悪意のある第三者
- DDoS攻撃を受ける攻撃対象
踏み台にならないための対策
- NTPサーバを外部に公開しないようにします。
- 「monlist」機能を無効にします。
ntp.confに「disable monitor」の1行を追加します。 - 「restrict」でアクセス制限をします。
restrict default ignore デフォルト設定で全NTPパケット拒否。
restrict -6 default ignore デフォルト設定で全NTPパケット拒否。(IP6)
restrict 127.0.0.1 ローカルホストからのアクセス許可。
restrict ntp.xxxxxxxx.jp kod nomodify notrap nopeer noquery
上位サーバからの通信を制限します。
restrictのフラグ
ignore | 全パケット拒否。 |
kod | 問い合わせが閾値を超えた時、「問い合わせの中止」を伝えるパケットを送る。このパケットを受け取ったクライアントは、解除されるまでサーバへの問い合わせができなくなります。 |
nomodify | 時間の問い合わせには応じるが、変更要求等は拒否。 |
notrap | リモートイベントのログ記録機能の提供拒否。 |
nopeer | 相互同期拒否。 |
noquery | 設定変更や状態の確認要求拒否。 |
コレで暫く様子を見ます。