王 浩 李盤榮
無錫廣播電視大學(xué) 江蘇無錫 214011
DDoS攻擊的分類及其防御機(jī)制
王 浩 李盤榮
無錫廣播電視大學(xué) 江蘇無錫 214011
DDoS攻擊已經(jīng)成為一種全球性的網(wǎng)絡(luò)災(zāi)害,其攻擊形式一直在發(fā)展,致使DDoS防御的難度日益加大。DDoS攻擊者通過獲取一定數(shù)量的“傀儡主機(jī)”,使用工具掃描遠(yuǎn)程主機(jī)安全漏洞來取得遠(yuǎn)程主機(jī)的管理員權(quán)限,并在受控的遠(yuǎn)程主機(jī)上植入攻擊代碼或者木馬、病毒,進(jìn)而控制主機(jī)進(jìn)行DDoS攻擊。通過對DDoS的分類整理,找出一套系統(tǒng)的DDoS應(yīng)對方案,使安全技術(shù)人員和研究人員能夠根據(jù)情況的不同,采取相應(yīng)的防范措施。
分布式拒絕服務(wù)攻擊;傀儡主機(jī)
DDoS攻擊(Distributed Denial of Service Attack)分布式拒絕服務(wù)攻擊是網(wǎng)絡(luò)上用來攻擊服務(wù)器最有效的手段。為了應(yīng)對日益頻繁的DDoS攻擊,各式各樣的DDoS機(jī)制及工具設(shè)備應(yīng)運(yùn)而生。與此同時,攻擊者們則不斷更新攻擊方法和工具,而安全研究人員則根據(jù)變化不斷研究新的應(yīng)對方法。這就使得DDoS防御變得更加復(fù)雜。
分布式拒絕服務(wù)攻擊者通過控制大量的傀儡主機(jī)向被攻擊主機(jī),發(fā)送大流量攻擊數(shù)據(jù),使得被攻擊的主機(jī)不能響應(yīng)正常用戶的訪問請求。要研究DDoS的形成和發(fā)展首先要探討3個問題:DDoS的攻擊可行性、DDoS攻擊的實現(xiàn)方法、實施DDoS攻擊的目的。
1.1 DDoS攻擊可行性分析
當(dāng)今Internet的設(shè)計目的就是數(shù)據(jù)的快速傳送。作為中間傳輸媒介的網(wǎng)絡(luò)是本著高吞吐量、低負(fù)載的原則設(shè)計的,因此中間網(wǎng)絡(luò)基本上只負(fù)責(zé)轉(zhuǎn)發(fā)數(shù)據(jù),而相應(yīng)的安全措施和流控則由終端進(jìn)行。作為終端的服務(wù)器、主機(jī)或者設(shè)備的帶寬和處理能力有限,這就意味著在網(wǎng)絡(luò)上的任何一臺主機(jī)、服務(wù)器或者設(shè)備都很容易遭受到來自Internet的DDoS攻擊。
1.2 DDoS攻擊的實現(xiàn)方法
D D o S的攻擊者需要獲取一定數(shù)量的“傀儡主機(jī)”。攻擊者通過工具掃描遠(yuǎn)程主機(jī)安全漏洞來取得遠(yuǎn)程主機(jī)的管理員權(quán)限,并在受控主機(jī)上植入攻擊代碼甚至是木馬病毒,來控制主機(jī)進(jìn)行DDoS攻擊。并且在攻擊時將攻擊主機(jī)的源地址進(jìn)行偽裝,從而使得被攻擊者很難追蹤到攻擊源頭。
1.3 實施DDoS攻擊的目的分析
根據(jù)數(shù)據(jù)統(tǒng)計在國外相當(dāng)數(shù)量的攻擊者都是出于個人目的。還有一部分攻擊者本身具有很高的能力,他們?yōu)榱孙@示自己的能力或者在黑客社區(qū)里面炫耀自己。另外較少數(shù)的一部分人是本著商業(yè)目的或者利益關(guān)系進(jìn)行攻擊。他們的主要攻擊對象就是商業(yè)競爭對象、有利益關(guān)系的對手的網(wǎng)站或者網(wǎng)絡(luò)系統(tǒng)。
為了對DDoS攻擊進(jìn)行分類,我們對攻擊者實現(xiàn)方法和目的進(jìn)行了分析。
2.1 按照DDoS工作過程的自動程度分類
DDoS獲取“傀儡主機(jī)”,植入攻擊代碼或木馬、病毒,實施攻擊的這一過程都能由程序來自動完成。DDoS按照工作過程的自動程度分成:手動、半自動、自動。
(1)手動DDoS的攻擊者通過遠(yuǎn)程掃描“傀儡主機(jī)”的漏洞,然后植入攻擊代碼,最后控制“傀儡主機(jī)”來實施攻擊。由于過程復(fù)雜需要的專業(yè)知識比較多且效率較低,因此只有早期的攻擊者才會采用這種攻擊方式。
(2)半自動DDoS的攻擊者使用程序自動完成遠(yuǎn)程掃描“傀儡主機(jī)”的漏洞,然后植入代碼。在最后攻擊的時候采用手工控制,這樣攻擊者就可以指定“傀儡主機(jī)”的攻擊方式攻擊順序以及攻擊強(qiáng)度。但是,為了控制這些“傀儡主機(jī)”,攻擊者必須要和“傀儡主機(jī)”之間進(jìn)行通訊,才能操縱這些“傀儡主機(jī)”。
(3)全自動DDoS的攻擊者使用程序自動完成遠(yuǎn)程掃描“傀儡主機(jī)”的漏洞,然后植入代碼。其中,植入的代碼已經(jīng)包含了攻擊對象及攻擊模式的設(shè)定。所有步驟都是自動完成的,因此全自動DDoS就不需要和傀儡主機(jī)之間進(jìn)行通訊。
2.2 按DDoS對攻擊者的作用方式分類
DDoS攻擊可以利用不同服務(wù)器的弱點(diǎn),來對服務(wù)器進(jìn)行攻擊。當(dāng)被攻擊主機(jī)受到這類攻擊的時候,通常會造成服務(wù)器死機(jī)或者重啟。這一類型的DDoS攻擊主要分為2種類型:技巧性攻擊和暴力攻擊。
(1)技巧性攻擊利用目標(biāo)服務(wù)器某些軟件或者協(xié)議的漏洞,來消耗被攻擊服務(wù)器的系統(tǒng)資源,導(dǎo)致被攻擊服務(wù)器停止響應(yīng)。
(2)暴力攻擊是指不管服務(wù)器的狀態(tài),利用服務(wù)器上某些開放的端口或者協(xié)議軟件,通過大“傀儡主機(jī)”不計代價的發(fā)送服務(wù)請求,從而導(dǎo)致服務(wù)器不堪應(yīng)付而不能提供服務(wù)。暴力攻擊不同于技巧性攻擊,它在攻擊的時候同時消耗了“傀儡主機(jī)”的資源。
2.3 源地址欺騙攻擊分類
如果沒有源地址欺騙DDoS攻擊,那么很多其他類型的DDoS攻擊都能通過資源管理技術(shù)(為每個IP地址分配均等的資源)來解決。IP源地址DDoS攻擊可以分為2種類型:偽源地址DDoS攻擊和有效源地址DDoS攻擊。
(1)偽源地址DDoS攻擊的種類很多,目的各有不同??偨Y(jié)起來,共有2類:不可路由的偽源地址:這類攻擊通常是攻擊者為了避免被追究責(zé)任或者追蹤到,而偽裝了攻擊的源地址;可路由的偽源地址是通過偽裝一個在Internet上面存在的計算機(jī)IP地址,讓被攻擊主機(jī)的SYN數(shù)據(jù)包在攻擊主機(jī)與被偽造地址的受害機(jī)器之間往返,從而形成DDoS Flood攻擊。
(2)有效源地址攻擊偽裝地址DDoS攻擊的時候,會盡量采用偽裝的地址進(jìn)行攻擊。但是,偽地址DDoS攻擊卻受到“傀儡主機(jī)”端操作系統(tǒng)的限制。因為Windows的用戶層不支持?jǐn)?shù)據(jù)包頭部的字定義和修改,所以不能進(jìn)行偽地址DDoS攻擊。
2.4 按DDoS的可識別性分類
有些DDoS的攻擊,能夠通過對數(shù)據(jù)包的頭進(jìn)行仔細(xì)分析識別出來。因此,是否能夠識別和分析出DDoS的攻擊數(shù)據(jù)包,對于制定過濾規(guī)則有很重要的意義。這里,我們根據(jù)DDoS的是否能被分析分成2類來討論。
(1)可識別的DDoS攻擊,通常在IP包頭或者協(xié)議的傳輸數(shù)據(jù)頭中包含特定的攻擊數(shù)據(jù)。舉個例子來說,如TCP SYN攻擊(如果在TCP頭部分只有SYN位的話,很有可能就是TCP SYN攻擊包),又如ECHO攻擊,DNS請求攻擊等,都屬于能見識別的DDoS攻擊之列。
(2)不可識別的DDoS攻擊目的就是消耗服務(wù)器的可用帶寬。因此,這類DDoS發(fā)送的數(shù)據(jù)包沒有規(guī)律可言,其攻擊數(shù)據(jù)包多種多樣。甚至有時候這類攻擊的攻擊數(shù)據(jù)是隨機(jī)生成的。
2.5 按受攻擊對象分類
DDoS的主要攻擊對象大致可以分為:應(yīng)用程序、資源、網(wǎng)絡(luò)基礎(chǔ)設(shè)施攻擊。
應(yīng)用程序攻擊,針對的是受攻擊主機(jī)上面安裝的應(yīng)用程序。攻擊者是以這些受攻擊主機(jī)上某些應(yīng)用程序的漏洞,來制定攻擊方案的。攻擊者通過這些應(yīng)用程序的漏洞來攻擊網(wǎng)絡(luò)上的主機(jī),迫使這些主機(jī)上的應(yīng)用程序?qū)⒎?wù)器的資源耗盡,或令服務(wù)器重啟。
資源攻擊針對的是被攻擊主機(jī)上面的重要資源,如D N S服務(wù)器、路由器或者瓶頸鏈路。在攻擊時,DDoS數(shù)據(jù)包在攻擊主機(jī)前一個節(jié)點(diǎn)或者直接在被攻擊服務(wù)器上匯聚。為檢測和過濾帶來一定的難度。
網(wǎng)絡(luò)基礎(chǔ)設(shè)施攻擊針對的是網(wǎng)絡(luò)上的各種服務(wù),它并不直接針對具體的主機(jī),而是同時攻擊該臺主機(jī)所依托的相關(guān)網(wǎng)絡(luò)服務(wù)和資源。
DDoS的防范是一個系統(tǒng)的工作,它根據(jù)DDoS的攻擊和活躍程度來制定預(yù)防措施?;贒DoS活動級別防御機(jī)制可分為:預(yù)防措施和攻擊響應(yīng)措施。
3.1 預(yù)防措施
預(yù)防措施的目的是消除DDoS攻擊的可能性,并且使得可能被攻擊的主機(jī)不被DDoS攻擊所侵?jǐn)_。根據(jù)預(yù)防的目的不同,可以分為:攻擊預(yù)防、DDoS預(yù)防。
由于網(wǎng)絡(luò)協(xié)議的設(shè)計關(guān)系,服務(wù)器端的消耗要大于客戶端。如果要降低和消除這類攻擊的影響,就要在客戶機(jī)連接時進(jìn)行充分的身份認(rèn)證,部署功能強(qiáng)大的代理服務(wù)器使得TCP進(jìn)行完整的連接后才進(jìn)行響應(yīng),設(shè)置TCP Cookie,采用特定的方法消除欺騙攻擊,等等。
DDoS防御的目標(biāo)是在確保有效資源的基礎(chǔ)上加強(qiáng)資源分配的管理,以防止資源的過度消耗,在最大程度上保證為正常客戶的訪問。對于DDOS的防御,我們采取2種方式:賬戶資源分配策略、資源倍增策略。
賬戶資源分配策略指的是用戶對于資源的使用權(quán)取決于用戶在服務(wù)器端的賬戶權(quán)限,以及用戶的行為。賬戶資源分配策略為每個用戶進(jìn)行資源配額,以防止賬戶被盜而用于攻擊用途,當(dāng)發(fā)生攻擊行為的時候,賬戶會被停用或者刪除。
資源倍增策略的原理是設(shè)置一組服務(wù)器,并對其進(jìn)行負(fù)載均衡配置。并在這些服務(wù)器之間以及與上層設(shè)備之間設(shè)置很高的連接帶寬,防止出現(xiàn)帶寬瓶頸。
3.2 攻擊響應(yīng)措施
攻擊響應(yīng)措施的目的是努力減低DDoS攻擊的影響。要實現(xiàn)這一目的,就要盡可能早的檢測DDoS的攻擊意圖。并在檢測到DDoS攻擊后進(jìn)行分類識別,并根據(jù)其不同的類型采取相應(yīng)的措施。攻擊檢測可以分為3種檢測方式:模式檢測、異常檢測、第三方檢測。
模式檢測是通過在比對數(shù)據(jù)庫中的DDoS攻擊的特征代碼,來檢測和判斷DDoS的種類和方式,但這一方式的弱點(diǎn)是不能檢測未知的DDoS攻擊方式。
模式檢測首先將服務(wù)請求的模式、方式和正常的服務(wù)方式進(jìn)行比對,將異常的情況篩選出來作為檢測和判斷的依據(jù)。這種方式同模式檢測相比,能夠預(yù)測未知的DDoS攻擊,但同時也存在其弱點(diǎn)——容易誤報。
第三方檢測是指不是通過自身,而是通過外界來檢測DDoS攻擊的發(fā)生和其特性。
受攻擊應(yīng)對策略的目標(biāo)是將DDoS攻擊的影響降低,并在最大程度上保證正常用戶的訪問。我們將對受攻擊應(yīng)對策略分成幾個部分討論,他們分別是:傀儡主機(jī)檢測、速率限制、攻擊過濾和重新配置。
在DDoS發(fā)生時,檢測和分析有助于降低DDoS攻擊的影響。DDoS“傀儡主機(jī)”的偵測涉及到多項追蹤技術(shù)。因此,加強(qiáng)對于客戶端有效性和安全性的驗證,對于防范DDoS攻擊具有很重要的意義。
攻擊過濾大多是通過IDS來實現(xiàn)的,當(dāng)IDS檢測到符合特征庫中的特征的代碼后,會拒絕接受來自該地址的任何請求。部署攻擊檢測有一定的風(fēng)險,如果設(shè)置的識別級別太低的話則沒有效果,設(shè)置的級別太高則容易將正常的訪問誤判為DDoS攻擊。因此部署攻擊過濾的時候,需要相當(dāng)謹(jǐn)慎。
重新配置是指當(dāng)DDoS發(fā)生時,臨時改變網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),增加被攻擊服務(wù)器的資源,或者將被攻擊主機(jī)隔離,并以此來維持網(wǎng)絡(luò)服務(wù)的正常運(yùn)行。
通過對DDoS攻擊及其防御進(jìn)行分類整理,有助于對DDoS有一個全面的系統(tǒng)的了解。同時我們了解到DDoS攻擊的防御,與其說是一項工作,不如說是一項系統(tǒng)工程。DDoS攻擊從組織到實施的過程就是一個完整的系統(tǒng)。因此要想在Internet上面杜絕,或者說很大程度上的抑制DDoS除了技術(shù)方法之外,還需要各個單位的合作。特別是運(yùn)營商,如果能提供核心路由級別的過濾和識別,將使得DDoS攻擊難以組織和實現(xiàn)。
[1]J. Leiwo, P. Nikander, and T. Aura. Towards network denial of service resistant protocols[C].The 15th International Information Security Conference, 2000,8
[2]C. Meadows. A formal framework and evaluation method for network denial of service[C].The 12th IEEE Computer Security Foundations Workshop, 1999,6
[3]C. Schuba, I. Krsul, M. Kuhn, G. Spafford, A.Sundaram, and D. Zamboni. Analysis of a denial of service attack on TCP[C].the 1997 IEEE Symposium on Security and Privacy, 1997,5
[4]D. J. Bernstein. Syn cookies[EB/OL].http://cr.yp.to/syncookies.html
[5]J. Li, J. Mirkovic, M. Wang, P. Reiher, and L. Zhang SAVE: Source Address Validity Enforcement Protocol[J].Infocom 2002,6
Abstract: DDoS attack has been a serious threat against global internet security. As the DDoS Attack method’s development, it has been much difficult to deal with it. When the attackers are performing the DDoS attack, they get administrator authority of the machines, being performed by scanning the remote machines’ exploits, and install some trojan and viruses on it which are in order to control the machines as DDoS agents. In this paper we will classify the DDoS attack, and try to find out a series of mechanism which can make the internet security people be able to hold the DDoS attack.
Key words: distributed denial of service attack; agent
The taxonomy of DDoS attack and DDoS defense policies
Wang Hao, Li Panrong
Wuxi broadcast and television university, Wuxi, 214011, China
2010-11-24
王浩,碩士。李盤榮,碩士,副教授,主任。