个WETH,分别借出DAI,USDT,USDC,ARB,WBTC。 (4)然后攻击者(0xdb73eb48)取出55eth,创建新合约(0x33f3fb58)。 (5)攻击者(0xdb73eb48)把55个WETH加入池子,获得6个wstETH: (6)攻击者(0xdb73eb48)调用swap函数,将39725个WETH全部兑换成了2423wsteth。 (7)然后在wsteth价格很高的情况下只使用54.6个wstETH就借出了317个WETH 最后攻击者(0xdb73eb48)将wstEth重新换回WETH,归还Flash Loan,获利离场。 二、漏洞分析 本次攻击的本质是利用Flash Loan对池子中两个token的价格进行操纵,预言机计算比例可以被操纵,导致资产损失。攻击者前三步是将WETH兑换为多种代币的同时也将WETH存入了池子中,使池子的WETH余额变多,最后关键步骤是第六步,将三万多个WETH进行兑换,使得池子中wstEth与WETH的比例出现严重问题,使预言机计算出的兑换比例上升,实现少量wstEth借出更多的WETH。 可以看到在使用WETH兑换wstEth后,计算结果出现明显的增加。 三、安全建议 针对本次攻击事件,开发者在开发过程中应遵循以下注意事项: (1)在开发预言机和流动池时,严格校验是否存在价格操纵问题。 (2)推荐在预言机中使用时间加权算法(TWAP)来计算token价格。 (3)项目上线前,需要向第三方专业的审计团队寻求技术帮助。 About Us SharkTeam的愿景是全面保护Web3世界的安全。团队由来自世界各地的经验丰富的安全专业人士和高级研究人员组成,精通区块链和智能合约的底层理论,提供包括智能合约审计、链上分析、应急响应等服务。已与区块链生态系统各个领域的关键参与者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等建立长期合作关系。 官网:https://www.sharkteam.org Twitter:https://twitter.com/sharkteamorg Discord:https://discord.gg/jGH9xXCjDZ Telegram:https://t.me/sharkteamorg 来源:金色财经lg...