本文首先介紹了網絡攻擊對目前網絡安全的影響及分布式拒絕服務攻擊的工作原理和現狀,接著分析了分布式拒絕服務的攻擊類型,並探析新型攻擊類型的核心技術和防范對策。將新型的DDOS的3 類攻擊方式:基於堵流量的攻擊方式、基於網站腳本的攻擊方式、另類攻擊方式進行了探析,最後給出攻擊方式相應的安全策略和防御對策。
一、背景
隨著網絡技術的發展,人們的生活和工作已經 同它密不可分,人們在享受信息技術所帶來便捷的 同時,也遭受著各類網絡信息被黑客惡意攻擊、信息 被竊取等不同形式的網絡攻擊,並且這種攻擊變得 越來越嚴重。網絡上的惡意攻擊實際上就是尋找一 切可能存在的網絡安全缺陷來達到對系統及資源的 損害,從而達到惡意的目的。分布式拒絕服務攻擊 (以下稱 DDOS) 就是從1996 年出現,在中國 2002 年開始頻繁出現的一種攻擊方式。
分布式拒絕服務攻擊(DDOS 全名是 Distribut- ed Denial of service),DDOS 攻擊手段是在傳統的DoS 攻擊基礎之上產生的一類攻擊方式。單一的DOS攻擊一般是采用一對一方式的,當攻擊目標 CPU 速度低、內存小或者網絡帶寬小等等各項性 能指標不高它的效果是明顯的。
隨著計算機與網絡技術的發展,計算機的處理能力迅速增長,內存 大大增加,同時也出現了千兆級別的網絡,這使得 DOS 攻擊的困難程度加大了,目標對惡意攻擊包的 " 消化能力 " 加強了不少,例如:你的攻擊軟件 每秒鐘可以發送4000 個攻擊包,但我的主機與網 絡帶寬每秒鐘可以處理 20000 個攻擊包,這樣一來 攻擊就不會產生什麼效果。 分布式拒絕服務攻擊使用了分布式客戶服務器 功能,加密技術及其它類的功能,它能被用於控制任 意數量的遠程機器,以產生隨機匿名的拒絕服務攻 擊和遠程訪問。為了有效防范網絡入侵和攻擊,就必 須熟悉網絡入侵和攻擊的手段和原理,在此基礎上才能制定行之有效的防范對策和防御措施,從而確 保網絡信息的安全。
二、DDOS攻擊的現象及攻擊方式
目前防火牆技術、性能的提升、計算機安全檢測方式的多樣化、網絡拓撲結構的不斷優化,計算機網絡系統的安全性能得到了一定程度的提升。傳統的DOS攻擊已經很難起到多大的效果。
2011 年5月30日,美國政府表示,已經向全球最大軍火商洛克希德 - 馬丁公司(以下簡稱“洛馬”)提供幫助,克服網絡攻擊帶來的負面影響。洛馬5 月21日宣布,該公司的計算機網絡持續遭遇“猛烈攻擊”。美國國土安全部的一名發言人稱,該部及國防部已經了解洛馬遭遇網絡攻擊,並向該公司提供幫助。網絡安全使 們每時每刻都關心的問題,因為我們的生活已經與它有越來越多的交集。被DDOS攻擊時的現象是能瞬間造成對方電腦死機或者假死,我曾經測試過,攻擊不到1秒鐘,電腦就已經死機和假死,鼠標圖標不動了,系統發出滴滴滴滴的聲音,主要攻擊方式包括:TCP 全連接攻擊、SYN 變種攻擊、TCP混亂數據包攻擊、針對用UDP協議的攻擊、針對WEB Server的多連接攻擊及變種攻擊、針對游戲服務器的攻擊。新型的DDOS攻擊方式大致分為3類:基於堵流量的攻擊方式、基於網站腳本的攻擊方式、另類攻擊方式。為便於說明, 以下特別以寄信者(攻擊者)—郵局(硬件防火牆) —收信者(服務器)作為事例輔助說明。
(一)基於堵流量的攻擊方式
這類攻擊方式傷人先傷己,犧牲自己的帶寬流 量去堵別人的帶寬流量,造成他人無法訪問。就好象 某個寄信者通過郵局給你寄了數量極其龐大的垃圾 信件,而收件者的信箱容量是有限的,從而導致收信 者的信箱被塞滿,其他的正常信件無法投遞過來。
1.SYN 變種攻擊模式
這種攻擊方式發送偽造源 IP 的 SYN 數據包,與傳統的 SYN 攻擊不同的是,它的數據包不是過去 的六十四字節,而是多達上千字節,這樣的攻擊方式 會造成一些防火牆處理錯誤進而導致鎖死,在消耗 掉服務器 CPU 和內存的同時還會阻塞網絡帶寬。除 此之外,還可以通過發送偽造源 IP 的 TCP 數據包, 並且在 TCP 頭的 TCP 標志位進行隨機設置,造成其 標志位的混亂。而再強大的防火牆的數據吞吐量也 是有限的,因此在這樣的攻擊方式面前,防火牆常常無計可施。
2.TCP 並發攻擊模式
每台電腦的套接字數量都是有限的,Windows 規定每個應用程序最大使用的套接字數量是 1024 個。這種攻擊方式就是利用了Windows的這一特 性,在短時間內不斷對目標主機的特定端口創建TCP 連接,消耗其套接字資源,直到其用盡為止。這樣也就導致此端口無法正常提供服務了。這種攻擊是為了繞過常規防火牆的檢查而設計的,因為常規的防火牆大多具備如SYN、UDP、ICMP 等傳統的DDOS 攻擊的防御過濾功能,但對於正常的TCP連接是放過的。
3.分布式反射拒絕服務攻擊(DRDOS)
DRDOS是英文“Distributed Reflection Denial of Servie Attack”的縮寫。根據TCP三次握手的規則,一台主機向另外一台目標主機發送了 SYN 請求後,目標主機會根據 SYN 請求包的源地址發出SYN+ACK. 82. 包來響應這個請求。DRDOS就是利用了這個規則的 缺陷,將請求包的源地址偽造為被害機器的地址,那麼目標服務器就會將 SYN+ACK 應答包發往被害機器。當然,以現在的硬件條件,這麼點的數據包對於被害主機的影響微乎其微。可是,當被害者被多個網 絡核心基礎設施路由器攻擊,而這些連接又都是完 全合法的SYN+ACK 連接應答包。路由器使用BGP (BGP 是中介路由器支持的“邊界網關協議”Border Gateway Protocol) 與它們的鄰居進行即時的信息交 流來交換它們的路由表,這是為了通知它們彼此路 由器可以在哪個 IP 范圍內進行轉交。BGP 自身規則 本沒有問題,每個良好連接的中介器都會接受它們 179 端口上的連接。也就是說,任何一個SYN數據包到達一個網絡路由器上後,都會引出一個該路由 的 SYN+ACK 應答包來,從而利用 BGP 的特性實現 了反射放大,形成洪水攻擊,造成該主機忙於處理這 些回應而最終形成拒絕式服務攻擊。這好比給某人 寫信時,故意將寄信人的地址偽造為目標 A 的地 址,而收信人收到信後按照 A 的地址回信,從而造 成目標 A 的信箱被大量的“回信”所阻塞。
4.針對游戲服務器的攻擊
網絡游戲開發商通常為了吸引游戲玩家而設計 多種多樣的游戲元素,其協議設計非常復雜,這便給攻擊者提供了可乘之機,在提供豐富游戲元素的同 時也給攻擊者提供了多種攻擊手段。當前最流行的 一種攻擊方式叫做“假人攻擊”,這種攻擊方式是通 過技術手段,完全模擬游戲客戶端的注冊、登陸、建立人物、進入游戲活動的整個過程協議數據,從數據協議層面模擬正常的游戲玩家。此攻擊方式即使是在一台奔騰 3 的機器上也能輕易地模擬出數百個游 戲玩家,從而可以利用傀儡主機在極短時間內制造 出大量的虛假玩家來消耗游戲服務器資源,但這種 攻擊方式是很難從游戲數據包來分析出哪些是攻擊 者哪些是正常玩家,因為在服務端看來,二者的數據包是完全一樣的。
(二)基於網站腳本的攻擊方式
基於網站腳本的攻擊方式主要是針對 ASP、 PHP、JSP 等腳本語言制作,並調用ACCESS、 MSSQL、MYSQL、ORACLE 等
數據庫的網頁系統設計的。相比較於基於堵流量的攻擊方式,此類方式主要是通過發送網頁請求來消耗服務器系統資源(CPU、內存),形成拒絕式服務,它是通過自己極少 資源的消耗造成對方較大的資源消耗。
1.CC 攻擊
CC 攻擊全稱是 ChallengeCollaPsar(cc 拒絕服務 攻擊), CC 攻擊的原理是,首先和服務器建立正常的TCP 連接,並通過多台主機(主要是 HTTP、SOCKS5 代理服務器)不斷地向數據庫提交注冊、查詢、刷新等消耗資源的命令,且保持連接,使得服務器無法釋放資源,最終將服務器的資源消耗掉從而導致拒絕 服務。就象你找寫手不斷地給一個人寫信,整個郵局 為你一個人的信件而奔波,無暇顧及其他人的信件,導致對方無法收到其他人的信件了。這種攻擊和正 常訪問網站是一樣的,只是瞬間訪問量增加幾十倍 甚至上百倍,有些防火牆可以通過限制每個連接過來的IP連接數來防護,但是這樣會造成正常用戶稍微多打開幾次網站就會被防火牆封鎖,而且 CC 攻 擊往往是借助代理服務器的網頁代理服務來發動攻 擊的,這種封鎖方式意義不大。
2.變異CC攻擊
傳統的CC攻擊並非無懈可擊,它的特征是很 明顯的,攻擊是建立在代理資源上,因此有很有針對 性的防御措施。所謂變異 CC,核心是在構造提交數 據的時候把一切可能被服務器支持的操作都加進 去,想辦法讓服務器多耗資源。當然,這其中針對防 御設備的安全策略,可以繼續進行變異。比如不發送 GET 請求,而是發送亂七八糟的字符。這麼做是因 為大部分防火牆分析攻擊數據包前三個字節是 GET 字符,然後來進行 httP 協議的分析。這種攻擊 不用發送 GET 請求就可以繞過防火牆到達服務器, 且同樣可以消耗大量服務器資源。
(三)另類攻擊方式
之所以稱此類攻擊方式為“另類”,是因為它不 需要象前兩種攻擊方式一樣編寫大量復雜的網絡 協議代碼,更多是注重攻擊的技巧。它們或許有的 算不上 DDOS 攻擊,但是在以上兩種方式都行不通 時,這些“另類”的攻擊方式或許可以起到意想不 到的效果。
1.下載文件:
不管是通過FTP方式還是通過HTTP方式下載服務器文件,特別是大型文件,都會 在一段時間內連續地產生大量的網絡流量,且會消 耗大量系統資源。攻擊者可以利用大量傀儡主機多 線程地下載服務器的某個大型文件,從流量帶寬和 系統資源兩個方面拖垮服務器。
2.發郵件堵郵箱:
隨著電子郵件服務系統的產 生和發展,支持大附件的郵件服務越來越多的在各 類電子郵件服務商的系統中推廣開來。這也給攻擊 者帶來了可乘之機 。 在堵流量和消耗系統資源 (CPU、內存)這兩種攻擊方式都行不通時,消耗硬盤 資源也成了攻擊者新的選擇。攻擊者鎖定目標後,只 需要利用網上現成的郵件群發工具,通過簡單操作 就能對某一個郵件服務器可采集到的帳戶進行海量 郵件發送,消耗其硬盤資源。雖然現在絕大多數的郵 件服務器都配置的是大容量硬盤,但是對於某些小 型的服務器效果還是不錯的。
3.攻擊DNS服務器:
在目標服務器的防御措 施非常嚴格時,攻擊其域名的DNS服務器也是個 不錯的選擇。只要用前面提到的堵流量或者耗資 源的方法能令其 DNS 服務器拒絕服務,同樣可以 導致訪問其主服務器的用戶因無法解析其域名而 無法訪問網站。
4.盜鏈:
網絡上很多小網站由於其空間資源緊張,為節約其系統資源,往往采用盜鏈的技術,盜鏈是指服務提供商自己不提供服務的內容,通過技術手段繞過其它有利益的最終用戶界面(如廣告),直接在自己的網站上向最終用戶提供其它服務提供商的服務內容,騙取最終用戶的浏覽和點擊率。受益者不提供資源或提供很少的資源,而真正的服務提供商卻得不到任何的收益。網站盜鏈會大量消耗被盜鏈 網站的帶寬,而真正的點擊率也許會很小,嚴重損害了被盜鏈網站的利益。常見的盜鏈有:圖片盜鏈、音頻盜鏈、視頻盜鏈、文件盜鏈。
三、安全策略與防御措施
防御DDOS攻擊是一個系統工程,單單依靠某 種系統軟件來防御 DDOS 攻擊是不現實的,在目前的技術水平下完全杜絕 DDOS 攻擊是不可能的,通 過采取適當的防御措施抵御90%的DDOS攻擊是可以做到的。
(一)把網站做成靜態頁面
事實證明,把網站盡可能做成靜態頁面,不僅能大大提高網站的抗攻擊能力,而且還給黑客入侵帶來不少麻煩,至少到現在為止關於HTML的溢出還沒出現。目前我國的幾家門戶網站如新浪、搜狐、網易等主要都是靜態頁面。
(二) 增加服務器數量並采用
DNS 輪巡或負載均衡技術需購買七層交換機設備,從而使得抗DDOS攻擊能力成倍提高,只要投資足夠深入,便可高效防御DDOS攻擊。
(三)在攻擊源頭采取安全策略。
DDOS攻擊的防御必須通過網絡上各個團體和使用者的共同合作,制定更嚴格的網絡標准來解決。每台網絡設備或主機都需要隨時更新其系統漏洞、關閉不需要的服務、安裝必要的防毒和防火牆軟件、隨時注意系統安全,避免被黑客和自動化的DDOS程序植入攻擊程序,以免成為黑客攻擊的幫凶。
(四)采取加密技術
對於游戲服務商而言,在游戲通訊協議上,應采用高強度的加密算法,提高認證機制,加大攻擊者的模擬難度。
(五)優化路由和網絡結構。
如果你管理的不僅僅是一台主機,而是網絡,就需要調整路由表以將拒絕服務攻擊的影響減到最 小。為了防止SYN flood 攻擊,應設置TCP偵聽功能。詳細資料請參閱相關路由器技術文檔。另外禁止 網絡不需要使用的 UDP 和 ICMP 包通過,尤其是不應該允許出站 ICMP“不可到達”消息。
(六)用足夠的機器承受黑客攻擊
這是一種較為理想的應對策略。如果用戶擁有足夠的容量和足夠的資源給黑客攻擊,在它不斷訪問用戶、奪取用戶資源之時,自己的能量也在逐漸耗失,或許未等用戶被攻死,黑客已無力支招兒了。不過此方法需要投入的資金比較多,平時大多數設備處於空閒狀態,和目前中小企業網絡實際運行情況不相符。
四、結束語
計算機網絡信息安全是一項復雜的系統工程,防御DDOS網絡攻擊只是保障網絡信息安全的一部分。隨著計算機網絡的快速應用和普及,網絡信息安全的不確定因素也越來越多,我們必須綜合考慮各種安全因素,認真分析各種可能的入侵和攻擊形式,采取有效的技術措施,制定合理的網絡安全策略和配套的管理辦法,防止各種可能的入侵和攻擊行為,避免因入侵和攻擊造成的各種損失。