USM遭遇攻击,损失约70.83枚ETH
2026-08-10
42 次阅读
RSS订阅
- USM合约遭遇攻击,造成约70.83枚ETH损失
- defund()赎回函数中的ethFromDefund()定价逻辑存在缺陷
- 该函数采用算术平均值核算对价,不具备拆分不变性
- 攻击者通过64次小额赎回操作套利,单次大额赎回收益更低
- 状态收缩系数与整数取整机制进一步放大了套利空间
Odaily星球日报讯 USM 合约 defund()赎回函数中的 ethFromDefund()定价逻辑存在缺陷。该函数在单次赎回计算中,采用当前 FUM 卖出价与预估终期 FUM 卖出价的算术平均值核算对价,但该算法不具备拆分不变性。叠加单次赎回附带的状态收缩系数 adjShrinkFactor 与整数取整机制后,同等数量的 FUM 资产拆分为 64 次小额赎回操作,最终可提取的以太坊总量将远高于一次性大额赎回所得。
📰 来源:https://www.okx.com/zh-hans/feed/post/84237624944928
💬 引用锚点
USM合约因赎回函数定价逻辑缺陷遭攻击,导致约70.83枚ETH损失。
该函数算术平均值算法不具备拆分不变性,攻击者通过多次小额赎回套利获利。
💡 一句话定义:
USM协议因赎回函数定价逻辑缺陷遭攻击,损失约70.83枚ETH。
📈 核心数据:
- 攻击利用ethFromDefund()函数拆分不变性缺失漏洞
- 将同等FUM资产拆分为64次小额赎回获取超额ETH
- 损失约70.83枚ETH
🧭 快速步骤:
- 修复ethFromDefund()定价逻辑确保拆分不变性
- 引入保护机制防止拆分套利
- 审计合约安全并修复缺陷
常见问题
USM合约遭遇攻击造成了多少损失?▼
USM合约攻击导致约70.83枚ETH的损失。
这次攻击的根本原因是什么?▼
攻击的根本原因是USM合约中的ethFromDefund()函数定价存在缺陷,对每次赎回的当前和预计最终FUM卖出价格取平均值,缺乏拆分不变性。
什么是拆分不变性缺失带来的漏洞?▼
由于adjShrinkFactor和整数舍入的影响,攻击者可以将相同数量的FUM拆分成多次小额赎回(例如64次),每次赎回比一次性大额赎回获得更多ETH,从而从漏洞中获利。
攻击者是如何利用这个漏洞的?▼
攻击者通过将大额定赎拆分为多次小额赎回,利用定价公式中缺乏拆分不变性的缺陷,每次赎回都获得比单次大额定赎更多的ETH回报,累计获取了约70.83枚ETH的收益。
这个漏洞对USM合约的定价机制有何影响?▼
该漏洞暴露了ethFromDefund()函数在计算赎回价格时的设计缺陷,取当前价格和预计最终价格的平均值无法保证拆分不变性,导致小额多次赎回比大额一次性赎回更有利可图,破坏了定价的公平性。
💬 评论 (0)
发表评论