解析利用BitTorrent發(fā)起DDoS放大攻擊的原理
據(jù)國(guó)外媒體稱,利用BitTorrent發(fā)動(dòng)的新型分布式反射拒絕服務(wù)攻擊(DRDoS)可將流量平均放大50倍。如果使用BTSync(BitTorrentSync),流量可放大至120倍。...
BitTorrent DDoS放大攻擊
據(jù)國(guó)外媒體稱,利用BitTorrent發(fā)動(dòng)的新型分布式反射拒絕服務(wù)攻擊(DRDoS)可將流量平均放大50倍。如果使用BTSync(BitTorrent Sync),流量可放大至120倍。
BitTorrent(BT)反射式放大DDoS攻擊
分布式拒絕服務(wù)(DDoS)攻擊是網(wǎng)絡(luò)犯罪的最常見(jiàn)手段,因其攻擊成本低、攻擊工具容易獲取,成為互聯(lián)網(wǎng)最為常見(jiàn)的攻擊形式。
而大流量攻擊中較為常見(jiàn)的是反射式放大攻擊,在前端時(shí)間,綠盟科技的技術(shù)專家介紹了 端口映射的放大攻擊形式,今天將介紹攻擊者是如何利用BitTorrent協(xié)議族中的協(xié)議反射和放大對(duì)端設(shè)備的流量。這里的協(xié)議主要是指微傳輸協(xié)議(uTP)、分布式哈希表(DHT)、消息流加密(MSE)和BitTorrent Sync(BTSync)。據(jù)稱在實(shí)驗(yàn)室測(cè)試環(huán)境中,研究人員可將流量平均放大50倍,如果利用BTSync,可放大至120倍。
- 用戶先到web服務(wù)器下載torrent種子文件(HTTP或HTTPS協(xié)議)。
- Bt客戶端(peer)打開(kāi)下載的torrent文件,解析出tracker等信息。
- Bt客戶端(peer)到tracker服務(wù)器請(qǐng)求種子信息(可以從誰(shuí)那里下載所需要的文件,給出一份下載地址列表);同時(shí)把自己的IP、端口等信息上傳到tracker服務(wù)器中(方便其它的peer找到你,從你這里下載他需要的文件片段,此時(shí)你這個(gè)peer充當(dāng)?shù)氖欠?wù)器的角色);
- Bt客戶端(peer)獲取到種子信息之后,開(kāi)始向其它的peer請(qǐng)求對(duì)應(yīng)的文件信息,如下圖所示:
結(jié)合上面的圖(該圖片引自網(wǎng)絡(luò)),舉個(gè)例子說(shuō)明這個(gè)過(guò)程:
- 我的bt客戶端,向tracker服務(wù)器發(fā)送請(qǐng)求,想要獲取piece 1的內(nèi)容;
- Tracker服務(wù)器告訴我的bt客戶端:peer1和peer4有你想要的文件片段,你去他那里下載吧;
- 你的bt客戶端就會(huì)主動(dòng)連接這兩個(gè)peer去獲取你想要的文件。
- 完成之后,你就保存了0-4所有的片段。
再舉個(gè)例子:
- 假設(shè)在你獲取完0-4所有片段之后,此時(shí)peer3想要請(qǐng)求片段3,他會(huì)首先向tracker服務(wù)器請(qǐng)求:誰(shuí)有piece 3,告訴我;
- Tracker服務(wù)器收到請(qǐng)求之后,告訴peer3:peer1、peer2、peer_nsfocus(假設(shè)你的peer就叫peer_nsfocus)有piece3;
- Peer3收到之后,會(huì)向這三個(gè)peer請(qǐng)求piece3;
注: 如果你再下載完成之后,立刻關(guān)閉了你的bt客戶端,那么peer3就只能去peer1和peer2去請(qǐng)求piece3了。如果大家都在下載完成之后就立刻關(guān)閉自己的客戶端,那么種子數(shù)量就會(huì)非常少,整個(gè)下載速度就會(huì)很慢。所以BT社區(qū)建議的使用方式是,在自己下載完成之后,開(kāi)著自己的bt客戶端,方便其它peer從你這里獲取文件,加快下載速度。
P2P文件傳輸過(guò)程
兩個(gè)peer之間傳輸文件的過(guò)程中有兩種方式:基于TCP和基于UTP的。
基于TCP傳輸
- 兩個(gè)peer之間先建立三次握手連接;
- 發(fā)送bittorrent的handshake消息;
- 之后傳輸數(shù)據(jù)。
基于UTP傳輸
UTP協(xié)議:Micro Transport Protocol 或者µTP協(xié)議是一個(gè)基于UDP協(xié)議的開(kāi)放式BT點(diǎn)對(duì)點(diǎn)文件共享協(xié)議。它的目的是減輕延遲,并且解決傳統(tǒng)的基于TCP的BT協(xié)議所遇到的擁塞控制問(wèn)題,提供可靠的有序的傳送。
正常情況下,整個(gè)交互過(guò)程是這樣的:
- 客戶端(此處也就是YOU)發(fā)送一個(gè)ST_SYN請(qǐng)求給服務(wù)器(此處也就是PEER1);
- 服務(wù)端收到之后回復(fù)一個(gè)ST_STATE,表示連接已經(jīng)建立好了;
- 之后就是兩端的握手消息(88 Byte);
- 之后就是交互數(shù)據(jù)。
但由于從peer1返回的包(上面的虛線過(guò)程)并沒(méi)有被校驗(yàn),就成為被攻擊者利用的環(huán)節(jié)。
反射放大攻擊分析
反射原理如下圖:
- 由于UTP只需要兩次握手就可以建立連接,使得攻擊者可以很容易偽造源IP完成連接的建立。
- **由于**** peer1 ****并沒(méi)有檢查第**** 2 ****個(gè)包(**** ST_STATE ****)是否被**** attacke ****收到,而是直接相信該源**** IP */*是真實(shí)的,** 所以當(dāng)attacker再次偽造源IP發(fā)送handshake包的時(shí)候,peer1會(huì)立刻回應(yīng)handshake包,而且超時(shí)之后還會(huì)重傳,增大了放大倍數(shù)。
由于重現(xiàn)攻擊過(guò)程,需要更新時(shí)間戳等信息,比較復(fù)雜,同時(shí)也考慮到安全性問(wèn)題,這里就不做展開(kāi)討論了。
業(yè)界評(píng)價(jià)BT放大式攻擊
BitTorrent的發(fā)言人表示,公司已經(jīng)”采取措施增強(qiáng)了這些協(xié)議以減輕該研究論文中列出的漏洞所帶來(lái)的影響。”然而,TorrentFreak網(wǎng)站表示,”uTorrent仍然不安全。”Adamsky表明,包括uTorrent在內(nèi)的最流行的BitTorrent客戶端最易受到攻擊。
BitTorrent承認(rèn),鑒于基于UDP的協(xié)議的運(yùn)行方式,這些攻擊將可能一直存在,并表明將很快完全防護(hù)這些漏洞,但具體方法尚未確定。Tenable Network Security的戰(zhàn)略分析師表示,利用BitTorrent反射DDoS攻擊的做法并非第一次了,但Adamsky研究的獨(dú)特之處在于揭示了研究人員在攻擊測(cè)試過(guò)程中所實(shí)現(xiàn)的流量放大倍數(shù)。
我們向Cris Thomas了解此類攻擊在現(xiàn)實(shí)世界到底會(huì)造成多大的影響。他表示,”目前并未大規(guī)模發(fā)現(xiàn)此類攻擊,因此不必太過(guò)擔(dān)憂。然而,如果攻擊者也看到了這篇論文,可能很快就會(huì)執(zhí)行攻擊。”Malwarebytes的高級(jí)情報(bào)分析師也表示了擔(dān)憂,預(yù)言那些腳本小子必將利用論文中描述的技術(shù)在某一時(shí)刻攻擊網(wǎng)絡(luò),并指出當(dāng)該論文的研究付諸實(shí)踐時(shí),DDoS攻擊將大量出現(xiàn)。”有效防御這些攻擊極具挑戰(zhàn)性,”他們告訴SCMagazineUK。反射技術(shù)不僅放大了拒絕服務(wù),同時(shí)也有效屏蔽了攻擊者的IP地址,使得攻擊源難以定位。雖然BitTorrent流量檢測(cè)和丟棄方案有助于緩解DRDoS攻擊,但會(huì)產(chǎn)生很大負(fù)載,因此并非理想方案。
在接受SCMagazineUK采訪時(shí),OPSWAT軟件工程經(jīng)理煞費(fèi)苦心地指出,我們不應(yīng)該認(rèn)為分布式機(jī)制的本質(zhì)是壞的或在安全性方面就一定比非分布式機(jī)制差。他說(shuō),”我討厭制造’反P2P’的恐慌情緒。雖然分布式架構(gòu)可能會(huì)存在特定的安全問(wèn)題,但非分布式架構(gòu)也同樣如此。”Arbor Networks技術(shù)專家也表示,BitTorrent只是這類攻擊可利用的協(xié)議之一,DNS、NTP、SSDP、CHARGEN、SNMP以及Portmap都可用于發(fā)動(dòng)此類攻擊。但利用BitTorrent的優(yōu)勢(shì)在于,放大的反射型攻擊流量的源端口是動(dòng)態(tài)的。
有人建議,BitTorrent可考慮改用三次握手協(xié)議如TCP,代替當(dāng)前使用的二次握手協(xié)議。這可能會(huì)導(dǎo)致性能降低,但三次握手協(xié)議可檢測(cè)到偽造的源IP地址,因?yàn)檫@些地址無(wú)法回復(fù)第一條握手消息。他說(shuō),”這會(huì)降低攻擊過(guò)程中的流量放大倍數(shù)。”眾所周知,這正是BitTorrent目前在漏洞防護(hù)過(guò)程中通過(guò)增強(qiáng)協(xié)議要實(shí)現(xiàn)的目標(biāo)。
BT放大式攻擊防護(hù)
如同上面所說(shuō),攻擊者基于BT的放射式放大攻擊不同于傳統(tǒng)的反射攻擊,因?yàn)樗亩丝谑遣还潭ǖ模苑舛丝诘牟呗圆豢尚校荒芸孔R(shí)別應(yīng)用層的特征來(lái)過(guò)濾攻擊。防護(hù)方式建議從兩個(gè)方面進(jìn)行:
- 對(duì)于bittorrent客戶端,可以考慮改用原來(lái)的tcp方式,杜絕虛假源導(dǎo)致的放大攻擊。
- 防護(hù)設(shè)備對(duì)utp報(bào)文的payload做識(shí)別,utp前兩個(gè)字節(jié)是有特征的,第1個(gè)字節(jié)代表版本號(hào)和類型,對(duì)于放大的報(bào)文,該字段為0x01;第2個(gè)字節(jié) 代表utp的擴(kuò)展字段,有3種取值:0x00、0x01、0x02,一般情況下該字段為0x00. 可以根據(jù)這些特征做限速等策略。
附錄:文中術(shù)語(yǔ)
- Torrent文件:保存了相應(yīng)的種子信息、tracker服務(wù)器信息等;
- Web服務(wù)器:用來(lái)存放 .torrent文件,共用戶去下載的。
- Peer:代表每個(gè)bt客戶端(實(shí)際上每個(gè)peer既是服務(wù)器又是客戶端)。
- Tracker服務(wù)器:記錄每個(gè)peer的信息(IP、端口、已經(jīng)下載的對(duì)應(yīng)的段等信息),用于幫助每個(gè)peer發(fā)現(xiàn)彼此;
- Piece: 一個(gè)文件通常會(huì)被分割成很多片段,這樣下載的時(shí)候可以同時(shí)向多個(gè)服務(wù)端請(qǐng)求數(shù)據(jù),加快下載速度。
- 防ddos攻擊服務(wù)器的方法
- 公安部打擊整治網(wǎng)絡(luò)謠言 查處違法人員197人
- 時(shí)尚達(dá)人變身網(wǎng)絡(luò)紅人 開(kāi)設(shè)網(wǎng)店收入堪比明星
- 上半年人均網(wǎng)購(gòu)378元 兩成被調(diào)查者年四成花費(fèi)在網(wǎng)絡(luò)
- 打擊網(wǎng)絡(luò)謠言 中國(guó)再出重拳
- 網(wǎng)絡(luò)販賣槍支零部件呈產(chǎn)業(yè)化趨勢(shì) 交易頻繁涉案金額大
- 智庫(kù)是國(guó)家軟實(shí)力體現(xiàn) 網(wǎng)絡(luò)安全智庫(kù)要有獨(dú)立性
- 河北網(wǎng)絡(luò)販槍案涉30省份 部件多從臺(tái)灣美國(guó)發(fā)貨