您的位置:首頁 > 區塊鏈 >

        公鏈都可能面臨異形攻擊 導致節點被攻擊離線

        2019-04-19 08:49:31 來源: 慢霧安全團隊

        當我們談論區塊鏈時,總是離不開這些技術:分布式存儲、P2P 網絡和共識機制,本次我們要談的問題就是出現在 P2P 對等網絡協議上。異形攻擊實

        當我們談論區塊鏈時,總是離不開這些技術:分布式存儲、P2P 網絡和共識機制,本次我們要談的問題就是出現在 P2P 對等網絡協議上。

        異形攻擊實際上是一個所有公鏈都可能面臨的問題,我們用以太坊為例子說明。以太坊的 P2P 網絡主要采用了 Kademlia (簡稱 Kad ) 算法實現,Kad 是一種分布式哈希表( DHT )技術,使用該技術,可以實現在分布式環境下快速而又準確地路由、定位數據的問題。

        什么是異形攻擊?

        首先,我們先定義一個同類鏈的概念,是指使用了和其它區塊鏈相同或兼容協議的區塊鏈系統。

        異形攻擊又稱地址池污染,是指誘使同類鏈的節點互相侵入和污染的一種攻擊手法,漏洞的主要原因是同類鏈系統在通信協議上沒有對非同類節點做識別。

        以太坊異形攻擊是指,以太坊同類鏈(具體的說是使用以太坊 P2P discv4 節點發現協議的公鏈,包括以太坊、以太經典)由于使用了兼容的握手協議,無法區分節點是否屬于同個鏈,導致地址池互相污染,節點通信性能下降,最終造成節點阻塞的一種攻擊方式。

        1. 正常的節點發現過程

        以太坊同類鏈節點間通過 4 個 UDP 通信協議來完成節點發現,消息結構如下:

        [1] ping: 探測一個節點是否在線

        [2] pong: 響應 Ping 命令

        [3] findnode: 查找與 Target 節點異或距離最近的其他節點

        [4] neighbors: 響應 FindNode 命令,會返回一或多個節點

        2. 攻擊過程

        準備工作:收集以太坊節點地址

        我們找到了社區制作的一個地址庫: https://github.com/smartheye/EthStaticNodesTool/blob/master/MainNet/static-nodes.txt

        第一步:發起惡意握手。

        攻擊者 A 模擬整個握手過程,主動發起 ping 操作,并利用協議的第 4 步 neighbors,將返回的鄰居表修改成我們收集到的以太坊節點地址,推送給受害節點 B(B 是一個以太坊同類鏈節點)。由于單次通信只能推送 16 個地址,我們需要多次推送以達到攻擊效果。

        第二步:污染地址池。

        B 收到大量 A 返回的鄰居表,嘗試跟這些節點握手,并將這些節點加入了自己的地址池(俗稱 K 桶)。

        第三步:污染自動擴散。

        讓人意外的是,不同鏈的節點居然互相握手成功了,更為可怕的是,它們把各自地址池里已知的節點推送給了對方,導致更多的節點互相污染,最終擴散致整個網絡。

        漏洞危害

        受異形攻擊的同類鏈節點無法找到真正可用的節點,無法建立 TCP 數據同步通道,導致節點被攻擊離線。

        對于礦池或者出塊節點,異形攻擊可能導致廣播延遲甚至失敗,造成收益損失。

        異形攻擊可以使所有以太坊同類鏈地址池相互污染,導致節點通信效率全面下降,對整個區塊鏈系統造成長久的傷害。

        影響范圍

        我們對某知名公鏈進行安全審計時發現,該公鏈的節點在遭受異形攻擊后,節點性能嚴重下降,外部節點需要很長時間才能與受害節點建立連接。該公鏈團隊隨后修復了該問題。

        理論上所有使用了以太坊 discv4 協議的區塊鏈都可能受此漏洞影響,在發起測試后的一段時間,我們觀測到 EtherNode 的監測節點也已經被污染了,污染的擴散速度似乎比想象中的要快。

        也許,以太坊需要來一次清洗。

        后記

        1、 此漏洞對以太坊是否有影響? 以太坊的節點數量遠大于其它同類鏈節點,并且節點間已經建立了穩定的連接,影響不明顯。但對于其它的同類鏈節點,卻會受到來自以太坊節點的強勢侵入,導致通信阻塞。

        2、 很多朋友關心除了以太坊之外,其它的公鏈是否有此問題,比如比特幣和它的山寨幣,比如使用了 libp2p 協議的公鏈,這些問題我們將在后續文章中披露!

        關鍵詞: 公鏈 異形攻擊 節點

        精選 導讀

        募資55億港元萬物云啟動招股 預計9月29日登陸港交所主板

        萬科9月19日早間公告,萬物云當日啟動招股,預計發行價介乎每股47 1港元至52 7港元,預計9月29日登陸港交所主板。按發行1 167億股計算,萬

        發布時間: 2022-09-20 10:39
        管理   2022-09-20

        公募基金二季度持股情況曝光 隱形重倉股多為高端制造業

        隨著半年報披露收官,公募基金二季度持股情況曝光。截至今年二季度末,公募基金全市場基金總數為9794只,資產凈值為269454 75億元,同比上

        發布時間: 2022-09-02 10:45
        資訊   2022-09-02

        又有上市公司宣布變賣房產 上市公司粉飾財報動作不斷

        再有上市公司宣布變賣房產。四川長虹25日稱,擬以1 66億元的轉讓底價掛牌出售31套房產。今年以來,A股公司出售房產不斷。根據記者不完全統

        發布時間: 2022-08-26 09:44
        資訊   2022-08-26

        16天12連板大港股份回復深交所關注函 股份繼續沖高

        回復交易所關注函后,大港股份繼續沖高。8月11日大港股份高開,隨后震蕩走高,接近收盤時觸及漲停,報20 2元 股。值得一提的是,在7月21日

        發布時間: 2022-08-12 09:56
        資訊   2022-08-12

        萬家基金再添第二大股東 中泰證券擬受讓11%基金股權

        7月13日,中泰證券發布公告,擬受讓齊河眾鑫投資有限公司(以下簡稱齊河眾鑫)所持有的萬家基金11%的股權,交易雙方共同確定本次交易的標的資

        發布時間: 2022-07-14 09:39
        管理   2022-07-14

        央行連續7日每天30億元逆回購 對債市影響如何?

        央行12日再次開展了30億元逆回購操作,中標利率2 10%。這已是央行連續7日每天僅進行30億元的逆回購縮量投放,創下去年1月以來的最低操作規

        發布時間: 2022-07-13 09:38
        資訊   2022-07-13

        美元指數創近20年新高 黃金期貨創出逾9個月新低

        由于對美聯儲激進加息的擔憂,美元指數11日大漲近1%創出近20年新高。受此影響,歐美股市、大宗商品均走弱,而黃金期貨創出逾9個月新低。美

        發布時間: 2022-07-13 09:36
        資訊   2022-07-13

        美股三大股指全線下跌 納斯達克跌幅創下記錄以來最大跌幅

        今年上半年,美股持續回落。數據顯示,道瓊斯指數上半年下跌15 3%,納斯達克綜合指數下跌29 5%,標普500指數下跌20 6%。其中,納斯達克連續

        發布時間: 2022-07-04 09:51
        推薦   2022-07-04

        融資客熱情回升 兩市融資余額月內增加超344億元

        近期A股走強,滬指6月以來上漲4%,融資客熱情明顯回升。數據顯示,截至6月16日,兩市融資余額1 479萬億元,月內增加344 67億元,最近一個半

        發布時間: 2022-06-20 09:41
        資訊   2022-06-20

        4個交易日凈買入超百億元 北向資金持續流入A股市場

        北向資金凈流入態勢延續。繼6月15日凈買入133 59億元后,北向資金6月16日凈買入44 52億元。自5月27日至今,除6月13日以外,北向資金累計凈

        發布時間: 2022-06-17 09:37
        推薦   2022-06-17