比特幣價格 比特幣價格
Ctrl+D 比特幣價格
ads

RET:以太坊遭到攻擊而導致分叉事件的技術分析_ETH

Author:

Time:1900/1/1 0:00:00

北京時間2021年8月27日20點50分左右,以太坊突然出現分叉。我們通過分析Geth的代碼版本修改和這筆造成分叉的交易厘清了以太坊分叉的根本原因:Geth舊版本在處理預編譯合約調用時,并未考慮特殊情況下參數值的處理,從而引發重疊拷貝,導致返回值異常。該漏洞已提交Geth官方,目前尚未披露細節,但攻擊者已經利用漏洞實施了攻擊。我們認為及時的分析和披露是必要的,也希望我們的分析能夠為社區提供必要的理解和幫助。

攻擊分析

運用我們的在線分析工具,可以看出:

數據:以太坊2.0質押量超1250萬枚,再創歷史新高:5月11日消息,據多鏈數據分析平臺Nansen數據顯示,截止目前ETH2.0存款合約地址質押數已達到1250萬枚,再創歷史新高。[2022/5/11 3:06:42]

圖一

這筆交易執行了一個精心構造的STATICCALL,攻擊者將addr設為0x04,inOffset為0,inSize為32,retOffset為7,retSize為32。

以太坊二層擴容網絡Optimism或即將推出Token OP:金色財經消息,以太坊二層擴容網絡Optimism發文《A New Chapter》,回顧過去取得進展、網絡成績、融資信息等,并稱將開啟由“社區所有權和治理驅動”的新篇章,即將發布更多信息。根據社區推測以及官方路線圖,Optimism或即將推出Token OP。

根據官方信息,Optimism目前已幫用戶節省超11億美元gas費用,部署超6800個合約,促成超174億美元的交易量,產生超過2450萬美元的收入。

此前4月13日消息,知情人士:四大Layer2中或有一方將于下個月發行Token。[2022/4/20 14:35:10]

圖二

以太坊未確認交易為169,921筆:金色財經消息,據OKLink數據顯示,以太坊未確認交易169,921筆,當前全網算力為505.90TH/s,全網難度為6.72P,當前持幣地址為58,100,548個,同比增加264,216個,24h鏈上交易量為2,436,088.76ETH,當前平均出塊時間為12s。[2021/4/17 20:31:26]

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

圖三

圖四

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

圖五

圖六

圖五是STATICCALL的執行過程,753行是執行預編譯合約的入口,751行的args指向EVM的Memory中inOffset~inOffset+inSize這篇區域的指針,也就是說args指向Mem。

根據圖六以及前文對預編譯合約0x04的分析,我們可以知道753行的返回值ret是與args完全相同的指針,也指向Mem。

在1.10.7版本的Geth中:762行將ret指向的值賦給EVM的Memory中retOffset~retOffset+retOffset這篇區域,也就是將Mem的值賦給Mem,而由于ret是一個指向Mem的指針,這次Memory.Set修改了Mem的值,也就修改了ret所指的值。所以在第771行返回的ret已經不是預編譯合約執行結束時的ret了。在1.10.8版本的Geth中:增加了766行:ret=common.CopyBytes,將Mem中的值做了一次深拷貝賦給ret,那么在767行執行的Memory.Set只會修改Memory而不會修改ret,在771行返回的ret就是正確的ret。總結

通過對整個攻擊流程的梳理和Geth源代碼的分析,我們認為根本原因在于Geth舊版本在處理預編譯合約的調用時并未考慮異常值的處理,導致攻擊者利用該漏洞實施了重疊拷貝,影響了返回值,最終導致分叉的出現。由于Geth是BSC、HECO、Polygon等公鏈的基礎,因此該漏洞影響范圍甚廣。目前各公鏈也先后推出了升級和補丁,我們也呼吁各相關節點盡早升級打上補丁,以確保基礎設施的安全。

Tags:RETMEMETHSETsecret幣幣交易meme幣官網ETHF價格Art Blocks Curated Full Set

酷幣下載
LOOT:Loot創始人提出Loot擴展項目提案,激勵Loot擴展項目創作者_OKS

9月4日,近日大熱的NFT項目Loot創始人DominikHofmann在HackMD發表關于發展Loot擴展項目的提案,建議將Loot擴展項目自動提供給生態系統中.

1900/1/1 0:00:00
YES:一文探究針對高度不可能事件押注的預測市場設計_BTC

問題提出 如果人們要對發生概率極不平衡的事件進行押注,預測市場會使資本效率變得尤為低效。打個比方,如果某事件A發生的概率為90%,那么為這件事下注的人就得投入0.9美元來獲得1美元的頭寸,但是如.

1900/1/1 0:00:00
POL:PolyNetwork黑客:準備歸還資金,不再創建DAO_POLY

巴比特訊,8月11日,PeckShield發推表示,PolyNetwork黑客在11點48分及49分的兩次交易中附加信息表示:準備歸還資金.

1900/1/1 0:00:00
比特幣:蘋果公司該如何快速進入Crypto領域,MicroStrategy老板給出了建議_LORDA

MichaelSaylor看好比特幣并不是什么新聞。事實上,MichaelSaylor經常談到數字資產轉移支付的潛力,并稱之為“財產的未來”.

1900/1/1 0:00:00
區塊鏈:區塊鏈技術能夠給航運業帶來什么樣的變革?_Glory Token

鏈集市?·讓區塊鏈落地更簡單 《區塊鏈行業觀察》專欄·第47?篇作者丨Ml?NewsNetwork 圖片丨來源于網絡 區塊鏈技術已經在很大程度上改變了航運業.

1900/1/1 0:00:00
PAR:Paradigm 合伙人:加密企業具備哪些優勢,能從 FAANG 手中搶奪優秀工程師_PARK

撰文:DanMcCarthy,Paradigm人才招募合伙人編譯:PerryWang軟件工程文化一直傾向于反威權主義的態度.

1900/1/1 0:00:00
ads