買比特幣 買比特幣
Ctrl+D 買比特幣
ads

SDC:慢霧發布以太坊代幣「假充值」漏洞細節披露及修復方案_USD

Author:

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

鏈聞訊:

區塊鏈安全公司慢霧科技發布預警,稱部分交易所及中心化錢包遭受以太坊代幣「假充值」漏洞攻擊之后,7月10日表示已通知了大部分交易所和中心化錢包確認漏洞細節。該公司稱,此漏洞影響面很大,將在7月11日公布詳細漏洞分析報告,以下為漏洞分析詳細內容:

漏洞分析報告來自慢霧區公眾號

披露時間線

以太坊代幣「假充值」漏洞影響面非常之廣,影響對象至少包括:相關中心化交易所、中心化錢包、代幣合約等。單代幣合約,我們的不完全統計就有3619份存在「假充值」漏洞風險,其中不乏知名代幣。相關項目方應盡快自查。由于這不僅僅是一個漏洞那么簡單,這已經是真實在發生的攻擊!出于影響,我們采取了負責任的披露過程,這次攻擊事件的披露前后相關時間線大致如下:

2018/6/28慢霧區情報,USDT「假充值」漏洞攻擊事件披露

慢霧:Rubic協議錯將USDC添至Router白名單,導致已授權合約用戶USDC遭竊取:12月25日消息,據慢霧安全團隊情報,Rubic跨鏈聚合器項目遭到攻擊,導致用戶賬戶中的USDC被竊取。慢霧安全團隊分享如下:1. Rubic是一個DEX跨鏈聚合器,用戶可以通過RubicProxy合約中的routerCallNative函數進行Native Token兌換。在進行兌換前,會先檢查用戶傳入的所需調用的目標 Router是否在協議的白名單中。

2. 經過白名單檢查后才會對用戶傳入的目標Router進行調用,調用數據也由用戶外部傳入。

3. 不幸的是USDC也被添加到Rubic協議的Router白名單中,因此任意用戶都可以通過RubicProxy合約任意調用USDC。

4. 惡意用戶利用此問題通過routerCallNative函數調用USDC合約將已授權給RubicProxy合約的用戶的USDC通過transferFrom接口轉移至惡意用戶賬戶中。

此次攻擊的根本原因在于Rubic協議錯誤的將USDC添加進Router白名單中,導致已授權給RubicProxy合約的用戶的USDC被竊取。[2022/12/26 22:07:00]

2018/7/1慢霧安全團隊開始分析知名公鏈是否存在類似問題

慢霧:DEUS Finance 二次被黑簡析:據慢霧區情報,DEUS Finance DAO在4月28日遭受閃電貸攻擊,慢霧安全團隊以簡訊的形式將攻擊原理分享如下:

1.攻擊者在攻擊之前先往DeiLenderSolidex抵押了SolidexsAMM-USDC/DEI的LP。

2.在幾個小時后攻擊者先從多個池子閃電貸借出143200000USDC。

3.隨后攻擊者使用借來的USDC在BaseV1Pair進行了swap操作,兌換出了9547716.9個的DEI,由于DeiLenderSolidex中的getOnChainPrice函數是直接獲取DEI-USDC交易對的代幣余額進行LP價格計算。因此在此次Swap操作中將拉高getOnChainPrice函數獲取的LP價格。

4.在進行Swap操作后,攻擊者在DeiLenderSolidex合約中通過borrow函數進行借貸,由于borrow函數中用isSolvent進行借貸檢查,而在isSolvent是使用了getOnChainPrice函數參與檢查。但在步驟3中getOnChainPrice的結果已經被拉高了。導致攻擊者超額借出更多的DEI。

5.最后著攻擊者在把用借貸出來DEI兌換成USDC歸還從幾個池子借出來的USDC,獲利離場。

針對該事件,慢霧安全團隊給出以下防范建議:本次攻擊的原因主要在于使用了不安全的預言機來計算LP價格,慢霧安全團隊建議可以參考Alpha Finance關于獲取公平LP價格的方法。[2022/4/28 2:37:18]

2018/7/7慢霧安全團隊捕獲并確認以太坊相關代幣「假充值」漏洞攻擊事件

慢霧:Multichain(AnySwap)被黑由于anySwapOutUnderlyingWithPermit函數相關問題:據Multichain(AnySwap)早前消息,2022年01月18日,一個影響6個跨鏈Token的關鍵漏洞正在被利用。慢霧安全團隊進行分析后表示,此次主要是由于anySwapOutUnderlyingWithPermit函數為檢查用戶傳入的Token的合法性,且未考慮并非所有underlying代幣都有實現permit函數,導致用戶資產被未授權轉出。慢霧安全團隊建議:應對用戶傳入的參數是否符合預期進行檢查,且在與其他合約進行對接時應考慮好兼容性問題。[2022/1/19 8:57:49]

