Gate 大门数字货币行情

Balancer 被盗 $120M 漏洞技术分析

频道:区块链行情 日期: 浏览:60

Balancer 被盗 $120M 漏洞技术分析

总结

Balancer 的这次攻击,总结为下面几个原因:

1. 缩放函数使用向下舍入:_upscaleArray 使用mulDown进行缩放,当余额很小时(如 8-9 wei),会产生显著的相对精度损失。

2. 不变值计算对精度敏感:不变值 D 的计算依赖缩放后的 balances 数组,精度损失会直接传递到 D 的计算中,使 D 变小。

3. 缺少不变值变化验证:在交换过程中,没有验证不变值 D 的变化是否在合理范围内,导致攻击者可以反复利用精度损失压低 BPT 价格。

4. Batch Swap 中的精度损失累积:在同一个 batch swap 中,多次交换的精度损失会累积,最终放大为巨大的财务损失。

 

这两个问题精度损失 缺少验证,结合攻击者对边界条件的精心设计,造成了这次损失。

本文仅整理公开市场数据,不构成任何投资或操作建议。根据中国法规,请用户遵守相关法律法规。