政策以太鏈坊聞...

以太鏈坊聞到而導致分叉事件的技術分析- ChainNews

根本原因在於處理Geth 舊版本在預編譯契約的調用時考慮異常值的處理,導致攻擊者利用該漏洞實施了複製複製,影響了值,最終導致分叉的出現。

版本4ebc4ebc2021年8月227日2027點50分左右(長度131075118),以太坊突然出現分叉。分叉的根本原因:Geth 舊版本在處理預編譯合約調用時,一些考慮特殊情況(corner case)下參數值的處理,導致引發複製(重疊副本),導致返回值異常。該漏洞(CVE) -2021-39137)已提交Geth 官方,目前尚未披露細節,但攻擊者已經利用漏洞實施了攻擊。我們認為及時的分析和披露是必要的,也希望我們的分析能夠為社區提供必要的理解和幫助。

攻擊分析

模仿我們的 在線分析工具,可以說:

以太坊成長而導致分叉事件的技術分析圖一

啟用交易執行了一個構造的STATICCALL, 攻擊者將addr 0x04 (是預編譯合約dataCopy), inOffset 為0, inSize 為32, retOffset 為7, retSize 為32。

以太坊成長而導致分叉事件的技術分析圖二

由於STATICCALL 的目標地址是預編譯合約,所以會執行圖中的RunPrecompiledContract。

以太坊成長而導致分叉事件的技術分析圖三

以太坊成長而導致分叉事件的技術分析圖四

可知圖三和圖四的代碼,可以看到預編譯合約0x04真正執行的只是簡單地把(邏輯路徑)返回。

以太坊成長而導致分叉事件的技術分析圖五

以太坊成長而導致分叉事件的技術分析圖六

圖五是STATICCALL 的執行過程,753 行是執行預編譯合約的入口,751 行的參數提示EVM 的內存中inOffset ~ inOffset + inSize 這個區域的方法,尋找args 靈感Mem[0:32]。

可知圖六以及前文對預編譯契約0x04(dataCopy)的分析,我們可以知道753 行的返回值ret 是與args 完全相同的線索,也可以參考Mem[0:32]。

  • 在1.10.7 版本Geth 中(有):762 行將ret 的Bug 的值賦給EVM 的Memory 中retOffset ~ retOffset + retOffset 區域,也就是將Mem[0:32] 的值賦給Mem[7:7+32],而因為ret 是一個頭腦我[0:32] 的手動,這個Memory.Set 修改了Mem[7:32] 的值,已經修改了ret 所指的值。所以在第771 行返回的ret 不是預合約執行結束時的ret 了。
  • 在1.10.8 版本的Geth 中(無Bug):增加了766 行:ret = common.CopyBytes(ret), 將Mem[0:32] 中的值好像一次淺拷貝賦給ret,然後在767執行的Memory.Set1行修改Memory而不會修改ret,在77行返回的ret就是正確的ret。

總結

通過對整個過程流程的目標和Geth 源代碼的分析,我們認為根本原因在於Geth 舊版本在預處理工程合約的調用時考慮異常值處理,導致攻擊者利用該漏洞實施了重疊複製,影響了返回值,最終導致分叉的出現。因為Geth 是BSC、HECO、Polygon 等公鏈的基礎,因此該漏洞影響廣。當前各公鏈甚也推出了升級和修補,我們也推進了各相關範圍節點備份升級打上補丁,以確保基礎設施的安全。

免責聲明:作為均部分鏈信息平台,本站發布的文章僅代表作者個人觀點,ChainNews 與推論鏈相結合。

.

Source Link

最受歡迎

繼續閱讀

長期持有者持有的比特幣(BTC)供應量達到最高水平

根據Glassnode 的估計,比特幣的長期持有者(LTH)目前擁有1452 萬枚BTC,創歷史新高,只剩下25% 留給短期持...

抓住Web3 遊戲的先發優勢:成功策略

Web3和區塊鏈技術的出現徹底改變了遊戲行業,為開發者和企業家提供了前所未有的機遇。 Web3 遊戲的去中心化性質為創新遊戲貨幣化模式、玩家所有權和社區參與打...

