如何預(yù)防區(qū)塊鏈中的日蝕攻擊和DDos攻擊
1. 日蝕攻擊
日蝕攻擊( Eclipse Attack )是面向?qū)Φ龋?P2P )網(wǎng)絡(luò)的一種攻擊類型,攻擊者通過(guò)攻擊手段使得受害者不能從網(wǎng)絡(luò)中的其它部分接收正確的信息,而只能接收由攻擊者操縱的信息,從而控制特定節(jié)點(diǎn)對(duì)信息的訪問(wèn)。
看到這段概念不懂?別慌,待大白細(xì)細(xì)說(shuō)來(lái)。
在比特幣和以太坊這種對(duì)等網(wǎng)絡(luò)中,若某年某月某日,A 向 B 轉(zhuǎn)了 10 個(gè)幣,網(wǎng)絡(luò)中的其他節(jié)點(diǎn)都會(huì)共同記賬,實(shí)現(xiàn)多方維護(hù)這個(gè)“分布式的記賬本”。在這樣的對(duì)等網(wǎng)絡(luò)中,網(wǎng)絡(luò)中的節(jié)點(diǎn)都是“對(duì)等的”,也就是說(shuō)它們沒(méi)有一個(gè)中心節(jié)點(diǎn)去聯(lián)系它們,此時(shí)節(jié)點(diǎn)之間的通信依賴于相鄰節(jié)點(diǎn)間的彼此通信。
本來(lái)節(jié)點(diǎn)之間通信甚好,可是突然有一天攻擊者小黑瞄準(zhǔn)了“大白”節(jié)點(diǎn),通過(guò)一些攻擊手段使得大白不能接收到相鄰節(jié)點(diǎn)的信息了,也發(fā)送不出去信息了。
于是,大白就想著重新啟動(dòng)節(jié)點(diǎn),這就是有點(diǎn)像手機(jī)死機(jī)了,就重啟一樣。重新啟動(dòng)節(jié)點(diǎn)的時(shí)候,大白節(jié)點(diǎn)會(huì)在那張存著自己待連接的節(jié)點(diǎn)的表里面去找節(jié)點(diǎn)來(lái)連接,本來(lái)這張表存的是一些以前連過(guò)的或其他可信任的節(jié)點(diǎn),然而不幸的是這張表被攻擊者小黑給篡改了,此時(shí)這張表里面就存著大量的攻擊者的惡意節(jié)點(diǎn)。
大白高高興興地重新啟動(dòng)節(jié)點(diǎn)成功,然而卻連上了被攻擊者控制的惡意節(jié)點(diǎn),從而攻擊者可以通過(guò)操控惡意節(jié)點(diǎn)來(lái)控制大白節(jié)點(diǎn)對(duì)信息的訪問(wèn)。
到最后,大白只能和惡意節(jié)點(diǎn)通信,至于得到的信息是好是壞,那得看攻擊者心情了。
2. DDoS攻擊
DDoS(Distributed Denial of Service),是分布式拒絕服務(wù)攻擊的簡(jiǎn)稱,指攻擊者通過(guò)控制不同位置的多臺(tái)機(jī)器,并利用這些機(jī)器對(duì)受害者實(shí)施攻擊。
要想進(jìn)行 DDoS 攻擊,大概會(huì)進(jìn)行三個(gè)步驟:
1、首先,作為黑客的小黑需要了解攻擊目標(biāo),俗話說(shuō),知己知彼,才能百攻百勝。假設(shè)攻擊目標(biāo)是個(gè)網(wǎng)站,小黑需要先確定有多少主機(jī)連接這個(gè)網(wǎng)站的站點(diǎn),以及這個(gè)站點(diǎn)的配置信息等。
2、然后,小黑會(huì)找到一些傀儡機(jī),在傀儡機(jī)上安裝相應(yīng)的攻擊程序,而這個(gè)攻擊程序是小黑可以在主控機(jī)上控制的。這樣小黑就可以通過(guò)主控機(jī)和傀儡機(jī)去攻擊目標(biāo)網(wǎng)站。
3、最后,就是實(shí)施攻擊,小黑通過(guò)主控機(jī)發(fā)起攻擊“命令”,這時(shí)被控制的傀儡機(jī)就會(huì)不停地向目標(biāo)發(fā)送攻擊包(可能就是一些讓這個(gè)網(wǎng)站進(jìn)行服務(wù)的請(qǐng)求),也就是說(shuō)小黑間接地讓這個(gè)網(wǎng)站不停地處理某個(gè)事情,這樣就會(huì)大量占用網(wǎng)站的資源,從而導(dǎo)致別的用戶無(wú)法利用這個(gè)網(wǎng)站的資源。
在區(qū)塊鏈中,DDoS 攻擊的主要目的是大量占用網(wǎng)絡(luò)中的節(jié)點(diǎn)資源,使得這些節(jié)點(diǎn)無(wú)法提供正常的服務(wù),如果受害的節(jié)點(diǎn)過(guò)多,很可能會(huì)影響整個(gè)區(qū)塊鏈網(wǎng)絡(luò)的運(yùn)行。
攻擊者可以向網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送大量的虛假信息,進(jìn)而讓這些虛假信息都訪問(wèn)受害者節(jié)點(diǎn),造成受害者節(jié)點(diǎn)壓力過(guò)大。比如,一些虛假的索引信息,會(huì)影響到同步區(qū)塊的速度等。
3. 小結(jié)
日蝕攻擊就是攻擊者通過(guò)攻擊手段使得受害者連接的節(jié)點(diǎn)被攻擊者所控制,進(jìn)而控制了受害者節(jié)點(diǎn)的通信; DDoS攻擊是通過(guò)攻擊手段占用了受害者的大量資源,使得受害者不能提供正常服務(wù)。
雖然區(qū)塊鏈中攻擊重重,但是仍然有許多應(yīng)對(duì)這些攻擊的防御手段。所以,小伙伴們別慌,我們要相信并共同建設(shè)區(qū)塊鏈系統(tǒng)的免疫力!