于康存
(無錫南洋職業技術學院,江蘇 無錫 214156)
分布式反射拒絕服務攻擊(Distributed Denial of Service attack,DDoS)因其實現容易、攻擊方法多樣、攻擊效果顯著、溯源困難在眾多網絡攻擊方式中愈發流行。DDOS的機制是利用主流的網絡協議缺陷來設計,故這種攻擊方法會伴隨計算機通信網絡長期存在。針對該問題,基于NTP反射放大攻擊原理,建立實驗模型,結合wireshark軟件,抓包分析其攻擊效果,研究NTP協議原生安全漏洞被利用的原理,在此基礎上提出防范方法。
NTP作用在應用層,由 UDP協議來承載。UDP是一個無連接協議,適用于追求效率且不需要額外可靠機制的情形,也正是由于該協議不對通信驗證,使得NTP的 monlist檢查機制被利用,處于公開訪問狀態的網絡時間協議 (NTP)服務器被攻擊者利用,攻擊者利用用戶數據報協議(UDP)流量開展對目標服務器的“放大”流量攻擊。“放大”是指誘騙服務器響應一個不成比例的數據包請求,理論上放大倍數可達500 倍以上,從而造成流量放大攻擊,其原理如圖1所示。

圖1 NTP攻擊原理Fig.1 NTP attack principle

圖2 多反射源NTP攻擊原理Fig.2 NTP attack principle of multiple reflection sources
當攻擊者收集反射源可以全網段掃描開放1900端口的外網IP,也可以爬蟲shodan或zoomeye在一些公網設備搜索引擎上面進行收集,找到若干不安全的NTP服務器,將會有更多自NTP服務器發出的流量送達被攻擊端,造成比單一NTP服務器更大的攻擊效果。
在公網上尋找NTP服務器,利用兩臺可控制的接入公網電腦,分別是終端A(模擬攻擊端)、終端B(模擬被攻擊端)。
在終端A上發送自己構造的四層數據包,用python的scapy將源IP偽造成機器B的IP地址,代碼如下:

圖3 IP地址編輯Fig.3 IP address edit
在機器B上進行監控,成功收到數據包。結合抓包來看實際效果:
解讀圖4數據可以看到一次含有monlist的請求共收到602行數據,去掉前兩行無效數據,剩余600個客戶端IP列表,wireshark抓包分析圖顯示有101個NTP協議的包,不計算請求包,正好是100個響應包。

圖4 抓包數據分析Fig.4 Analysis of packet capture data
圖中顯示請求包的大小為234字節,其響應包是482字節,482×100/234=206倍,就是按照這個數據得出的放大倍數。如果編寫攻擊腳本減小請求包,則這個倍數會更大。
由此可見,利用NTP反射的放大流量攻擊,其實現容易,并不需要操縱很多終端。就被攻擊端而言,其流量來源于合法地址,難以溯源,防范困難。
宏觀上,網絡運營商可分為國家、省級、地市三級結構,可建立三級網絡 DDoS 防御系統,對國家級網絡、省級網絡、地市級網絡明確責任分工,分別承擔對應網絡區域級別內的DDOS防御職責。
現階段,DDOS攻擊全面防御不太現實,所以有必要采用分級防護策略,在保證服務質量的前提下兼顧防御效果。根據保護對象的重要程度,指定不同的防御策略,對于重點保護對象,基于其作用與功能要求,“量身定制”防御方案;對于非重點保護對象,采用通用防御策略進行保護,從而實現效益最大化。
建立合作機制,整合運營商、安全托管服務提供商的力量,開放各自防御資源API接口,共享DDoS防御系統。
根據NTP反射放大型DDoS 攻擊原理,常規防御方法有限速、黑名單。除此以外,可考慮采取以下防御措施:
一是從加固NTP服務著手,升級服務器版本,不啟用NTP服務器上的monlist 功能。查看ntp服務器版本,升級到4.2.7p5以上ntpd-v,在ntp.conf配置文件末尾增加disable monitor選項,關閉服務器 udp 123端口(或通過Iptables配置只允許信任的IP訪問本機UDP的123端口)。
二是利用通信運營商開展近源防護,借助核心路由器的流量檢測設備,準確辨別攻擊的來源區域。根據當前的網絡結構特點,電信運營商主動防御DDoS攻擊需要做到地市級大型城域網、省級、骨干之間進行聯動,在國家骨干網核心、省級骨干網、地市級大型城域網骨干分別部署異常流量檢測清洗中心,在三級網絡內都需部署相應的DDoS異常流量檢測模塊,當大面積攻擊產生時,地市接入目標網絡主動監測,主動清洗異常流量,通過相應的流量清洗設備將攻擊流量在最靠近攻擊發起源的網絡節點上予以清除。根據部署的實際環境選擇相應的防DDoS 設備,也可以考慮購買DDoS 云清洗服務。一般而言,抗DDoS流量攻擊清洗體系包含三個部分,即檢測、緩解和監控管理。攻擊檢測體系檢測隱藏在網絡流量中的攻擊流量部分,在發現攻擊后啟動防護設備進行流量清洗;攻擊緩解體系經過專業的流量凈化產品,將可疑的流量從原始網絡途徑中重新定向到凈化產品上進行惡意流量的識別和剝離,還原出的合法流量回注到原網絡中轉發給目標體系,其他合法流量的轉發途徑不受影響;監控管理體系對流量清洗體系的設備進行集中管理裝備,展現實時流量、告警時間、狀況信息監控、及時輸出流量剖析陳述和攻擊防護陳述等報表。
三是加速cdn中轉服務。cdn中轉加速服務能夠較好地隱藏網站服務器實際IP,從而實現降低DDoS攻擊的目的。應用cdn技術,能夠使網絡服務器處理數據響應的速度大幅提高。cdn技術會根據目前網絡服務器的狀態來分派指令請求,能夠減少網絡用戶在發出請求之后的等待時間。
四是開啟 DNS 優化規則,優化 DNS 解析差異化DNS 服務商。啟動 DNS 客戶端驗證,丟棄快速重傳數據包。
五是將服務器不需要的端口及服務關閉,如icmp、telnet、ssh,從而降低風險。
六是由于DDoS的發生無法預知,因此做好預防措施和應急預案就顯得尤為重要。很多被攻擊的發生并不是攻擊者技術有多高明,而是被攻擊者的業務系統存在太多漏洞。應通過日常運維操作使系統健壯穩固,減少漏洞,降低脆弱服務被攻陷的可能性,這是最好的防御手段。如果 NTP 服務器變得安全了,那么這類反射攻擊會逐步減少以至消失。隨著網絡安全防護技術的普及,存在漏洞的不安全NTP 服務器數量也在減少,攻擊者想要利用多個NTP服務器開展攻擊會更加困難,如此攻擊者只能回歸到原始的利用控制僵尸網絡的 DDoS 模式中去,將消耗其更多的資源和財力,攻擊效果也會下降,從而降低攻擊者的攻擊意愿,最終減少利用NTP服務漏洞開展的攻擊行為。
由于NTP反射DDoS攻擊難以追蹤且不用大量的控制入侵“僵尸電腦”,因此在網絡攻擊行為中較多見,對網絡安全造成了很大的威脅。針對該問題的研究具有一定的現實意義,通過分析可知,防范這一攻擊行為需要各方通力合作。可以預見,網絡安全攻防行為將伴隨網絡技術持續存在,針對新型反射放大DDoS攻擊,開展網絡協議研究,更有助于高效防御技術和方案的形成。