買以太坊 買以太坊
Ctrl+D 買以太坊
ads
首頁 > LTC > Info

UFF:慢霧深度解析 Bitfinex 天價手續費轉賬:BUG+顯示錯誤「釀成大錯」_INT

Author:

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

撰文:Thinking@慢霧安全團隊

事件背景

分析源自一筆轉賬金額10wUSDT,手續費卻高達7,676枚ETH的天價手續費交易。https://etherscan

將int轉成Hexhttps://github

判斷是否可以被2整除,如果不行需要在字符開頭添加一個0,這里主要是為了能夠成功的將數據2個1組寫入到buffer。https://github

if(a

returna;}

以出錯的示例數據:33974229950.550003進行分析,經過intToBuffer函數中的intToHex和padToEven處理后得到7e9059bbe.8ccd,這部分瀏覽器js和nodejs的結果都是一致的。

慢霧:Distrust發現嚴重漏洞,影響使用Libbitcoin Explorer3.x版本的加密錢包:金色財經報道,據慢霧區消息,Distrust 發現了一個嚴重的漏洞,影響了使用 Libbitcoin Explorer 3.x 版本的加密貨幣錢包。該漏洞允許攻擊者通過破解 Mersenne Twister 偽隨機數生成器(PRNG)來訪問錢包的私鑰,目前已在現實世界中造成了實際影響。

漏洞詳情:該漏洞源于 Libbitcoin Explorer 3.x 版本中的偽隨機數生成器(PRNG)實現。該實現使用了 Mersenne Twister 算法,并且僅使用了 32 位的系統時間作為種子。這種實現方式使得攻擊者可以通過暴力破解方法在幾天內找到用戶的私鑰。

影響范圍:該漏洞影響了所有使用 Libbitcoin Explorer 3.x 版本生成錢包的用戶,以及使用 libbitcoin-system 3.6 開發庫的應用。

已知受影響的加密貨幣包括 Bitcoin、Ethereum、Ripple、Dogecoin、Solana、Litecoin、Bitcoin Cash 和 Zcash 等。

風險評估:由于該漏洞的存在,攻擊者可以訪問并控制用戶的錢包,從而竊取其中的資金。截至 2023 年 8 月,已有超過 $900,000 美元的加密貨幣資產被盜。

解決方案:我們強烈建議所有使用 Libbitcoin Explorer 3.x 版本的用戶立即停止使用受影響的錢包,并將資金轉移到安全的錢包中。請務必使用經過驗證的、安全的隨機數生成方法來生成新的錢包。[2023/8/10 16:18:20]

不一致的地方是在newBuffer的操作:

慢霧MistTrack:DeFi項目Pickle Finance pDAI池被盜資金再次發生異動,多次使用Uniswap進行兌換:據慢霧MistTrack監測信息顯示,2020-11-22 攻擊 pickle pDAI池的黑客地址(0x701781...7a4E08)繼1月8日異動后,再次于1月14日發生異動。此前黑客地址轉移了1500萬DAI到五個新地址,現除了地址5(0x64bA3e...fF62DB),其余四個地址均發生異動,其中地址1(0x607d65...04e461)和地址2(0x17d4fe...2b7a39)分別向另一個地址3(0x157b0f...862a01)轉入400萬DAI。除此之外,慢霧MistTrack監測到1月9日、11日,黑客均向地址3(0x157b0f...862a01)分別轉入176萬DAI、300萬DAI,緊接著地址3(0x157b0f...862a01)于當天通過Uniswap、1inch將一部分DAI兌換成CORN或COMP,另一部分DAI轉到地址1(0x607d65...04e461)、地址2(0x17d4fe...2b7a39)。

目前地址1(0x607d65...04e461)有1億9千萬cDAI,地址2(0x17d4fe...2b7a39)有4億3千萬cDAI,地址3(0x157b0f...862a01)有32萬DAI,地址5(0x64bA3e...fF62DB)有400萬 DAI。[2021/1/15 16:15:10]

newBuffer(padToEven(hex.slice(2)),'hex');

