加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

SharkTeam:十大智能合約安全威脅之重放攻擊_CHA:blockchain是什么意思

Author:

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

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

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

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

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

一、什么是重放攻擊

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

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

報告:ProShares的比特幣期貨ETF今年的表現越來越遜于BTC:金色財經報道,根據數字資產研究公司K33 Research的報告,ProShares的比特幣(BTC)期貨交易所交易基金(ETF)今年的表現越來越差于BTC,削弱了其作為押注BTC價格上漲工具的吸引力。

K33 Research指出,ProShares的比特幣策略ETF(BITO)的價格今年迄今已上漲47%,落后于BTC同期60%的漲幅。表現不佳源于與基金結構相關的成本。BITO不購買代幣,而是持有芝加哥商品交易所(CME)的BTC期貨合約。該基金必須在合約到期時每月展期,使其容易受到條款之間價格差異的影響。如果下個月的合約交易價格高于最近的到期日,這種現象稱為期貨溢價,在牛市中很典型,在一段可持續的時間內,該基金將因“期貨溢價流失”而加劇損失。[2023/5/31 11:49:21]

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

觀點:Shapella升級后機構涌向以太坊:金色財經報道,據CME Group官方數據,CME期貨未平倉合約已升至2022年3月以來的最高水平,表明機構交易員涌入加密市場。以太坊于4月12日實施了備受期待的Shapella硬分叉,也稱為上海升級,通過允許隨意提取鎖定的代幣,降低了抵押區塊鏈原生代幣以太幣(ETH)的風險。這一關鍵事件激發了機構對市值第二大加密貨幣(ETH)的興趣。

自4月10日以來,在芝加哥商品交易所(CME)交易的活躍或未平倉的以太期貨合約數量增加了39%,達到6,248ETH。以美元計算,未平倉合約增加了70%以上,達到6.33億美元。

機構通常更喜歡CME期貨等受監管產品,這些產品允許他們在不擁有數字資產的情況下接觸數字資產。因此,與以太幣和比特幣掛鉤的CME期貨被廣泛認為是機構活動的代表。[2023/4/19 14:13:32]

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

CashApp創建者刺殺案嫌疑人被捕,系與Bob Lee相識的科技企業家:4月14日消息,經舊金山地區檢察官Brooke Jenkins證實,刺殺Cash App創建者Bob Lee的嫌疑人,科技企業家Nima Momeni已被捕。官方回應稱,Nima Momeni認識BobLee,但不愿就作案動機置評。Nima Momeni將于周五被提審,檢察官表示提出一項動議,要求其不得被保釋。(CNBC)[2023/4/14 14:03:09]

二、攻擊事件分析

2.1 Optimism

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

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

FShares Fund正式上線 布局生態投資業務:據官方消息,FShares Group旗下FShares Fund正式上線,布局區塊鏈生態基金投資業務,圍繞區塊鏈行業上下游,投資優質資產。FShares Fund是專注加密資產管理、交易服務、項目孵化、基金投資、業務咨詢的投融服務機構,與FDEX交易所同屬于FShares生態,FDEX承擔著交易兌換的功能,FShares生態基金承擔著價值輸出的功能,具備完整的生態服務系統。[2020/4/14]

(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如下:

聲音 | ShapeShift首席執行官Erik Voorhees:比特幣極端主義存在缺陷 開放的市場導致山寨幣繼續存在:據Bitcoin News消息,ShapeShift首席執行官Erik Voorhees最近在社交媒體上指出了比特幣極端主義心態的內在缺陷,開放的市場導致山寨幣將繼續存在于加密貨幣領域。作為回應,一位評論員提出TCP/IP是開放的市場的壟斷,但Voorhees認為還有許多其他流行的互聯網協議,如VOIP、SMTP和http。[2019/1/30]

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的合約。

(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:CHAAINHAIChainCHAM價格LEMONCHAINblockchain是什么意思CROSSCHAIN價格

幣安交易所app下載
加密貨幣的終局已經到來了嗎?我們將何去何從?_加密貨幣:比特幣

原文標題:《Where do we go from here?》 撰文:knower 編譯:RR 圖片來源:由 無界版圖AI 工具生成有沒有人能告訴你明年會發生什么?下一個十年呢?也許是下個世紀.

1900/1/1 0:00:00
在馬斯克的接手下 Twitter會離web3更進一步嗎?_ITT:polkadottedtie

11月5日,馬斯克在社交媒體披露,Twitter每天虧損超過400萬美元。面對如此棘手的問題,自收購以來,馬斯克就已經搞了許多“大動作”,如大規模裁員、計劃削減基礎設施費用、計劃改革內容審核…….

1900/1/1 0:00:00
以更長遠的眼光看待Web3_WEB:WEB69

來源:Fred Wilson、Katie Haun本文的發現有點巧,筆者在11月13日,針對FTX和目前加密市場的情況,在推特上AT了USV的合伙人Fred Wilson.

1900/1/1 0:00:00
Meta到底為何要大裁員?_ETA:ETA價格

還記得Libra計劃嗎,Meta想憑此計劃進軍加密貨幣市場。亦或 Lasso,Meta 試圖用此款 app 超越 TikTok.

1900/1/1 0:00:00
如何找到下一個StepN?從建立X to Earn分類體系開始_EARN:WEB3ALLBI幣

撰文: W Labs 瓜哥X to Earn 里的項目真的都是同質化的嗎?怎么從不同的角度去歸類?如何從投資邏輯上去研判項目的好壞?回顧從 2020 年到 2022 年這一波完整的「谷底→高峰→.

1900/1/1 0:00:00
盤點16個在熊市中值得關注的創新項目_ETH:NEW

撰寫:hangry推文 編譯:深潮 TechFlow在 3AC、Terra、FTX 這些黑天鵝讓本就進入熊市周期的加密貨幣市場布滿了烏云。但在加密市場中仍然涌現了許多創新項目.

1900/1/1 0:00:00
ads