CertiK:一朝跌落雲端,Yam Finance智能合約漏洞事件分析
CertiK
本文约1114字,阅读全文需要约4分钟
Yam Finance上線一天便發現重大漏洞,項目遭受極大的打擊。究竟發生了什麼?
紅薯剛種下,就得挖出來了?
今日DeFi領域再次發生一起魔幻事件,呼聲極高的紅薯項目一經上線,流動性礦工們就開始瘋狂湧入。短短8個小時內,Yam Finance中鎖倉總價值就超過2億美元。 COMP挖礦帶動了DeFi產業出圈,而YAM直接帶動了DeFi頭部項目集體上漲,堪稱“一飛沖天”。
事件背景
二級標題
事件背景
8月12日,YAM Finance官方宣布他們發現了一個智能合約漏洞,並稱該漏洞將生成超出最初設定數量的YAM代幣。在這種情況下,大量的保留代幣將造成治理操作所需的代幣數量過大。這意味著社區將來將沒有足夠的代幣來執行任何治理操作。
圖片來源:
圖片來源:
圖片來源:https://github.com/yam-finance/
上圖中的rebase功能應該執行rebase,以保持穩定的價格。但是,有一行代碼(已標註藍色)在計算totalSupply時,給出了錯誤的結果,這會導致系統保留的代幣數量過多。
這行代碼的正確代碼/計算方程形式應類似於以下代碼/方程:
totalSupply =initSupply.mul(yamsScalingFactor).div(BASE);
那麼是否可以在截止日期之前通過治理操作來修復此漏洞?
第二次調整是在美國東部時間8月13日凌晨4點。
二級標題
二級標題
YAM的現狀
如何避免?
二級標題
如何避免?
CertiK安全團隊強烈建議:
所有區塊鏈項目在正式發布之前不僅需要使用嚴格的軟件測試工具來驗證項目的代碼安全性,更是應該邀請多個第三方區塊鏈安全團隊,做好對區塊鏈項目中代碼的驗證審計工作,並在每次更新代碼後進行重新審計。從而設計一個更好的項目管理系統,以備進行項目緊急更新的需求。