慢霧余弦:解決數據安全問題最優解是構建零信任安全架構:金色財經現場報道,7月5日,由巴比特×算力智庫聯合主辦的《隱私計算:讓數據安全有序流動起來》主題會議上,慢霧科技創始人余弦做了主題為《區塊鏈安全建設之道》的演講。余弦表示,保障數據安全的目標是要實現資產0損失和隱私0泄露,但是人最終會成為所有安全的最大薄弱點,在數據收集、存儲、加工、使用、提供、交易、公開等環節都需要加強保障。區塊鏈僅是解決信任問題的一種復雜技術方案,面對安全問題,區塊鏈也自身難保。所以解決數據安全問題,最優的解決方案是構建零信任安全架構,明白各條鏈路的安全策略。[2020/7/5]

處理方式分析:瀏覽器js

通過webpack打包好js文件并對文件進行引用,然后在瀏覽器上進行調試分析。

首先輸入的示例字符33974229950.550003會進入到intToBuffer的函數中進行處理。

分析 | 慢霧:韓國交易所 Bithumb XRP 錢包也疑似被黑:Twitter 上有消息稱 XRP 地址(rLaHMvsPnPbiNQSjAgY8Tf8953jxQo4vnu)被盜 20,000,000 枚 XRP(價值 $6,000,000),通過慢霧安全團隊的進一步分析,疑似攻擊者地址(rBKRigtRR2N3dQH9cvWpJ44sTtkHiLcxz1)于 UTC 時間 03/29/2019?13:46 新建并激活,此后開始持續 50 分鐘的“盜幣”行為。此前慢霧安全團隊第一時間披露 Bithumb EOS 錢包(g4ydomrxhege)疑似被黑,損失 3,132,672 枚 EOS,且攻擊者在持續洗幣。更多細節會繼續披露。[2019/3/30]

聲音 | 慢霧預警:Fastwin再次被攻破,攻擊者獲利2000多枚EOS:根據慢霧威脅情報系統捕獲,今日(1月31日)凌晨前后,知名競技類EOS DApp Fastwin再次被攻破,攻擊者獲利2000多枚EOS,攻擊者是此前攻擊 BETX 的同一批賬號。慢霧安全團隊提醒類似項目方全方面做好合約安全審計并加強風控策略,攻擊者們已經開啟了狩獵攻擊模式。[2019/1/31]

同步分析intToBuffer的處理過程,這部分和」關鍵代碼分析「部分的代碼邏輯是一樣的,處理轉換部分得到的結果是7e9059bbe.8ccd。

接下來分析如何將轉換后的字符填充進入的buffer中,通過這步可以得到buffer的內容是126,144,89,187,14,140,205對應的是7e,90,59,bb,e,8c,cd。

>0x7e->126>0x90->144>0x59->89>0xbb->187>0xe->14>0x8c->140>0xcd->205

這里發現e.這部分的小數點消失了,于是開始解小數點消失之迷,追蹤到hexWrite這個函數,這個函數會將得到的數據2個一組進行切分。然后用了parseInt對切分后的數據進行解析。

然而parseInt('e.',16)->14===parseInt('e',16)->14消失的小數點被parseInt吃掉了,導致最終寫入到buffer中的數據發生了錯誤,寫入buffer的值是7e9059bbe8ccd。

處理方式分析:nodejs

由于瀏覽器上出問題的是7_**__**_e9059bbe.8ccd在寫入buffer的時候小數點被parseInt吃掉了導致數據出錯,但是經過分析,node的數據也是錯誤的,且產生錯誤的原因是和瀏覽器的不一樣。

首先我們先看下如下的示例:

node三組不同的數據填充到buffer得到的結果居然是一樣的,經過分析node的buffer有個小特性,就是2個一組切分后的數據,如果沒法正常通過hex解析的,就會把那一組數據以及之后的數據都不處理了,直接返回前面可以被正常處理的那部分數據。可以理解為被截斷了。這部分可以參考node底層的buffer中node_buffer.cc中的代碼邏輯。