現在讀

$COOKIE, the Cookie3 Mark...

Tallinn, Estonia, March 26th, 2024...

長期持有者持有的比特幣(BTC)供應量達到最高水平...

根據Glassnode 的估計,比特幣的長期持有者(LTH)目前擁有1452 萬枚BTC,創歷史新高,只剩下25% 留給短期持有者和投機者。 儘管BTC 的價格在過去一個月中保持相對平穩,範圍在約29,000 美元至31,000 美元之間,但人們還是開始瘋狂囤積。 ...

Caldera 宣布與Espresso Syste...

Caldera 開發人員可以利用Espresso Sequence...

抓住Web3 遊戲的先發優勢:成功策略

Web3和區塊鏈技術的出現徹底改變了遊戲行業,為開發者和企業家提供了前所未有的機遇。 Web3 遊戲的去中心化性質為創新遊戲貨幣化模式、玩家所有權和社區參與打開了大門。對於那些尋求利用Web3 遊戲巨大潛力的人來說,確保先發優勢至關重要。 了解Web3 遊戲生態系統在深入研究Web3 遊戲之前,有...

Taapsee Pannu 推出NFT 平台,介紹...

企業家貢獻者表達的意見是他們自己的。 您正在閱讀《企業家印度》,這是企業家媒體的國際特許經營刊物。 女演員Taapsee Pannu 最近推出了“taapseeclub.com”,這是她自己的非同質代...

比特幣(BTC) 地址休眠超過11 年,轉移310...

經過11 年多的閒置之後,一個包含3100 萬美元BTC 的休眠比特幣地址最近突然活躍起來。 2023年7月22日,地址 轉入 將其全部餘額轉移到新地址。 早期BTC 地址復活 比特幣自2009 年以來就已經存在,因此存在多年來不活躍的休眠地址,其中包含大量BTC。這種加密貨幣的一些早期採用者能夠...

加密貨幣死了嗎?當今加密貨幣的現狀

您之前可能聽說過加密貨幣正在消亡(或比特幣已消亡)。在這篇文章中,我們將研究加密貨幣的狀態,並嘗試回答這個問題:加密貨幣現在已經死了嗎? 在我們開始之前,我們想澄清一下,本文指的是最廣泛意義上的“加密貨幣行業”; 在裡面 網絡3 感覺。該定義包括加密資產市場; 但它還包括其他非財務用例。 隨著近來加...

Chancer 可能成為體育和社交博彩領域的下一個...

加密貨幣 隨著企業財報季節的繼續,本週股市表現好壞參半。在Ne...

以太坊(ETH) 創下兩個月來CEX 流入最高紀錄...

過去一周,以太坊(ETH)流入中心化交易所(CEX)的資金量創下了過去兩個月來的最高水平。這些重大的資產變動表明ETH 的價格可能會下跌。 CoinGecko 數據顯示,第二大加密貨幣的價格一直在小幅下跌,過去一周價值下跌了2.5%。截至撰寫本文時,以太幣易手價格為1,892.65 美元,過去24...

新的DeFi 法案有“不可行的義務”

加密貨幣創新委員會表示,新的反洗錢法案沒有為DeFi 中的非法金融...

幣安大幅削減成本,瑞波幣為美國銀行和加密貨幣風險投...

美國證券交易委員會(SEC)對加密貨幣公司的打擊似乎嚴重影響了幣安的業務。據報導,在過去幾週內,該加密貨幣交易所解雇了1,000 多名員工,並削減了一些福利。 幣安表示,“當前的市場環境和監管環境”導致利潤下降,這表明可能正在進行更多削減。一位發言人告訴Cointelegraph,該公司將考慮縮減“...

Automata 雙週更新:第48 期| 通過自動...

迎接新的季度意味著設定我們的意圖並為團隊規劃下一步的行動。幕後醞釀的一切——合作、產品功能和營銷發布——很難抑制我們的興奮。我們一開始就在1RPC(2 個備受期待的第2 層主網)上添加了對Linea 和Base 的支持。科技載體更新頁腳以顯示界面版本平滑的用戶體驗 USDC CCTP 支持 關於仲裁...