您的位置:首頁»數碼科技»正文

区块链中的日食攻击

日食攻擊(Eclipse attack)

1.日食攻擊是什么?

日食攻擊是通過其他節點實施的網絡層面攻擊, 這種攻擊目的是阻止最新的區塊信息進入到被攻擊的節點, 從而隔離節點。

2.日食攻擊是怎么產生的?

其攻擊手段為:囤積和霸占受害者的點對點連接時隙(slot, 類似時間間隔的意思), 將該節點保留在一個隔離的網絡中, 達到隔離節點的目的。

3.日食攻擊會影響哪些區塊鏈網絡?

目前的比特幣網絡和以太坊網絡已經被證實均受日食攻擊影響。

(1)針對比特幣網絡的日食攻擊:

攻擊者可以控制足夠數量的IP地址來壟斷所有受害節點之間的有效連接。

然后攻擊者可以征用受害者的挖掘能力, 并用它來攻擊區塊鏈的一致性算法或用于“重復支付和私自挖礦”

(2)針對以太坊的日食攻擊:

攻擊者可以壟斷受害節點所有的輸入和輸出連接, 從而將受害節點與網絡中其他正常節點隔離開來。 然后攻擊者日食攻擊可以誘騙受害者查看不正確的以太網交易細節, 誘騙賣家在交易其實還沒有完成的情況下將物品交給給攻擊者。

日食攻擊還可以攻擊以太坊合約, 方法就是讓受害節點無法看清楚區塊鏈信息, 從而延遲節點看清楚智能合約的內部計算可能用到的各個參數, 導致不正確的智能合約輸出, 因而攻擊者可以大撈一筆。

在論文中, 研究者僅用2臺主機就成功的發起了日食攻擊,

且每臺主機只有一個IP地址。 這說明以太坊更容易被日食攻擊影響。

4.為什么以太坊網絡比比特幣網絡更容易被日身攻擊?

因為以太坊網絡中的節點通過它們的加密ECDSA公鑰來標識, 值得注意的是, Geth v1.8之前的以太坊版本允許從具有相同單個IP地址的同一臺機器運行無限數量的以太坊節點, 每個節點都具有不同的ECDSA公鑰。 由于生成新的ECDSA公鑰很簡單, 只需要運行ECDSA密鑰生成算法, 我們的攻擊者可以在幾秒鐘內輕松創建數千個以太坊節點ID, 而不會耗費大量計算資源。 因此, 我們的攻擊者生成一組以太坊節點ID, 然后使用協調策略從兩臺主機(每臺主機)僅使用一個IP地址便宜地發起eclipse攻擊。

更糟糕的是, 以太坊節點以偏見的方式與對等節點建立連接(即, 一些節點ID比其他節點更容易成為對等節點), 這很容易被攻擊者預測到。 因此, 我們的攻擊者仔細選擇他的節點ID, 以便受害者更可能連接到攻擊者節點ID, 而不是合法的ID。

5.日食攻擊的成本多大

日食攻擊為網絡層面的攻擊, 攻擊者擁有一個僵尸網絡(就算不是黑客, 買點云服務也可以做到`````)就可以發起攻擊, 所以說成本不算很高(在以太坊網絡上甚至兩個主機就可以做到)

6.面對日食攻擊, 我們要怎么辦?

注意平常電腦使用, 避免被惡意控制, 等待官方及時更新最新客戶端, 以免舊客戶端有漏洞而被黑客們利用。

本文作者為U贊發燒友Keen

Next Article
喜欢就按个赞吧!!!
点击关闭提示