>newBuffer('7e9059bbe','hex')>newBuffer('7e9059bbe.8ccd','hex')>newBuffer('7e9059bb','hex')

執行結果的比較

node由于會將原始數據7e9059bbe.8ccd中的e.及之后的數據進行截斷,所以最終錯誤的值是7e9059bb,相比正確的值07e9059bbe小。

node的執行結果:

瀏覽器由于會將原始數據7e9059bbe.8ccd中的.吃掉,所以最終錯誤的值是7e9059bbe8ccd,相比正確的值07e9059bbe大很多。

瀏覽器的執行結果:

問題的原因

ethjs-util的intToBuffer函數不支持浮點型的數據,且在這個函數中沒有判斷傳入的變量類型,來確保變量類型是預期內的。由于ethereumjs的toBuffer引用了ethjs-util的intToBuffer進行處理,也沒有對數據進行檢查。導致了這次事件的發生,所幸最終善良的礦工歸還了「天價手續費7626ETH」。

吸取的教訓

從第三方的庫的角度來看,在編碼過程中應該要遵循可靠的安全的編碼規范,在函數的開頭要對傳入的數據進行合法性的檢查,確保數據和代碼邏輯是按照預期內執行。

從庫的使用者的角度來看,使用者應該要自行閱讀第三方庫的開發文檔和對接文檔,并且也要對代碼中接入第三方庫的邏輯進行測試,通過構造大量的數據進行測試,確保業務上能夠正常按照期望執行,保證高標準的測試用例的覆蓋率。

參考資料:https://github.com/ethereumjs/ethereumjs-monorepo/issues/1497https://blog.deversifi.com/23-7-million-dollar-ethereum-transaction-fee-post-mortem/https://www.chainnews.com/news/611706276133.htm

Tags:UFFBUFFFERINTBuffer FinanceBuffSwapREEFER TOKENpoint幣最新消息

LTC
人工智能:《2021中國高相關度區塊鏈授權專利排行》發布:螞蟻集團以631件排名第一_INCO

巴比特訊,9月27日,知識產權研究機構IPRdaily與incoPat創新指數研究中心聯合發布《2021年中國高相關度區塊鏈授權發明專利排行》.

1900/1/1 0:00:00
LOCK:報告:全球市值排名前百企業中有81家使用區塊鏈技術_LOC

據Forkast9月25日報道,自2014年僅有兩家公司——PayPal和WaltDisney涉足區塊鏈到現在,區塊鏈技術的采用已經呈指數級增長.

1900/1/1 0:00:00
區塊鏈:于佳寧:NFT需要適用相應行業法律法規_數字資產類應用案例包括

據經濟日報報道,中國通信工業協會區塊鏈專委會輪值主席于佳寧表示,隨著數字經濟的發展,未來數據將成為企業最重要的資產之一.

1900/1/1 0:00:00
MOD:數字貨幣高速跨境轉賬或令銀行損失6000億美元_Arbitrage Analysis Beyond Commodity

據彭博社9月14日報道,數字貨幣促成的高速跨境轉賬恐令銀行損失6000億美元,因為現有的面向零售客戶的跨境支付又慢又貴.

1900/1/1 0:00:00
區塊鏈:斯坦福萬字研討:區塊鏈將幫助監管科技突破壁壘,刺激金融市場的監管活力_dogechain幣幣情

原文標題|《金融市場監管的活力:利用監管技術》原文作者|?格奧爾格·林格,法律與金融學教授 編譯整理|白澤研究院 文前注解: 近幾年,合規科技和監管科技先后成為金融領域的新熱詞.

1900/1/1 0:00:00
ROLL:ETH Layer2盤點系列之 — 為什么需要Layer2?_Gasify

ETH與BTC不同,它不僅是ProofofWork的區塊鏈,同時也是一個虛擬機。虛擬機意味著,ETH上不僅可以實現轉賬類的交易,還可以實現邏輯、條件或狀態更復雜的交易.

1900/1/1 0:00:00
ads