9月27日,Bitfinex的一個主要錢包以7676
將int轉成Hexhttps://github
判斷是否可以被2整除,如果不行需要在字符開頭添加一個0,這里主要是為了能夠成功的將數據2個1組寫入到buffer。https://github
if(a
returna;}
以出錯的示例數據:33974229950.550003進行分析,經過intToBuffer函數中的intToHex和padToEven處理后得到7e9059bbe.8ccd,這部分瀏覽器js和nodejs的結果都是一致的。
不一致的地方是在newBuffer的操作:
newBuffer(padToEven(hex.slice(2)),'hex');
《時代》雜志首次發布TIME100 AI:中科院院士曾毅、馬斯克和Sam Altman等入選:金色財經報道,《時代周刊》今天揭曉了首屆世界人工智能最具影響力人物榜單“TIME100 AI”,其中介紹了當今人工智能領域 100 名最具影響力的人物,主要包括中科院院士曾毅、OpenAI創始人Sam Altman 、Google DeepMind創始人Demis Hassabis、a16z聯創Marc Andreessen、創新工場首席執行官李開復等,埃隆·馬斯克也以人工智能公司xAI創始人身份入選。[2023/9/7 13:25:16]
處理方式分析:瀏覽器js
通過webpack打包好js文件并對文件進行引用,然后在瀏覽器上進行調試分析。
Celsius向FalconX轉入5940萬美元的山寨幣:金色財經報道,加密貨幣貸款機構Celsius Network向機構加密貨幣交易所 FalconX 存入了總計 5940 萬美元的山寨幣,包括1360萬美元的MATIC、1070萬美元LINK和730萬美元的AAVE 。美國破產法院此前已批準這家加密貨幣貸款機構從7月份開始出售其持有的山寨幣,因此此舉可能為了換取比特幣和以太坊。
金色財經此前報道,Celsius Network在周一早些時候轉移了850萬美元的LINK、780萬美元的SNX和300萬美元的BNB代幣,還轉移了價值超過100萬美元的ZRX、1INCH和黃金穩定幣 XAUT。[2023/7/18 11:00:23]
首先輸入的示例字符33974229950.550003會進入到intToBuffer的函數中進行處理。同步分析intToBuffer的處理過程,這部分和」關鍵代碼分析「部分的代碼邏輯是一樣的,處理轉換部分得到的結果是7e9059bbe.8ccd。接下來分析如何將轉換后的字符填充進入的buffer中,通過這步可以得到buffer的內容是126,144,89,187,14,140,205對應的是7e,90,59,bb,e,8c,cd。
近30天以太坊NFT市場盈利地址數量為51,488個:金色財經報道,據NFTGo數據顯示,近24小時以太坊NFT市場買家地址數量為6,792個,賣家地址數量為6,681個。近30天盈利地址數量為51,488個,虧損地址數量為443,610個。
此外,當前以太坊NFT市場情緒指數為31,等級為“Cool”。注:NFT市場情緒指數是根據波動率、交易量、社交媒體和谷歌趨勢計算得出。[2023/7/3 22:14:12]
>0x7e->126>0x90->144>0x59->89>0xbb->187>0xe->14>0x8c->140>0xcd->205
這里發現e.這部分的小數點消失了,于是開始解小數點消失之迷,追蹤到hexWrite這個函數,這個函數會將得到的數據2個一組進行切分。然后用了parseInt對切分后的數據進行解析。
NFT項目“哥布林”Goblintown開發公司Truth Labs宣布啟動合約升級和遷移:金色財經報道,NFT項目“哥布林”Goblintown開發公司Truth Labs在社交媒體宣布將啟動合約升級和遷移,旨在確保未來執行5%的特許權使用費率,此外該公司還宣布將更新goblintown、Illuminati NFT、The187和Grumpls四個NFT系列的元數據。根據Truth Labs披露信息顯示,相關NFT系列將在美東時間2023年4月13日停止在Blur平臺上出價,NFT會在合約升級和遷移后新的NFT將會在24小時內空投給當前持有者,之后會對所有藏品系列強制執行5%的特許權使用費率。[2023/4/13 14:00:32]
然而parseInt('e.',16)->14===parseInt('e',16)->14消失的小數點被parseInt吃掉了,導致最終寫入到buffer中的數據發生了錯誤,寫入buffer的值是7e9059bbe8ccd。
以太坊客戶端Nethermind已上線轉譯器Warp2.0:6月21日消息,以太坊客戶端 Nethermind 開發人員 @0xGai_在社交媒體表示,已上線轉譯器 Warp 2.0。Warp 2.0 支持將 Solidity 合約轉換為 Cairo,以部署到 StarkNet 上。[2022/6/21 4:42:51]
處理方式分析: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/1497
https://blog.deversifi.com/23-7-million-dollar-ethereum-transaction-fee-post-mortem/
https://www.chainnews.com/news/611706276133.htm
來源鏈接:mp.weixin.qq.com
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
慢霧
慢霧
慢霧科技是一家專注區塊鏈生態安全的國家高新技術企業,通過「威脅發現到威脅防御一體化因地制宜的安全解決方案」服務了全球許多頭部或知名的項目。慢霧科技的安全解決方案包括:安全審計、威脅情報、漏洞賞金、防御部署、安全顧問等服務并配套有加密貨幣反洗錢、假充值漏洞掃描、漏洞監測、被黑檔案庫、智能合約防火墻、SafeStaking等SAAS型安全產品,已有商業客戶上千家。慢霧慢霧科技慢霧AML慢霧安全Slowmist查看更多以太坊
鏈聞消息,穩定幣初創公司AngleLabs完成500萬美元種子輪融資,AndreessenHorowitz領投.
1900/1/1 0:00:00親愛的大幣網(Dcoin)用戶:為期三周?“Dcoin秋季合約精英賽”活動已圓滿結束,感謝大家的熱情參與!此次參與人數超過4872人,總獎池達到160K.
1900/1/1 0:00:00十部門聯合發聲 近日,央行等十部門聯合發文,關于進一步防范和處置虛擬貨幣交易炒作風險的通知。《通知》明確規定了虛擬貨幣不具有與法定貨幣等同的法律地位;虛擬貨幣相關業務活動屬于非法金融活動;境外虛.
1900/1/1 0:00:00尊敬的XT用戶: THETA錢包升級已完成,XT現已恢復THETA充值與提幣業務,暫停期間給您帶來的不便,敬請諒解.
1900/1/1 0:00:00幣圈“最強大腦”知識搶答活動已于9月22日上午結束,平臺已為中獎用戶發放獎勵,詳情請看公告最下方中獎名單。下一期幣圈“最強大腦”知識搶答活動將于9月28日上午10:00準時開始,敬請期待.
1900/1/1 0:00:00尊敬的XT用戶: 為了更好地服務用戶,XT現已開通PALG-TRC10的提現通道。感謝您對XT.COM的支持與信任!XT.COM團隊2021年9月29日Connext宣布與LayerSwap建立.
1900/1/1 0:00:00