零时科技 || Zenterest 攻击事件分析

零时科技 || Zenterest 攻击事件分析


背景介绍


近期,我们监控到一起针对 Ethereum 的链上攻击事件,https://etherscan.io/tx/0xfe8bc757d87e97a5471378c90d390df47e1b29bb9fca918b94acd8ecfaadc598

被攻击的项目为 Mantra DAO 的 DeFi 项目 Zenterest


该项目是一个 Compound Fork 的项目,提供借贷等功能,不过该项目已经关闭。


零时科技 || Zenterest 攻击事件分析



攻击及事件分析


首先,攻击者利用 Uniswap V3 通过 flash ,借入了 85.0085 WHITE 


零时科技 || Zenterest 攻击事件分析


随后,攻击者将自己的2 000 MPH 转给了Zenterest,并 mint 了 751,165,762,743 / 1e18zenMPH ,即 MPH Token 的 underlying Token (价值 21200 MPH )。


零时科技 || Zenterest 攻击事件分析


在 Compound 中, mintTokenAmount 为 mintAmount 除以exchangeRate(为underlying Token的价值) 


零时科技 || Zenterest 攻击事件分析


exchageRate 的计算方式为


零时科技 || Zenterest 攻击事件分析


其中, totalCash 为 2,130,237,755,166,997,669,234 ,

totalBorrows 为377,279,871,321,643,951,514,656 ,

totalReserves 为336,296,661,332,642,353,710,274 ,

totalSupply 为 1,527,610,653,739 。

exchangeRate 为 28,222,798,550.562313 。


零时科技 || Zenterest 攻击事件分析


所以, mintToken 为 751,165,762,743 。


零时科技 || Zenterest 攻击事件分析


零时科技 || Zenterest 攻击事件分析


接着,攻击者将从 Uniswap 中 flash 闪电贷获得的 85 WHITE Token 转给了 Zenterest。 


零时科技 || Zenterest 攻击事件分析


这里,攻击者是为了操纵 zenWHITE 的 borrowRate ,否则导致 borrowRate 过高,导致攻击失败。


零时科技 || Zenterest 攻击事件分析


然后,攻击者利用 cToken 的 borrow 借出 zenWHITE 的所有余额。


零时科技 || Zenterest 攻击事件分析


漏洞点就出现在 ZenterestPriceFeed 价格预言机上,


零时科技 || Zenterest 攻击事件分析


我们可以看到 ZenterestPriceFeed 的代码如下:


零时科技 || Zenterest 攻击事件分析


其价格是通过 updatePrice 和 updatePriceBatch 来更新的。


零时科技 || Zenterest 攻击事件分析


我们可以看到,此价格预言机中的价格已经570天没有更新,所有价格均已过期,我们找到最近一次更新 MPH Token 价格的交易如下:


零时科技 || Zenterest 攻击事件分析


最近的更新 MPH Token 价格的交易为:https://etherscan.io/tx/0x8938ec223516e0f09d904ee6187032f2038f3f768d754eb19b4f19450e7d185d


零时科技 || Zenterest 攻击事件分析


其价格更新参数的数据结构为:


零时科技 || Zenterest 攻击事件分析


所以,通过 Zenterest Price Oracle 获取的 MPH Token 的价格为 0x35b52f953f951 =944,836,858,607,953 ,而当前实际的价格为 0.4677 USD 。


零时科技 || Zenterest 攻击事件分析


同时,我们可以看到获取的 WHITE Token 的价格为 66,570,137,662,599,764 ,而当前实际的价格为 4200 USD 。

攻击者投入 23200 MPH ,借贷 89.91 WHITE ,根据 Zenterest Price Oracle 获取的价格计算,


零时科技 || Zenterest 攻击事件分析


所以,攻击者可以借出 89.91 WHITE ,攻击者归还从 Uniswap 借到的 85 WHITE 和 0.0085 WHITE利息,最终获利 4.9 WHITE ,价值 21000 USD 。 



总结


本次漏洞的成因是项目已经不再使用,但是 cToken 却没有暂停,且价格预言机的价格没有更新,导致标的资产价格失真,攻击者利用失真的价格来通过借贷进行获利,最终导致攻击者用极少的 MPH 掏空了项目方的 WHITE 代币。




若需了解更多产品信息或有相关业务需求,可扫码关注公众号或移步至官网:

零时科技 || Zenterest 攻击事件分析


微信号noneage

官方网址https://noneage.com/





推荐阅读

REVIEW


零时科技 || Zenterest 攻击事件分析

零时科技 || Zenterest 攻击事件分析

零时科技 || Zenterest 攻击事件分析

零时科技 || Zenterest 攻击事件分析



END


零时科技 || Zenterest 攻击事件分析




点击阅读全文 立刻直达官网

     /www.noneage.com/    

零时科技 || Zenterest 攻击事件分析


原文始发于微信公众号(零时科技):零时科技 || Zenterest 攻击事件分析

版权声明:admin 发表于 2024年8月21日 下午4:30。
转载请注明:零时科技 || Zenterest 攻击事件分析 | CTF导航

相关文章