鏈聞ChainNews:
上周,慢霧披露的以太坊代幣「假充值」漏洞,可謂一石激起千層浪,這次漏洞影響到相當數量的交易所和中心化錢包等,影響范圍廣泛。本文為你深入解析這次漏洞的前因后果。
來源|慢霧區作者|慢霧安全團隊
披露時間線以太坊代幣「假充值」漏洞影響面非常之廣,影響對象至少包括:相關中心化交易所、中心化錢包、代幣合約等。單代幣合約,我們的不完全統計就有3619份存在「假充值」漏洞風險,其中不乏知名代幣。相關項目方應盡快自查。**由于這不僅僅是一個漏洞那么簡單,這已經是真實在發生的攻擊!**出于影響,我們采取了負責任的披露過程,這次攻擊事件的披露前后相關時間線大致如下:
2018/6/28慢霧區情報,USDT「假充值」漏洞攻擊事件披露2018/7/1慢霧安全團隊開始分析知名公鏈是否存在類似問題2018/7/7慢霧安全團隊捕獲并確認以太坊相關代幣「假充值」漏洞攻擊事件2018/7/8慢霧安全團隊分析此次影響可能會大于USDT「假充值」漏洞攻擊事件,并迅速通知相關客戶及慢霧區伙伴2018/7/9慢霧區對外發出第一次預警2018/7/10慢霧安全團隊把細節同步給至少10家區塊鏈生態安全同行2018/7/11細節報告正式公開漏洞細節
Succinct Labs推出基于zkSNARKs的以太坊互操作協議Telepathy:3月17日消息,Succinct Labs 宣布推出基于 zkSNARKs 的以太坊互操作協議 Telepathy。該協議允許開發人員借助以太坊輕客戶端協議的安全性實現從以太坊到其他鏈的無信任通信。目前該協議已上線主網并發布 Demo 供用戶體驗。[2023/3/17 13:10:07]
以太坊代幣交易回執中status字段是0x1(true)還是0x0(false),取決于交易事務執行過程中是否拋出了異常。當用戶調用代幣合約的transfer函數進行轉賬時,如果transfer函數正常運行未拋出異常,該交易的status即是0x1(true)。
如圖代碼,某些代幣合約的transfer函數對轉賬發起人(msg.sender)的余額檢查用的是if判斷方式,當balances<_value時進入else邏輯部分并returnfalse,最終沒有拋出異常,我們認為僅if/else這種溫和的判斷方式在transfer這類敏感函數場景中是一種不嚴謹的編碼方式。而大多數代幣合約的transfer函數會采用require/assert方式,如圖:
以太坊2.0合約質押新增1.19萬ETH:據歐科云鏈鏈上大師數據顯示,截至上午10時,以太坊2.0存款合約地址已收到622.01萬 ETH,占當前以太坊供應量的5.34%,近24小時新增11904 ETH。[2021/7/8 0:35:38]
當不滿足條件時會直接拋出異常,中斷合約后續指令的執行,或者也可以使用EIP20推薦的if/elserevert/throw函數組合機制來顯現拋出異常,如圖:
我們很難要求所有程序員都能寫出最佳安全實踐的代碼,這種不嚴謹的編碼方式是一種安全缺陷,這種安全缺陷可能會導致特殊場景下的安全問題。攻擊者可以利用存在該缺陷的代幣合約向中心化交易所、錢包等服務平臺發起充值操作,如果交易所僅判斷如TxReceiptStatus是success就以為充幣成功,就可能存在「假充值」漏洞。如圖:
參考示例TX:https://etherscan.io/tx/0x9fbeeba6c7c20f81938d124af79d27ea8e8566b5e937578ac25fb6c6804error
V神否認以太坊網絡分叉,或因Geth老版本導致服務出問題:11月11日消息,V神在中文社群否認以太坊網絡分叉的說法,并表示網絡沒事。開發者說有可能一個Geth的老版本出問題了,所以有一些很久沒有更新Geth的服務今天出問題。
據此前報道,Ethereum和IPFS的API服務供應商 Infura以太坊API服務中斷,多家交易平臺和錢包受影響。Infura表示已為受影響的組件擴容,正在進行系統恢復操作。[2020/11/11 12:20:32]
修復方案
除了判斷交易事務success之外,還應二次判斷充值錢包地址的balance是否準確的增加。其實這個二次判斷可以通過Event事件日志來進行,很多中心化交易所、錢包等服務平臺會通過Event事件日志來獲取轉賬額度,以此判斷轉賬的準確性。但這里就需要特別注意合約作惡情況,因為Event是可以任意編寫的,不是強制默認不可篡改的選項:
摩根大通區塊鏈負責人開始領導基于以太坊的銀行間信息網絡:金色財經報道,根據周四發給員工的備忘錄,摩根大通區塊鏈負責人Christine Moy已晉升,開始領導該銀行基于以太坊的銀行間信息網絡(IIN)。[2020/10/9]
emitTransfer(from,to,value);//value等參數可以任意定義
作為平臺方,在對接新上線的代幣合約之前,應該做好嚴格的安全審計,這種安全審計必須強制代幣合約方執行最佳安全實踐。作為代幣合約方,在編碼上,應該嚴格執行最佳安全實踐,并請第三方職業安全審計機構完成嚴謹完備的安全審計。
后記Q&A
Q:為什么我們采取這種披露方式?
A:本質是與攻擊者賽跑,但是這個生態太大,我們的力量不可能覆蓋全面,只能盡我們所能去覆蓋,比如我們第一時間通知了我們的客戶,然后是慢霧區伙伴的客戶,再然后是關注這個生態的安全同行的客戶,最終不得不披露出細節。
數據:以太坊盈利地址數量續刷新高:Glassnode數據顯示,盈利的ETH地址數量每天都在刷新歷史高點。今天早些時候,最高紀錄為26,461,041.375,不過,這一紀錄很快被另一個新高26,537,344.958進一步打破。這進一步表明,虧損的ETH地址總數為17340 657.250,為4個月來的最低水平。(CoinGape)[2020/7/23]
Q:為什么說披露的不僅僅是漏洞,而是攻擊?
A:其實,以我們的風格,我們一般情況下是不會單純去提漏洞,漏洞這東西,對我們來說太普通,拿漏洞來高調運作不是個好方式。而攻擊不一樣,攻擊是已經發生的,我們必須與攻擊者賽跑。披露是一門藝術,沒什么是完美的,我們只能盡力做到最好,讓這個生態有安全感。
Q:至少3619份存在「假充值」漏洞風險,這些代幣該怎么辦?
A:很糾結,一般來說,這些代幣最好的方式是重發,然后新舊代幣做好「映射」。因為這類代幣如果不這樣做,會像個「定時炸彈」,你不可能期望所有中心化交易所、中心化錢包等平臺方都能做好安全對接,一旦沒做好這個“假充值”漏洞的判斷,那損失的可是這些平臺方。而如果平臺方損失嚴重,對整個市場來說必然也是一種損失。
Q:有哪些知名代幣存在「假充值」漏洞?
A:我們不會做點名披露的事。
Q:有哪些交易所、錢包遭受過「假充值」漏洞的攻擊?
A:恐怕沒人會公開提,我們也不會點名。
Q:這些代幣不重發是否可以?
A:也許可以,但不完美。不選擇重發的代幣要么很快是發布主網就做「映射」的,要么得做好通知所有對接該代幣的平臺方的持續性工作。
Q:為什么慢霧可捕獲到這類攻擊?
A:我們有健壯的威脅情報網絡,捕獲到異常時,我們默認直覺會認為這是一種攻擊。
Q:除了USDT、以太坊代幣存在「假充值」漏洞風險,還有其他什么鏈也存在?
A:暫時不做披露,但相信我們,「假充值」漏洞已經成為區塊鏈生態里不可忽視的一種漏洞類型。這是慢霧安全團隊在漏洞與攻擊發現史上非常重要的一筆。
更多精彩內容,關注鏈聞ChainNews公眾號,或者來微博**@鏈聞ChainNews**與我們互動!轉載請注明版權和原文鏈接!
來源鏈接:mp.weixin.qq.com
本文來源于非小號媒體平臺:
鏈聞研究院
現已在非小號資訊平臺發布1篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/3626929.html
以太坊ETH漏洞風險安全
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
起底「黑暗幽靈」戰隊:做空幣價,打劫過所有頭部交易所,除了幣安
Reserve協議的最初版本將包含一種總體而言中心化的與法幣錨定的數字貨幣,隨著時間的推移,每個協議組成部分將逐漸轉移到鏈上,并逐漸離開創始團隊的控制,最終變得完全去中心化.
1900/1/1 0:00:00NEO看漲期權 代碼周NEO看漲0528期權標的NEO合約類型歐式看漲期權計價單位USDT最小價格單位0.0001USDT合約比例1:1.
1900/1/1 0:00:00北京時間2019年05月07日,區塊鏈安全公司Zeppelin對以太坊上的DeFi明星項目MakerDAO發出安全預警,宣稱其治理合約存在安全漏洞,希望已鎖倉參與投票的用戶盡快解鎖MKR提并出.
1900/1/1 0:00:00尊敬的BITKER用戶:BITKER將于2019年4月23日17點正式開放XGP/USDT和XGP/BTC交易對。充提以開放我們的使命是改變人們每天購買和生產商品和服務的方式.
1900/1/1 0:00:00據巴比特App數據顯示,截至05月21日09:00,比特幣當前價格為$7891.12(¥55395.66),上漲0.1%,換手率為16.49%,比特幣市值占比56.9%.
1900/1/1 0:00:00「門頭溝」是位于日本東京的一家比特幣交易平臺MT.Gox的中譯名。早在2010年,「門頭溝」就開展了比特幣交易業務,是最早參與這項業務的平臺之一.
1900/1/1 0:00:00