1. 程式人生 > >CentOS上NTP服務的DDOS攻擊解決辦法

CentOS上NTP服務的DDOS攻擊解決辦法

引言: 在網路上,Linux伺服器大行其道,但是也備受攻擊。本文將描述在實際中碰到的NTP攻擊問題以及相應的解決辦法。

1. 場景描述

     Aliyun上的ECS一臺,過一段時間,頻繁報警,說是流量過大,遭到了DDOS攻擊,服務將被隔離,並停止響應服務一段時間,進行流量清晰。 總之,服務被DDOS搞掛了,不可用。

2.  分析

    通過提交工單,獲取了訪問的日誌資訊cap檔案。開啟之後,看到了大量的NTP服務資訊:

19	0.000140	188.162.1.140	115.29.44.161	NTP	482	NTP Version 2, private
 

   經過基於埠和程序的查詢,都是基於123埠的連線請求大量佔用資源, 而123埠是NTP服務的埠,故基本確定是NTP服務被外部反覆請求造成的。

3.  何為NTP?

    NTP伺服器【Network Time Protocol(NTP)】是用來使計算機時間同步化的一種協議,它可以使計算機對其伺服器或時鐘源(如石英鐘,GPS等等)做同步化,它可以提供高精準度的時間校正(LAN上與標準間差小於1毫秒,WAN上幾十毫秒),且可介由加密確認的方式來防止惡毒的協議攻擊。時間按NTP伺服器的等級傳播。按照離外部UTC源的遠近把所有伺服器歸入不同的Stratum(層)中。

   參考資訊; http://baike.baidu.com/link?url=y5y33eP0oLaSRg6pPMGDM6i-KPDxHwAQuHh84SAn_JBayZswqUEt2fWSadUrMn3uu7MeVA-ZCib6wCDCrqSA8K

4.  如何來解決:

伺服器現象:

由於您機器上的服務配置不當,導致被黑客利用進行DDOS攻擊,表現為機器對外頻寬佔滿,使用抓包工具,可以看到大量同一源埠的包對外發出。

Linux系統:

加固NTP服務:

1、通過Iptables配置只允許信任的IP,訪問本機的UDP的123埠,修改配置檔案執行echo "disable monitor" >> /etc/ntp.conf,然後重啟NTP服務,service ntpd restart。

2、建議您直接關閉掉NTP服務,執行service ntp stop,並禁止其開機自啟動執行chkconfig ntpd off。

加固Chargen服務:

1、通過Iptables配置中允計信任的IP,訪問本機的UDP的19埠。

2、建議您直接關閉掉chargen服務,編輯配置檔案 "/etc/inetd.conf",使用#號註釋掉chargen服務,重啟inetd。 

Windows系統:

加固Simple tcp/ip服務:

1、通過防火牆配置,只允許信任的IP,訪問本機UDP、TCP的19、17埠。

2、我們建議您直接如下圖配置關閉該服務,並禁止自啟動。

WEB應用的加固:

Wordpress的Pingback:

1、您可以通過增加Wordpress外掛來阻止Pinback被利用,加入如下的過濾器:

add_filter( ‘xmlrpc_methods’, function( $methods ) {
   unset( $methods[‘pingback.ping’] );
   return $methods;
} );

2、我們建議您,直接刪除檔案xmlrpc.php。

5. 參考資料:

  •     https://help.aliyun.com/knowledge_detail/37527.html