綠盟科技 何坤
在網(wǎng)絡(luò)世界里,DDoS是強(qiáng)盜的代名詞,它是攻擊效果最為“明顯”的攻擊形式,不同于其它攻擊,DDoS攻擊的影響范圍廣、影響程度大。
DDoS攻擊已不再是黑客技術(shù)的炫耀,它更多出于經(jīng)濟(jì)利益、政治因素。
為了方便介紹,暫且將DDoS大致分為三個(gè)階段,每個(gè)階段都有其相應(yīng)的特點(diǎn),在這里先簡(jiǎn)要介紹一下各個(gè)階段的特點(diǎn),然后進(jìn)行分析。
早期的拒絕服務(wù)攻擊以使用DoS工具的居多?,F(xiàn)在只要花點(diǎn)時(shí)間在網(wǎng)上搜一下,仍然能搜羅出大量的DoS工具,比如阿拉丁攻擊器隨處可見(jiàn)。工具的泛濫導(dǎo)致了拒絕服務(wù)攻擊的門檻降低,只要你想,你就可以隨便down兩個(gè)DoS工具隨意發(fā)起攻擊。
這些工具有一個(gè)特點(diǎn):源IP虛假。也就是說(shuō),DoS工具只管向服務(wù)器狂發(fā)包,其余什么都不管。由于源IP虛假,受害者也就無(wú)法溯源,反過(guò)來(lái)讓攻擊者肆無(wú)忌憚。
還有一些DoS單機(jī)工具,可以構(gòu)造一些特殊的畸形報(bào)文,讓服務(wù)器一觸即掛,但現(xiàn)在各個(gè)地方服務(wù)器補(bǔ)丁的管理已經(jīng)非常到位,網(wǎng)上的這種工具已經(jīng)沒(méi)有效果。
上面提到,早期的DoS工具的特點(diǎn)是源IP虛假。而早期的抗拒絕服務(wù)設(shè)備(也叫清洗設(shè)備)就利用了這一點(diǎn),只要清洗設(shè)備能夠驗(yàn)證這個(gè)源IP是否真實(shí)存在,也就可以很輕松的防護(hù)住假IP發(fā)起的攻擊。
也是在這時(shí)候,一些新名詞出現(xiàn)了:肉雞、傀儡、僵尸。利用木馬技術(shù),黑客可以控制住活躍在網(wǎng)絡(luò)中的大量主機(jī),也就是肉雞,然后可以利用他們做很多事情,發(fā)起DDoS攻擊就是其中之一。
使用肉雞發(fā)起的攻擊主要特點(diǎn)是什么呢?源IP是真實(shí)的。
現(xiàn)在已經(jīng)形成單機(jī)工具攻擊、肉雞攻擊、復(fù)雜攻擊并存的局面。
先談復(fù)雜攻擊,攻擊之所以變得復(fù)雜,不是攻擊者自己想要復(fù)雜,他也是受整個(gè)大環(huán)境的影響。因?yàn)槭芎φ咭捕际潜粍?dòng)的,市面上已經(jīng)有很多抗拒絕服務(wù)設(shè)備,經(jīng)常受到DDoS侵?jǐn)_的受害者已開(kāi)始使用這類設(shè)備,與攻擊者對(duì)抗。當(dāng)攻擊者發(fā)現(xiàn)過(guò)去的攻擊方式?jīng)]有效果,必然會(huì)尋求另外一種有效的攻擊手段。
筆者在近一年來(lái)監(jiān)測(cè)到很多起非常有意思、非常有效、非常致命的DDoS攻擊,在這里,我們把它叫做“復(fù)雜攻擊”。
比如,我們?nèi)ツ臧l(fā)現(xiàn)的一種DDoS攻擊就很“特別”:源IP都是真實(shí)的,這些源向服務(wù)器發(fā)起的訪問(wèn)也是真實(shí)的,只是這些真實(shí)流量“去錯(cuò)”了地方。打個(gè)比方,這些源IP本來(lái)是要去訪問(wèn)www.a.com的,但都“莫名其妙”的來(lái)到了www.b.com,造成的后果就是www.b.com的服務(wù)器負(fù)載增大,甚至無(wú)法訪問(wèn)。經(jīng)過(guò)這次事件的處理,筆者與同事分析了這種“攻擊”的特點(diǎn)。
(1)這是攻擊嗎?
站在受害者www.b.com的角度,這屬于攻擊。因?yàn)閎只有一臺(tái)服務(wù)器,1秒鐘約100個(gè)本應(yīng)到達(dá)a的流量就讓它不堪重負(fù),已經(jīng)產(chǎn)生了拒絕服務(wù)的效果,所以在b看來(lái),這是攻擊;
那么a是攻擊者嗎?從技術(shù)角度來(lái)說(shuō),不能斷定a就是攻擊者,完全可能有個(gè)第三者c通過(guò)篡改DNS,讓a的流量去向b,又或者DNS或其他的網(wǎng)絡(luò)環(huán)節(jié)出了故障。從我們幾次與這種攻擊交鋒的經(jīng)驗(yàn)來(lái)看,這種“故障”的概率未免高了一點(diǎn)。
(2)不用抓肉雞,人人皆“肉雞”
過(guò)去發(fā)起CC攻擊需要擁有大量肉雞,而再看這種攻擊,攻擊者不需要自己抓肉雞了,已經(jīng)有另一種途徑發(fā)起類似肉雞發(fā)起的CC攻擊,也許哪一天,你在訪問(wèn)某知名服務(wù)的時(shí)候,就意外的成為了“肉雞”。
(3)防范難度增大
這種看似攻擊又不太像攻擊,卻能達(dá)到很強(qiáng)的攻擊效果的行為,讓很多網(wǎng)絡(luò)維護(hù)人員防不勝防,即使防住了,想要抓到真正的幕后仍然很難。
這里只介紹筆者遇到的其中一種“復(fù)雜攻擊”。
DDoS安全防護(hù)發(fā)展了這么多年,大多現(xiàn)在的清洗設(shè)備都已能夠直接防御早期的DDoS攻擊,也就是虛假源IP攻擊,而且都能清洗得很干凈。
現(xiàn)在攻擊者再用此類攻擊的話,可能會(huì)先用小流量,如果受害者的攻擊者服務(wù)器性能弱、帶寬小,又沒(méi)有任何防措施,那很快就能得手,也不用費(fèi)太多精力。
當(dāng)攻擊者發(fā)現(xiàn)小流量沒(méi)有效果,他會(huì)意識(shí)到受害者可能有防護(hù)設(shè)備(或者是防火墻、或者是專業(yè)抗DDoS設(shè)備),將提升攻擊流量(前提是他有帶寬資源)。很多人知道,防火墻從防護(hù)機(jī)制上決定了它是不具備抗DDoS打擊能力的,小流量還可,流量一大,受害者的服務(wù)器癱瘓之前,防火墻可能已經(jīng)垮了。這時(shí)候,受害者只能要么提高服務(wù)器能力、帶寬、改IP;要么使用更大性能的專業(yè)抗DDoS設(shè)備,因?yàn)橛腥艘呀?jīng)盯上你了,你別無(wú)他法。
前面提到一些攻擊者開(kāi)始以提升攻擊流量來(lái)達(dá)到拒絕服務(wù)的效果,這是需要物質(zhì)基礎(chǔ)的,并不是很多人都有這個(gè)條件。然而全球范圍內(nèi)的大量肉雞群,正好可以滿足。一臺(tái)肉雞帶寬有限,但上千、上萬(wàn)臺(tái)肉雞的力量就不可忽視,再加上肉雞IP是真實(shí)的特點(diǎn),防護(hù)算法差的設(shè)備就難以防范此類DDoS攻擊。當(dāng)肉雞的攻擊的流量到達(dá)清洗設(shè)備,清洗設(shè)備對(duì)肉雞進(jìn)行探測(cè),將發(fā)現(xiàn)這些源IP是真實(shí)的,不是虛假的,此時(shí)清洗設(shè)備的第一道關(guān)卡被突破。
優(yōu)秀的清洗設(shè)備,在面對(duì)真實(shí)IP的攻擊時(shí),其不光能夠辨別源IP的真假性,還能從應(yīng)用層行為上判斷這些源IP是否真的是要訪問(wèn)服務(wù)器資源,也就是所謂的CC防護(hù)。CC防護(hù)算法主要有URL防護(hù)、HTTP Cookie防護(hù)、圖片驗(yàn)證等等,防護(hù)算法越多,在對(duì)抗時(shí)能夠采取的手段也就越多,攻擊者就越難以突破。
為了提升攻擊效果,攻擊者不斷地創(chuàng)造新的攻擊手段,攻擊流量大小向兩級(jí)分化,要么攻擊流量很?。◣渍琢髁?,以小博大),要么攻擊流量巨大(上G流量,以大欺?。?,發(fā)出的攻擊報(bào)文經(jīng)過(guò)精心構(gòu)造,以期讓受害者毫無(wú)還手之力。
上面也提了一種特殊的、精細(xì)化的攻擊,下面再向大家介紹一些目前經(jīng)常遇到的精細(xì)化攻擊及防護(hù)。
(1)精心挑選的動(dòng)態(tài)頁(yè)面
動(dòng)態(tài)頁(yè)面是最耗服務(wù)器資源的,當(dāng)攻擊者發(fā)現(xiàn)目標(biāo)的網(wǎng)站中存在需要數(shù)據(jù)庫(kù)查詢的連接,比如“站內(nèi)搜索”、“投票”…它就可以使用肉雞資源,對(duì)這些頁(yè)面進(jìn)行快速查詢,這些動(dòng)作產(chǎn)生的流量不用太大,最終的結(jié)果,服務(wù)器在這類小流量的沖擊下崩潰。
這種攻擊的防護(hù)不是簡(jiǎn)單判斷一下真假就可行的,因?yàn)槿怆uIP是真的。此時(shí)清洗設(shè)備可使用CC防護(hù)算法(肉雞可以自動(dòng)識(shí)別高復(fù)雜度的圖片嗎?),還可以結(jié)合連接耗盡策略(限制服務(wù)器的連接數(shù))。
如果你沒(méi)有清洗設(shè)備,那可以去掉這個(gè)動(dòng)態(tài)頁(yè)面,也可保障服務(wù)器的正常運(yùn)行,當(dāng)然也損失了部分正常用戶。
(2)精心構(gòu)造的攻擊報(bào)文
針對(duì)不同的攻擊目標(biāo),攻擊者將攻擊報(bào)文進(jìn)行不同的偽裝,從報(bào)文任何一方面看上去都沒(méi)有破綻。
比如攻擊網(wǎng)吧,就用與網(wǎng)吧正常流量非常類似的流量進(jìn)行攻擊;攻擊網(wǎng)站,就用與網(wǎng)站正常流量非常類似的流量進(jìn)行攻擊,讓你防護(hù)設(shè)備無(wú)法正確識(shí)別。
對(duì)這種攻擊的防護(hù)對(duì)清洗設(shè)備的防護(hù)算法要求極高,清洗設(shè)備主要利用應(yīng)用協(xié)議的一些細(xì)節(jié)部分進(jìn)行防護(hù),抱歉在這里還不能與大家分享,相信大家理解。
(3)不按套路出牌
攻擊包有時(shí)隨機(jī)、有時(shí)固定、有時(shí)分片;攻擊報(bào)文長(zhǎng)度有時(shí)超長(zhǎng)、有時(shí)超短。
對(duì)于這種攻擊的出現(xiàn),筆者認(rèn)為攻擊者知道被攻擊目標(biāo)部署了清洗設(shè)備,而防護(hù)算法可能是存在缺陷的,他是在使用各種流量來(lái)進(jìn)行試探攻擊,也許你的清洗設(shè)備對(duì)這類報(bào)文就不防護(hù)了呢?
這就是考驗(yàn)清洗設(shè)備的算法完備性了,雖然流量清洗設(shè)備基本上沒(méi)有類似病毒庫(kù)的東西,但算法上必須要做到完備,什么情況都必須考慮到,否則將無(wú)法適應(yīng)當(dāng)前的DDoS形勢(shì)。
除了以上攻擊,現(xiàn)在也開(kāi)始出現(xiàn)由于軟件BUG引起的DDoS問(wèn)題,比如某著名軟件引起的DNS斷網(wǎng)事件。相信在網(wǎng)絡(luò)日益緊密的大環(huán)境下,這類由軟件BUG引起的DDoS情況將增多。
道高一尺、魔高一丈?還是魔高一尺、道高一丈?
從目前的DDoS形勢(shì)看來(lái),一眼就能看出是攻擊的情況將會(huì)越來(lái)越少,未來(lái)的DDoS攻擊將更加隱蔽,DDoS攻擊已經(jīng)不再是搞幾個(gè)工具,然后狂發(fā)SYN包、狂發(fā)ACK包的時(shí)代;更多的往應(yīng)用層攻擊(CC攻擊)發(fā)展,新的CC攻擊將層出不窮,讓你很難發(fā)現(xiàn)和識(shí)別;攻擊流量大小兩級(jí)分化,要么以小博大,要么以大欺?。磺逑丛O(shè)備防護(hù)算法的更新很重要,DDoS應(yīng)急響應(yīng)的能力也同樣重要;取證會(huì)越來(lái)越困難,想要抓住真正的攻擊發(fā)起者也更難,可以推測(cè),DDoS將進(jìn)入全面技術(shù)對(duì)抗的時(shí)代。