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