SharkTeam:UwU Lend攻击事件分析
字数 2130 2025-08-19 12:40:55
UwU Lend攻击事件技术分析与防范教学文档
1. 事件概述
2024年6月10日,UwU Lend遭受攻击,损失约1930万美元。攻击者通过操纵sUSDe代币价格,利用借贷和清算机制漏洞获利。
2. 攻击技术细节分析
2.1 攻击者信息
- 攻击者地址:0x841dDf093f5188989fA1524e7B893de64B421f47
- 攻击合约:0x21c58d8f816578b1193aef4683e8c64405a4312e
- 目标合约:UwU Lend金库合约(uSUSDE、uDAI、uUSDT)
2.2 攻击交易流程
攻击者共发起3笔攻击交易,以第一笔为例(0x242a0fb4fde9de0dc2fd42e8db743cbc197ffa2bf6a036ba0bba303df296408b):
2.2.1 闪电贷准备阶段
从多个平台借入大量代币:
- AaveV3:159,053.16 WETH和14,800 WBTC
- AaveV2:40,000 WETH
- Spark:91,075.70 WETH和4,979.79 WBTC
- Morpho:301,738,880.01 sUSDe, 236,934,023.17 USDe和100,786,052.15 DAI
- Uniswap V3:60,000,000 FRAX和15,000,000 USDC
- Balancer:4,627,557.47 GHO和38,413.34 WETH
- Maker:500,000,000 DAI
总计约:
- 328,542.2 WETH
- 19,779.79 WBTC
- 600,786,052.15 DAI
- 301,738,880.01 sUSDe
- 236,934,023.17 USDe
- 4,627,557.47 GHO
- 60,000,000 FRAX
- 15,000,000 USDC
2.2.2 价格操纵阶段
通过兑换(exchange)操作控制5个Curve Finance交易池中的USDe价格:
- USDecrvUSD池:8,676,504.84 USDe兑换成8,730,453.49 crvUSD
- USDeDAI池:46,452,158.05 USDe兑换成14,389,460.59 DAI
- FRAXUSDe池:14,477,791.69 USDe兑换成46,309,490.86 FRAX
- GHOUSDe池:4,925,427.20 USDe兑换成4,825,479.07 GHO
- USDeUSDC池:14,886,912.83 USDe兑换成14,711,447.94 USDC
这些操作导致5个资金池中的USDe价格降低,最终导致sUSDe价格大跌。
2.2.3 借贷与清算阶段
- 创建借贷头寸:存入WETH、WBTC和DAI,借贷sUSDe(因价格大跌,可借出更多sUSDe)
- 反向操作拉高sUSDe价格
- 借贷头寸价值超过抵押价值,触发清算条件
- 批量清算借贷头寸,获得清算奖励uWETH
- 偿还贷款,提取标的资产(WETH, WBTC, DAI和sUSDe)
- 将sUSDe再次存入LendingPool,借出更多其他资产(DAI和USDT)
- 兑换代币偿还闪电贷,最终获利1,946.89 ETH
2.3 价格操纵机制
sUSDe价格由11个价格计算得到:
- 前10个由Curve Finance提供
- 最后1个由Uniswap V3提供
攻击者操纵的5个Curve交易池:
- USDe/rvUSD
- USDe/DAI
- FRAX/USDe
- GHO/USDe
- USDe/USDC
价格计算涉及三个来源:
- Chainlink提供的price(不可操纵)
- Curve Finance交易池的price_oracle(0)
- Curve Finance交易池的get_p(0)
攻击者通过操纵交易池的代币数量来影响get_p(0)返回值,进而操纵最终价格。
3. 漏洞本质分析
攻击利用了以下关键漏洞:
- 价格预言机依赖问题:过度依赖可操纵的链上价格源
- 借贷机制设计缺陷:允许短时间内大额价格波动影响借贷和清算逻辑
- 缺乏价格异常检测:没有对异常价格波动进行监控和阻断
4. 安全防范建议
4.1 价格预言机改进
- 采用混合预言机方案,结合链下数据源
- 设置价格波动阈值,超出范围时暂停相关操作
- 使用时间加权平均价格(TWAP)而非即时价格
4.2 借贷机制优化
- 引入借贷冷却期,防止短时间内大额借贷
- 设置最大借贷比例,防止过度杠杆
- 实现动态清算阈值,考虑市场波动性
4.3 系统审计与监控
- 项目上线前必须进行第三方专业审计
- 实现实时交易监控系统,检测异常模式
- 建立应急响应机制,发现攻击可快速暂停系统
4.4 开发实践建议
- 遵循安全开发框架和最佳实践
- 进行全面的测试,包括极端情况测试
- 实现模块化设计,便于安全升级
5. 总结
UwU Lend攻击事件展示了DeFi项目中价格预言机操纵的严重风险。开发者必须重视:
- 价格源的安全性和多样性
- 系统对极端市场条件的鲁棒性
- 持续的安全监控和应急响应能力
通过多层次的防御措施和严格的安全实践,可以有效降低类似攻击的风险。