比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

SharkTeam:十大智能合約安全威脅之重放攻擊_HAI

Author:

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

重放攻擊是把原鏈網絡上的交易拿到目標鏈網絡上使用

問:我們常提到的智能合約漏洞真的是實際中威脅最大、發生最頻繁的安全漏洞嗎?

答:完全不是那樣。例如“溢出”、“外部調用”等常提到的智能合約安全漏洞并不是最常發生,威脅最大的。

到底哪些安全威脅從發生頻率和危害性上能稱為Top10的呢?SharkTeam合約安全系列課程之[十大智能合約安全威脅]和您一起討論和深入。第十課[詳解重放攻擊]。

一、什么是重放攻擊

重放攻擊是把原鏈網絡上的交易拿到目標鏈網絡上使用,即一筆交易重復執行,我們根據類型可以分為交易重放和簽名重放。

交易重放是將原鏈上的交易一成不變放到目標鏈上,重放過后交易在目標鏈上可以正常執行并完成交易驗證。

以太坊客戶端Lodestar發布支持Shapella升級的兩個可選版本:3月31日消息,據官方推特,以太坊2.0客戶端Lodestar宣布已發布v1.7.1版本,其中包括一個修復程序,以解決大多數用戶在Goerli測試網上遇到的與檢查點同步有關的問題。該版本可帶來更好的測試體驗,Lodestar推薦此版本升級,特別是Goerli用戶。v1.7.0和v1.7.1均支持Shapella,并將于4月12日與網絡分叉。[2023/3/31 13:37:32]

簽名重放利用私鑰簽名的消息進行重放,重放過程中無需像交易重放那樣去重放整個交易,而是重放相應的簽名信息。

在實施EIP 155后,交易簽名帶有chainid,即鏈與分叉鏈之間的標識符。由于chainid不同,交易重放無法完成,簽名重放可以間接完成。在以太坊完成分叉后,ETHW主網出現數起重放攻擊事件,讓我們回顧一下這些攻擊事件前因后果。

二、攻擊事件分析

2.1 Optimism

ProShares比特幣ETF兩天內達到與加拿大ETF相同的凈資產值:金色財經報道,據Kaiko稱,ProShares 基于比特幣期貨的交易所交易基金已經突破了 10 億美元的資產管理規模,并成為投資產品歷史上最快實現這一目標的 ETF。為期兩天的 ProShares ETF 資產管理規模達到加拿大基金。

雖然 ProShares 產品是美國第一個比特幣 ETF,但加拿大已經有幾只比特幣 ETF 在多倫多證券交易所交易。在Kaiko提供的圖表上,我們可以看到美國ETF的資產凈值已達到10億美元大關,更接近于今年2月和4月以來一直在交易的加拿大投資產品。這兩個基金之間的主要區別在于,加拿大 ETF 實際上持有比特幣,而不是通過持有短期比特幣 期貨合約來創造對加密貨幣的合成敞口。目前,與 ProShares 相比,只有兩種基金的資產凈值更高:3iQ 和目的比特幣 ETF。 (u.today)[2021/10/26 20:59:15]

2022年6月9日消息,據Optimism與加密貨幣做市商 Wintermute 透露,2000萬個Optimism代幣被黑客盜取。重放攻擊過程如下:

Liquid Network聯盟新增CoinShares等8個成員:金色財經報道,據Blockstream側鏈Liquid Network官方消息,Liquid Network聯盟已新增8個成員,包括CoinShares、Condensat、INX、JST Capital、Paymium、Petrushev Capital、Sevenlabs和Satoshis Games。至此,Liquid Network聯盟成員總數已達到53個,包括加密貨幣交易所和基礎設施提供商等。[2020/8/27]

(1)5月27日,Optimism地址0x2501向Optimism/L2上的0x4f3a地址轉賬2000萬OP,0x4f3a地址在Ethereum/L1上是Wintermute的多簽合約地址,但此時在Optimism/L2上面并沒有部署合約;

(2)6月1日,黑客地址0x8bcf部署合約0xe714。

(3)6月5日,黑客通過重放Ethereum/L1上的交易創建了Gnosis Safe: Proxy Factory 1.1.1合約,其地址與Ethereum/L1上一樣;然后地址0x60b2通過合約0xe714部署了多簽合約0x4f3a,合約所有權歸黑客所有,因此5月27日轉入的2000萬OP被黑客盜取。在Gnosis Safe: Proxy Factory 1.1.1合約中,其中創建代理合約函數createProxy如下:

iShares Silver Trust持倉較上日減少217.22噸:全球最大白銀ETF--iShares Silver Trust持倉較上日減少217.22噸,當前持倉量為17855.07噸。[2020/8/15]

Gnosis Safe: Proxy Factory 1.1.1合約使用的是0.5版本的Solidity,使用new來創建合約時使用的是create命令,而不是create2。使用create命令創建合約,合約地址是msg.sender以及nonce來計算的。在Ethereum/L1上面,創建多簽合約0x4f3a的msg.sender就是Gnosis Safe: Proxy Factory 1.1.1的地址,黑客在Optimism/L2通過重放交易來創建于Gnosis Safe: Proxy Factory 1.1.1合約的主要目的就是為了保證在Optimism/L2上創建合約0x4f3a的msg.sender與在Ethereum/L1上一致,那么黑客可以很方便的通過智能合約(合約0xe714)調用createProxy函數來創建出地址是0x4f3a的合約。

動態 | FShares Group旗下FSDEX交易所推出“集幣卡”功能:據官方消息,FShares Group旗下FSDEX去中心化交易所將于1月17日開啟“集幣卡”功能。期間,每隔30分鐘平臺將通過智能合約為該時間段參與交易的用戶發放“幣卡”獎勵,集齊四種幣卡將有機會瓜分88888枚FSC。FSDEX是一家安全、高性能、零手續費的去中心化交易所,當前平臺幣FSC價格約為11.06CNY。[2020/1/15]