2018/7/8慢霧安全團隊分析此次影響可能會大于USDT「假充值」漏洞攻擊事件,并迅速通知相關客戶及慢霧區伙伴

2018/7/9慢霧區對外發出第一次預警

金色相對論 | 慢霧科技合伙人:需要結合用戶自身對區塊鏈的熟悉水平來選取保護措施:在今日舉行的金色相對論中,針對“暴跌行情對區塊鏈安全產生了怎樣的影響”的問題,慢霧科技合伙人Keywolf表示,我覺得需要結合用戶自身對區塊鏈的熟悉水平,如果是剛接觸區塊鏈不久的、持幣量不大的用戶,建議資產托管在全球知名的交易所,開啟各項二次認證、登錄保護措施。

如果是對區塊鏈有一定的認知,對去中心化錢包有相應的了解,可以選擇國際知名的去中心化錢包,把幣放在里面,同時離線備份好助記詞、私鑰。第三種是資金量大的,對資金安全要求高的,可以選擇國際知名的硬件錢包,或者專業的資產托管平臺。[2020/4/7]

2018/7/10慢霧安全團隊把細節同步給至少10家區塊鏈生態安全同行

2018/7/11細節報告正式公開

漏洞細節

以太坊代幣交易回執中status字段是0x1(true)還是0x0(false),取決于交易事務執行過程中是否拋出了異常。當用戶調用代幣合約的transfer函數進行轉賬時,如果transfer函數正常運行未拋出異常,該交易的status即是0x1(true)。

聲音 | 慢霧:EOS假充值紅色預警后續:慢霧安全團隊今早發布了 EOS 假充值紅色預警后,聯合 EOSPark 的大數據分析系統持續跟蹤和分析發現:從昨日開始,存在十幾個帳號利用這類攻擊技巧對數字貨幣交易所、錢包等平臺進行持續性攻擊,并有被真實攻擊情況。慢霧安全團隊在此建議各大交易所、錢包、DApp 做好相關防御措施,嚴格校驗發送給自己的轉賬交易在不可逆的狀態下確認交易的執行狀態是否為 executed。除此之外,確保以下幾點防止其他類型的“假充值”攻擊: 1. 判斷 action 是否為 transfer 2. 判斷合約賬號是否為 eosio.token 或其它 token 的官方合約 3. 判斷代幣名稱及精度 4. 判斷金額 5. 判斷 to 是否是自己平臺的充幣賬號。[2019/3/12]

如圖代碼,某些代幣合約的transfer函數對轉賬發起人(msg.sender)的余額檢查用的是if判斷方式,當balances<_value時進入else邏輯部分并returnfalse,最終沒有拋出異常,我們認為僅if/else這種溫和的判斷方式在transfer這類敏感函數場景中是一種不嚴謹的編碼方式。而大多數代幣合約的transfer函數會采用require/assert方式,如圖:

當不滿足條件時會直接拋出異常,中斷合約后續指令的執行,或者也可以使用EIP20推薦的if/elserevert/throw函數組合機制來顯現拋出異常,如圖:

我們很難要求所有程序員都能寫出最佳安全實踐的代碼,這種不嚴謹的編碼方式是一種安全缺陷,這種安全缺陷可能會導致特殊場景下的安全問題。攻擊者可以利用存在該缺陷的代幣合約向中心化交易所、錢包等服務平臺發起充值操作,如果交易所僅判斷如TxReceiptStatus是success就以為充幣成功,就可能存在「假充值」漏洞。如圖:

參考示例TX:

https://etherscan.io/tx/0x9fbeeba6c7c20f81938d124af79d27ea8e8566b5e937578ac25fb6c68049f92e

修復方案

除了判斷交易事務success之外,還應二次判斷充值錢包地址的balance是否準確的增加。其實這個二次判斷可以通過Event事件日志來進行,很多中心化交易所、錢包等服務平臺會通過Event事件日志來獲取轉賬額度,以此判斷轉賬的準確性。但這里就需要特別注意合約作惡情況,因為Event是可以任意編寫的,不是強制默認不可篡改的選項:

emitTransfer(from,to,value);//value等參數可以任意定義

作為平臺方,在對接新上線的代幣合約之前,應該做好嚴格的安全審計,這種安全審計必須強制代幣合約方執行最佳安全實踐。

作為代幣合約方,在編碼上,應該嚴格執行最佳安全實踐,并請第三方職業安全審計機構完成嚴謹完備的安全審計。

后記Q&A

Q:為什么我們采取這種披露方式?

A:本質是與攻擊者賽跑,但是這個生態太大,我們的力量不可能覆蓋全面,只能盡我們所能去覆蓋,比如我們第一時間通知了我們的客戶,然后是慢霧區伙伴的客戶,再然后是關注這個生態的安全同行的客戶,最終不得不披露出細節。

