原文:《正处于“刮骨疗” 自救的SushiSwap,今日又是如何被黑客攻击的?》
在严峻的财务压力下,黑客又来一击,那在黑客的打击下,SushiSwap能否走出自救的道路?
2023年4月9日,据BeosinEagleEye态势感知平台消息, SushiswapRouteProcessor2合约遭受攻击,部分对合约授权过的用户资金被黑客转移,涉及金额约1800ETH,约334万美元。
据了解,SushiSwap 流动性挖矿项目,克隆自 Uniswap,最大的不同是其发行了 SUSHI 代币,团队希望用 SUSHI 通证经济模型,优化 Uniswap。但 Uniswap 创始人 Hayden Adams 表示,Sushi 只是任何有能力的开发人员通过一天的努力创造出来的东西,试图利用炒作和 Uniswap 创造的价值来获利。
AVAX市值超过SOL市值:金色财经报道,Avalanche的原生代币AVAX市值超过Solana的原生代币SOL,达到34.7亿美元,而SOL为34.3亿美元。两种代币均下跌,SOL在过去24小时内大幅下跌5.7%,在过去一周内下跌22.7%。行情波动较大,请做好风险控制。[2022/12/30 22:15:28]
其实在本次攻击之前,这个项目还有另外的“坎坷”,去年12 月 6 日,上任仅两个月的 Sushi 新任“主厨” Jared Grey 于治理论坛发起了一项新提案。在该提案中,Jared 首次向外界披露了 Sushi 当前严峻的财务状况,并提出了一个暂时性的自救方案。(相关阅读:《Sushiswap财库告急,新任“主厨”按下“自救键”》)
正是在这样的压力下,黑客又来一击,那在黑客的打击下,SushiSwap能否走出自救的道路?
0xD275开头地址从Bitfinex取出近12万枚ETH,并通过Aave借出8000万枚USDC:金色财经报道,Etherscan数据显示,0xD275开头地址收到标记为“Bitfinex热钱包”的地址转出的超过117,872枚ETH,随后该地址在Aave上借出8000万枚USDC。[2022/11/21 7:52:33]
我们以其中一笔攻击交易进行事件分析。
0xea3480f1f1d1f0b32283f8f282ce16403fe22ede35c0b71a732193e56c5c45e8
攻击者地址
Messari:Q3雪崩协议NFT销售出现反弹:11月6日消息,加密数据研究机构Messari发文表示,三季度雪崩协议(Avalanche)生态NFT销售出现反弹,其6月份的日均销售额为2.5万美元,7月份的日均销售额为7万美元,这一反弹意味着从第二季度末的低点上涨了180%。[2022/11/6 12:22:30]
0x719cdb61e217de6754ee8fc958f2866d61d565cf
攻击合约
0x000000C0524F353223D94fb76efab586a2Ff8664
被攻击合约
0x044b75f554b886a065b9567891e45c79542d7357
LUNA报2.12美元,24小时跌幅13.51%:金色财经消息,据CoinMarketCap数据,截至发稿,LUNA报2.12美元,24小时跌幅13.51%。
此前消息,据韩国检方透露,Terra创始人DoKwon被列入国际刑警组织通缉名单。[2022/9/26 7:20:59]
被攻击用户
0x31d3243CfB54B34Fc9C73e1CB1137124bD6B13E1
1.攻击者地址(0x1876…CDd1)约31天前部署了攻击合约。
2.攻击者发起攻击交易,首先攻击者调用了processRoute函数,进行兑换,该函数可以由调用者指定使用哪种路由,这里攻击者选择的是processMyERC20。
Nansen以超过1000万美元的价格收购了Ape Board:金色财经消息,Nansen已经收购了DeFi投资组合仪表板Ape Board,具体的收购价格没有透露,但据说超过1000万美元。
两家公司表示,Ape Board的多链覆盖将为交易者提供市场的整体视图,而不需要他们使用多个平台来跟踪他们的投资和分析市场。Nansen计划将其分析与Ape Board的投资组合跟踪相结合,打造一款“一体化的超级应用”。(CoinDesk)[2022/5/18 3:23:48]
3.之后正常执行到swap函数逻辑中,执行的功能是swapUniV3。
4. 在这里可以看到,pool的值是由stream解析而来,而stream参数是用户所能控制的,这是漏洞的关键原因,这里lastCalledPool的值当然也是被一并操控的,接着就进入到攻击者指定的恶意pool地址的swap函数中去进行相关处理了。
5.Swap完成之后,由于此时lastCalledPool的值已经被攻击者设置成为了恶意pool的地址,所以恶意合约调用uniswapV3SwapCallback函数时校验能够通过,并且该函数验证之后就重置了lastCalledPool的值为0x1,导致swapUniV3函数中最后的判断也是可有可无的,最后可以成功转走指定的from地址的资金,这里为100个WETH。
本次事件攻击者主要利用了合约访问控制不足的问题,未对重要参数和调用者进行有效的限制,导致攻击者可传入恶意的地址参数绕过限制,产生意外的危害。
针对本次事件,Beosin安全团队建议:
1.在合约开发时,调用外部合约时应视业务情况限制用户控制的参数,避免由用户传入恶意地址参数造成风险。
2.用户在与合约交互时应注意最小化授权,即仅授权单笔交易中实际需要的数量,避免合约出现安全问题导致账户内资金损失。
Beosin
企业专栏
阅读更多
金色财经 善欧巴
Chainlink预言机
金色早8点
白话区块链
Odaily星球日报
Arcane Labs
欧科云链
深潮TechFlow
BTCStudy
MarsBit
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。