(4)6月5日,多簽合約0x4f3a在接收到2000萬OP后,將100萬OP轉賬給黑客地址0x60b2,然后將100萬OP兌換成了720.7 Ether。

(5)6月9日,合約0x4f3a將其中的100萬OP轉賬給了賬戶地址0xd8da, 其他的1800萬OP仍然在合約0x4f3a中。

本次攻擊根本原因是:交易重放、Solidity舊版本漏洞以及主鏈和側鏈交易簽名驗證等綜合因素

2.2 Omni

2022年9月18日,以太坊合并完成后,PoW鏈遭到PoS鏈上交易的重放攻擊,根本原因是網橋未正確讀取并驗證區塊鏈的chainid。攻擊者首先通過Gnosis鏈的Omni跨鏈橋轉移了200 WETH,然后在PoW鏈上重放了相同的消息,獲得了額外的200 ETHW。

(1)PoS鏈交易hash:0xbddb0cc8bc9949321e1748f03503ed1a20dd618fbf0a51dc5734c975b1f8bdf5

(2)PoW鏈交易hash:0x9c072551861ce384203516f4d705176a2d2e262d5b571d853467425f1a861fb4

我們對比發現兩筆交易訪問的合約相同,并且inputdata完全相同,即調用了同一個合約的同一個函數并且參數相同,根據相同的方法簽名ID 0x23caab49可知,黑客調用safeExecuteSignaturesWithAutoGasLimit函數。

在正常的交易中,我們通過nonce來進行排序交易,避免重復交易。在跨鏈中,我們會根據chianid進行識別鏈的類型,比如以太坊主網的chainid是1,ETHW主網的chainid是10001。

我們查看一下Omni Bridge驗證chainid的邏輯,發現chainid的來源于unitStorage中存儲的值,而不是通過操作碼 CHAINID(0x46)直接讀取的鏈上chainid。

unitStorage是合約EternalStorage中的狀態變量,sourceChainId()函數所在的合約BasicAMB繼承了BasicBridge和VersionableAMB。其中,BasicBridge陸續繼承了合約EternalStorage。這里保存的chainid是預先存儲好的,如果發生區塊鏈的硬分叉而chainid又沒有重新設置或者chainid人為設置有誤,從合約層面上來說,由于不是通過操作碼獲取的chainid,不會正確驗證跨鏈消息的實際chainid。

本次攻擊根本原因是:主要是Omni使用的solidity版本是0.4.24,采用的是手動存儲和更新chainid的方式,并未通過EIP-1344中規定的CHAINID(0x46)操作碼進行實際chainid獲取。

三、預防措施

針對重放攻擊主要有以下幾種預防的方法:

(1)可以在簽名消息中加入chainid和nonce兩個參數值,chainid用于識別鏈ID的標識符,nonce是交易次數計數值。

(2)記錄簽名是否使用過,比如利用mapping進行簽名中對應參數映射為bool值,這樣做可以防止簽名多次使用。

(3)項目上線前,需聯系專業的第三方專業審計團隊進行審計。

來源:tuoniaox

鴕鳥區塊鏈

媒體專欄

閱讀更多

金色早8點

比推 Bitpush News

Foresight News

PANews

Delphi Digital

區塊鏈騎士

深潮TechFlow

鏈捕手

區塊律動BlockBeats

DeFi之道

Tags:HAIChainAINCHAfinchainKAINETChain Estate DAO

火幣交易所
金色觀察 | 一顆“默克爾樹” 排不了交易所的“雷”_BSP

過去一周,幣安大戰FTX,一場能夠載入幣圈史冊的事件爆發,引發了全球各行業的關注。而兩個交易所的戰火蔓延整個行業,也由此引發了整個行業的“信任危機”,用戶對于交易所的信任度下降至歷史冰點.

1900/1/1 0:00:00
FTX暴雷后SBF的真心話:贏家因勝利而高尚_SBF

原文來源:Kelsey Piper,Vox原文編譯:Leo、0x9F、FYJ,BlockBeats這是 Vox 的記者 Kelsey Piper 在 11 月 16 日晚與 FTX 創始人 SB.

1900/1/1 0:00:00
OpenSea“攪局” NFT 版稅的未來將駛向何方?_SEA

編譯:Zion 在過去幾年里,大量藝術家進入了加密經濟。這些創作者的主要動力是什么?能夠從其作品的二次銷售中賺取版稅。然而,在目前的范式中,NFT版稅最終是可選項.

1900/1/1 0:00:00
CZ公開信:2022 韌性為王_NCE

從數據來看,加密行業的 2022 是跌宕起伏的一年。對于 Binance 和整個加密行業來說,在 Celsius、Voyager、FTX 等項目接連破產之后,我們更應該學會反思.

1900/1/1 0:00:00
各國監管層如何看待FTX暴雷?_數字貨幣

嚴監管能否避免此類悲劇重演?FTX 地震的余波正在一波波向全球蔓延。除了已知的 FTX 存在的 80 億美元資金缺口,受波及的還有與 FTX 和 Alameda 相關聯的100 多家企業,FTX.

1900/1/1 0:00:00
Polygon為何成為星巴克們登陸Web3的入口?_GON

區塊鏈基礎設施Polygon網絡正在成為傳統品牌進入Web3世界的入口。11月4日,Meta旗下社交平臺Instagram宣布,將支持用戶創建、購買和交易NFT,底層首選Polygon;更早前的.

1900/1/1 0:00:00
ads