T-CREATOR

「ntpd」の「monlist機能」からの DDoS攻撃対策について

「ntpd」の「monlist機能」からの DDoS攻撃対策について
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

「ntpd」の「monlist機能」からの DDoS攻撃対策についてメモしました。

システム内の時間を正しい時間に同期させる NTPサーバーのプログラムntpdの一部バージョンに
NTPサーバーの状態を確認する機能monlistの脆弱性が見つかったそうです。

これはmonlist機能がNTPサーバーへのリクエストに
大きなデータが返されることを利用し

送信元のIPアドレスを偽装して第三者のwebサーバーなどに
大量のデータを送りつけることができるそうです。

今後もこのような攻撃が続くと想定されています。

脆弱性の対象

NTP Project の情報によりますと、以下のバージョンが影響を受けます。

「ntpd 4.2.7p26」以前のバージョン

安定版の 4.2.6.x系はすべて影響を受けます。

バージョンの確認方法

コマンドラインからサーバーへ接続し以下のコマンドを入力します。

terminal$ ntpd -v

下記の場合バージョンは4.2.6系です。
対策が必要になります。

terminal$ ntpd - NTP daemon program - Ver. 4.2.6p5

下記の結果であればntpdはインストールされていません。

bash-bash: ntpd: command not found

対策について

簡単な対策としては2通りあります。

  • 対策1 修正済みバージョンへアップデート
  • 対策2 monlist機能を無効化

対策1 修正済みバージョンへアップデート

修正済みのバージョンは、以下のようですです(2014/2/10)。

ntpd 4.2.7p421(開発版)

下記からダウンロードできます。

http://www.ntp.org/downloads.html

yumになかったのでntpd 4.2.7p421(開発版)
サイトからインストールしてみます。

※ntpd 4.2.7p421は開発版です。インストールは自己責任でお願いいたします。

手順

1.コマンドラインから「tmp」フォルダに移動します。

terminal$ cd /tmp

2.「tmp」フォルダにntpd 4.2.7p421(開発版)をダウンロードします。

terminal$ wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-dev/ntp-dev-4.2.7p421.tar.gz

3.ダウンロードしたファイルを解凍します。

terminal$ tar xzfv ntp-dev-4.2.7p421.tar.gz

4.解凍したフォルダに移動します。

terminal$ cd ntp-dev-4.2.7p421

5.「configure」します。

terminal$ ./configure

6.「make」します。

terminal$ make

7.インストールします。(ルート権限)

terminal$ sudo make install

8.一旦終了します。

terminal$ exit

9.再度ログインしバージョンを確認してみます。

terminal$ ntpd -v

/usr/local/bin/ntpd: illegal option -- v

ntpd - NTP daemon program - Ver. 4.2.7p421

10.とりあえず再起動してみました。

terminal$ sudo service ntpd restart

11.設定などは「etc/ntp.conf」から変更できます。

terminal$ sudo vi /etc/ntp.conf

対策2 monlist機能を無効化

2つ目の対策として「monlist機能を無効にする設定」を行います。

手順

1.コマンドラインから設定ファイルを編集します。

terminal$ sudo vi /ect/ntp.conf

2.「/etc/ntp.conf」ファイルに下記を追加します。

terminal$ disable monitor

3.「ntp」を再起動します。

terminal$ sudo service ntpd restart

以上になります。

参考文献

記事Article

もっと見る