作者:PeckShield
原标题:OUSD遭“经典重入攻击”损失770万美元DeFi安全亟待解决
近日,PeckShield监控到DeFi协议OriginProtocol稳定币OUSD遭到攻击,攻击者利用在衍生品平台dYdX的闪电贷进行了重入攻击(Re-entrancyattack),造成价值770万美元的ETH和DAI的损失。
重入攻击是以太坊智能合约上最经典的攻击手段之一,著名的theDAO被盗事件就是攻击者运用重入攻击导致以太坊硬分叉,损失价值5000万美元以太币。
自今年4月起,DeFi项目频遭重入攻击。4月18日,黑客利用Uniswap和ERC777标准的兼容性问题缺陷实施重入攻击;4月19日,Lendf.Me也遭到类似重入攻击;11月14日,黑客利用Akropolis?项目的SavingsModule合约在处理用户存储资产时存在的某种缺陷连续实施了17次重入攻击,损失203万枚DAI。?
经济日报:“币圈”须持续“缩圈”:8月10日,经济日报发文《“币圈”须持续“缩圈”》。文章表示,监管层再次释放出强监管信号,原因在于近期虚拟货币投机炒作活动又有所抬头。公众也应该看到,虚拟货币绝非一本万利的投资产品,要增强风险意识,树立正确的投资理念,远离相关交易炒作活动,还可以主动参与到整治中来,及时举报相关违法违规线索。只要形成整治虚拟货币炒作的强大合力,“币圈”也将持续“缩圈”。[2021/8/10 1:44:53]
北京时间2020年11月17日,PeckShield监控到稳定币OUSD遭到重入攻击。OUSD是OriginProtocol推出的一种与美元挂钩的ERC-20稳定币,用户可通过将基础稳定币存入Origin智能合约来铸造OUSD稳定币,之后该协议会将基础稳定币投资于多个DeFi协议并进行收益耕作,为OUSD持有者赚取回报。
孙宇晨就Justswap上线致币圈的公开信:关于变更为JST流动性挖矿奖励:据最新消息显示,波场TRON创始人兼BitTorrent CEO孙宇晨刚刚发布了就Justswap上线致币圈的公开信,孙宇晨表示:“停止针对于TRX持有者的月度JST空投奖励,变更为JST流动性挖矿奖励。停止对于TRX持有者的JST月度空投奖励,将极大的降低JST的市场流动量,提升JST价值,与此同时,我们将全部奖励用于流动性挖矿,鼓励锁仓TRX,BTT,JST等代币来获得JST奖励,具体活动细则将近期宣布,细则将全部公示!”[2020/8/19]
重入攻击重现凭空创造2050万枚OUSD
韩国对币圈态度日渐明朗:无意禁止交易所 监管加强势在必行:数月以来,投资者一直以来对于韩国官方对待数字货币的态度揣摩不定,今天韩国财长的一席表态终于明确了基调。韩国副总理兼财政部长金东渊今天表示,韩国政府并没有关停数字货币交易的计划。“并没有禁止或压制数字货币市场的意向,目前最为紧迫的任务是对交易所进行监管。”但他同时也表示,“我不建议使用‘货币’这个词,也不想接受它作为法定货币。”韩国央行行长李炬烈当被问及虚拟货币的定义时,他解释说:这种被发行的虚拟货币没有法律实质,也不能保证其价值。[2018/1/31]
PeckShield?通过追踪和分析发现,首先,攻击者从dYdX闪电贷贷出70,000枚ETH;
复盘:两条趋势线突破均有主力买入成交确认:AICoin PRO版K线主力成交数据显示:23日20:35~23日21:35,比特币价格运行至4月19~23日四小时周期的下降趋势线(7305-7189)以及4月7日~23日四小时周期的下降趋势线(7475-7189)附近,并分别于20:35和21:35完成突破。
20:35第一条趋势线突破,突破前后,有4笔,共计950万美元主力买入成交;21:35第二条趋势线突破,突破前后,有7笔,共计1003万美元的主力买入成交。主力大单的迅速跟进确认了两条下降趋势线的突破。
随后,不断有大买单跟进说明了趋势还在持续,直到22:25分出现一笔500万美元的大卖单,趋势告一段落。[2020/4/24]
随后,在UniswapV2中先将17,500枚ETH转换为785万枚USDT,再将所贷剩余的52,500枚ETH?转换为2099万枚DAI;
接下来,攻击者分四次铸造OUSD稳定币:
第一次通过mint()函数铸造OUSD时,攻击者确实在Origin智能合约中存放了750万枚USDT,并获得750万枚OUSD;
第二次通过mintMultiple()多种稳定币函数铸造OUSD时,攻击者在Origin智能合约中存放了2050万枚DAI和0枚假“稳定币”,并在此步骤中通过重入攻击来攻击合约。攻击者将2050万枚DAI和0枚假“稳定币”存入VaultCore中,此时智能合约收到2050万枚DAI,在尝试接收0枚假“稳定币”时,攻击者利用恶意合约进行劫持,在智能合约正常启动铸造2050万枚OUSD之前,调用mint()函数,先恶意增发了2050万枚OUSD,此次恶意增发由VaultCore合约调用rebase()函数实施。
值得注意的是,为顺利实施劫持,攻击者在上述mint()函数调用时,真金白银地存入了2,000枚USDT,同时获得第三次铸币2,000枚OUSD。随后,调用oUSD.mint()函数第四次铸造2050万枚OUSD。
rebase指代币供应量弹性调整过程,即对代币供应量进行“重新设定”。在DeFi领域有一类代币拥有弹性供应量机制,即每个代币持有用户的钱包余额和代币总量会根据此代币价格的变化而等比例变动。此时,攻击者共获得2800.2万枚OUSD,包括抵押的750万枚USDT、2050万枚DAI和2000枚USDT。由于调用rebase()函数,攻击者所获得的OUSD总计上涨至33,269,000枚。?
最后,攻击者先用所获得的33,269,000枚OUSD赎回1950万枚DAI、940万枚USDT、390万枚USDC;再在Uniswap中将1045万枚USDT兑换为22,898枚ETH,将390万枚USDC兑换为8,305枚ETH,将190万枚DAI兑换为47,976枚ETH,共计79,179枚ETH,并将其中70,000枚ETH归还到dYdX闪电贷中。
据PeckShield统计,攻击者在此次攻击中共计获利11,809枚ETH和2,249,821枚DAI,合计770万美元。
对于次攻击事件,OriginProtocol官方回应称,正在积极采取措施,以期收回资金。
随着DeFi生态的蓬勃发展,其中隐藏的安全问题也逐渐凸显,由于DeFi相关项目与用户资产紧密相连,其安全问题亟待解决。
对此,PeckShield相关负责人表示:“此类重入攻击的发生主要是由于合约没有对用户存储的Token进行白名单校验。DeFi是由多个智能合约和应用所组成的’积木组合’,其整体安全性环环相扣,平台方不仅要确保在产品上线前有过硬的代码审计和漏洞排查,还要在不同产品做业务组合时考虑因各自不同业务逻辑而潜在的系统性风控问题。”
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。