Q:為什么說披露的不僅僅是漏洞,而是攻擊?

A:其實,以我們的風格,我們一般情況下是不會單純去提漏洞,漏洞這東西,對我們來說太普通,拿漏洞來高調運作不是個好方式。而攻擊不一樣,攻擊是已經發生的,我們必須與攻擊者賽跑。披露是一門藝術,沒什么是完美的,我們只能盡力做到最好,讓這個生態有安全感。

Q:至少3619份存在「假充值」漏洞風險,這些代幣該怎么辦?

A:很糾結,一般來說,這些代幣最好的方式是重發,然后新舊代幣做好「映射」。因為這類代幣如果不這樣做,會像個「定時炸彈」,你不可能期望所有中心化交易所、中心化錢包等平臺方都能做好安全對接,一旦沒做好這個「假充值」漏洞的判斷,那損失的可是這些平臺方。而如果平臺方損失嚴重,對整個市場來說必然也是一種損失。

Q:有哪些知名代幣存在「假充值」漏洞?

A:我們不會做點名披露的事。

Q:有哪些交易所、錢包遭受過「假充值」漏洞的攻擊?

A:恐怕沒人會公開提,我們也不會點名。

Q:這些代幣不重發是否可以?

A:也許可以,但不完美。不選擇重發的代幣要么很快是發布主網就做「映射」的,要么得做好通知所有對接該代幣的平臺方的持續性工作。

Q:為什么慢霧可捕獲到這類攻擊?

A:我們有健壯的威脅情報網絡,捕獲到異常時,我們默認直覺會認為這是一種攻擊。

Q:除了USDT、以太坊代幣存在「假充值」漏洞風險,還有其他什么鏈也存在?

A:暫時不做披露,但相信我們,「假充值」漏洞已經成為區塊鏈生態里不可忽視的一種漏洞類型。這是慢霧安全團隊在漏洞與攻擊發現史上非常重要的一筆。

鏈聞ChainNews:提供每日不可或缺的區塊鏈新聞。

原文作者:慢霧鏈聞編輯:Ajina版權聲明:文章為作者獨立觀點,不代表鏈聞ChainNews立場。

來源鏈接:mp.weixin.qq.com

本文來源于非小號媒體平臺:

鏈聞速遞

現已在非小號資訊平臺發布1篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/3626928.html

以太坊ETH漏洞風險安全

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

眾多項目啟動「道德黑客」賞金計劃,EOS上半年賞金超10萬美元

Tags:USDUSDCSDCBICbusd幣會不會崩盤usdc幣最新消息cusdc幣是什么BICR

幣安app官方下載最新版
ENT:火星一線 | BTT一周漲幅57.57%,市值排名暫列第34位_BTTR價格

火星財經APP一線報道,BTT今日早間迅速上漲,日內漲幅超22%,最高漲至0.00129287美元,現報0.00123652美元,CoinMarKetCap市值排名升至第34位.

1900/1/1 0:00:00
ETF:SEC再次對VanEck ETF延期決定_萊特幣是復制比特幣

正如希臘神話西緒福斯一樣,其因前生罪惡受懲罰,無休止地將一塊巨石滾到山頂,而巨石總是一再滾落。比特幣行業也一直為獲得一支交易所交易基金(ETF)而進行著無休止的努力卻始終沒有實現.

1900/1/1 0:00:00
數字貨幣:研究稱:「挖礦劫持」超越勒索軟件,成為首要安全威脅_非小號

反病技術領先者卡巴斯基實驗室在6月27日發布了一份網絡安全報告。該報告指出,針對互聯網用戶的勒索軟件數量明顯下降,但是與此同時,挖礦劫持發生頻率不斷增長.

1900/1/1 0:00:00
以太坊:未來牛市一路低吸建倉的良機在這里_BTCL

BTC從4月初的4000美元一路強勢上漲至目前8000美元上方,幣價直接翻倍,其余一些強勢主流幣包括一些潛力小幣均出現了跑贏大盤的漲幅,相信很多朋友目前都有這種FOMO心理,感覺錯失了大行情.

1900/1/1 0:00:00
Chain:BM 譴責 360 制造恐慌,「史詩級漏洞」還是「史詩級營銷」?_originchain

鏈聞ChainNews:由于時差原因,360官方發布消息時,EOS技術團隊無法及時回復,事件在不確定性當中繼續發酵.

1900/1/1 0:00:00
USD:公告中心丨國際志愿者招募_USDT

國際志愿者招募 親愛的用戶: 我們是敢于實現夢想的創新者。我們正在用區塊鏈技術創造一個更美好的世界,改革我們的金融系統,重新定義人際關系,縮短人與人之間的距離.

1900/1/1 0:00:00
ads