时间:2023-08-18|浏览:234
对此,DeFi领域的知名参与者建议用户先将资金提出,以确保资金安全。另外官方此前已建议用户暂停向稳定币池以及BTC保险池进行充值。
截至撰稿时,Harvest合约锁定的资金量已骤降至5.99亿美元,较24小时之前下滑46.42%。
而在此次攻击发生的前一天,DeFi观察者ChrisBlec刚刚揭示了Harvest项目存在巨大的风险:该项目合约锁定的10多亿美元资金完全受匿名开发者的控制,并且开发团队存在刻意隐瞒这一事实的嫌疑。
aelf创始人兼CEO马昊伯针对此事发表了自己的推测:首先需要了解的是,闪电借贷可以无抵押借到很多钱,不管是有多少滑点的AMM,都是有滑点的。而且Curve的曲线虽然在两个币种之间的滑点比较低,但是到极端情况下还是会有不可控的事件发生。
马昊伯猜测,黑客可能是利用闪电借贷借了一大笔钱,然后把Curve的价格搞到十分离谱,然后再到Harvest按照不合适的价格进行单边充值(亏钱的情况下充值),然后利用Curve将钱赎回。这样一来Harvest亏了,黑客就赚了,Curve也因为这波操作价格产生波动。而Curve的所谓亏损其实和Uniswap的LP亏损一样,是一种无常损失,价格会很快恢复。
黑客到底是如何操作的?
像其他闪电贷攻击操作一样,攻击者动作迅速,没有给平台反映的时间,连续7分钟端到端地进行攻击。
1.攻击者到UniswapUSDT-ETHLP合约借了5000wUSDT 2.攻击者在curve合约用11,425,651.360209USDC兑换11,407,812.062025USDT,通过买入大量USDT改变curve的兑换价格,比如能够使1USDT=1.00000xUSDC变为1USDT=11,445,785.907417/11,437,077.011569=?1.00076146168USDC 3.攻击者在fUSDT合约抵押60,666,288.631146USDT获取持币持币凭证71,668,595.794204fUSDT,向harvest充值,harvest会自动向curve提供流动性 4.攻击者在curve合约用11,437,077.011569USDT兑换11,445,785.907417USDC,前面的操作使得curve的价格变为了1USDT=1.00076146168USDC,然后黑客开始用少量的USDT换出了更多的USDC 5.攻击者在fUSDT合约通过第3步获取的71,668,595.794204fUSDT赎回61,093,558.168153USDT,这个步骤表明,黑客已经成功的进行了一次套利,获取了61,093,558.168153USDT-60,666,288.631146USDT=427269.537007USDT
我们看这个利润是哪里来的呢,很明显是harvest在高位在curve从一个错误的方向添加了流动性引起。也就是curve的原始lp没有受到任何损失,黑客获取的是通过让60,666,288.631146USDT亏损产生的利润。
重复2-5步骤
6.攻击者在curve合约用11,425,651.360209USDC兑换11,407,840.0888USDT 7.攻击者在fUSDT合约抵押61,064,321.245384USDT获取持币持币凭证72,458,553.719987fUSDT 8.攻击者在curve合约用11,437,077.011569USDT兑换11,445,757.818914USDC 9.攻击者在fUSDT合约通过第7步获取的72,458,553.719987fUSDT赎回61,489,849.847749USDT
重复2-5步骤
10.攻击者在curve合约用11,425,651.360209USDC兑换11,407,868.045888USDT 11.攻击者在fUSDT合约抵押61,460,640.882068USDT获取持币持币凭证73,252,241.779134fUSDT 12.攻击者在curve合约用11,437,077.011569USDT兑换11,445,729.800332USDC 13.攻击者在fUSDT合约通过第11步获取的73,252,241.779134fUSDT赎回61,884,410.538009USDT
重复2-5步骤
14.攻击者还给UniswapUSDT-ETHLP合约50,165,496.489468USDT
到此完成整个交易
此次攻击主要是HarvestFinance的fToken(fUSDC、fUSDT...)在铸币时采用的是Curvey池中的报价(即使用Curve导致攻击者可以通过巨额兑换操控预言机的价格来控制HarvestFinance中fToken的铸币数量,从而使攻击者有利可图。
对其他项目的警示
在区块链的安全事件中,大多都是由于源代码存在漏洞使得黑客趁虚而入。智能合约受到区块链本身保护,所以智能合约代码可以最大限度的开源和让人阅读。但是代码的公开性使得黑客容易掌握代码的缺陷,进一步利用代码缺陷触发条件改变智能合约执行结果,使得区块链项目存在巨大的经济隐患。所以智能合约代码的开源性需要代码的高可靠性,这种可靠性要求100%正确。
因此,其他开源项目应当始终把网络安全性列为最高优先级,努力为用户提供一个够安全、高性能、体验佳、可信赖的区块链基础设施。
热点:项目
用戶喜愛的交易所
已有账号登陆后会弹出下载