6 月 6 日,BSC 上的去中心化金融(DeFi)项目$UN 遭受了一次不幸的事件,这是一次涉及闪电贷的有针对性攻击。这是一种典型的 skim 攻击,导致了 26, 000 美元的巨额损失,并展示了经典的 skim 攻击策略,使 UN-LP 配对受损,$UN 价格飙升。最终,攻击者利用这种情况最大化了他们的利润,迅速抛售了$UN 代币。我们一起来看看这个攻击是如何发生的。
攻击者
https://bscscan.com/address/0xf84efa8a9f7e68855cf17eaac9c2f97a9d131366
交易记录
https://bscscan.com/tx/0xff5515268d53df41d407036f547b206e288b226989da496fda367bfeb31c5b8b
攻击合约
https://bscscan.com/address/0x98e241bd3be918e0d927af81b430be00d86b04f9
受攻击合约
https://bscscan.com/address/0x5f739a4ade4341d4aee049e679095bccbe904ee1
资产损失
26, 000 美元
攻击步骤
攻击者通过从 DPPOracle 获得 29, 100, 000, 000, 000, 001, 048, 576 BSC-USD 的闪电贷款;
以 29, 100, 000, 000, 000, 001, 048, 576 BSC-USD 兑换 91, 391, 982, 773, 176, 450, 879, 376 $UN;
将 84, 994, 543, 979, 054, 099, 317, 825 转入 UN-LP 配对;
调用 UN-LP 配对的 skim 函数,将 UN 发送给攻击者。此时, 2, 307, 601, 869, 031, 318, 796, 481 $UN 从 UN-LP 配对转移到 UNStake 合约,导致$UN 价格上涨;
重复第 3 步和第 4 步,大幅增加$UN 价格;
最后,将 55, 441, 019, 173, 629, 144, 550, 663 $UN 兑换为 55, 658, 707, 032, 043, 243, 002, 112 BSC-USD,并获得 26, 558, 707, 032, 043, 241, 953, 536 BSC-USD 的利润。
根本原因
对 BSC 上的$UN 的攻击可以归因于$UN 代币合约内部存在的一个固有缺陷,这个缺陷使攻击者能够利用漏洞从 UN-LP 配对转移$UN 代币,导致$UN 的价格大幅上涨。这个代币合约的缺陷本质上为攻击者提供了一个渠道,用于操纵代币的价值并执行其恶意意图。
Key Code
PoC
https://github.com/MetaTrustLabs/SmartContractAttackPoC/blob/main/test/UN/UN.t.sol
对 BSC 上的$UN 的攻击提醒着区块链行业所面临的不断发展的挑战,以及强大的安全措施的重要性。随着加密生态系统的不断增长和创新,开发者、投资者和交互者都必须保持警惕,积极采取措施保护自己的资产。
虽然这样的事件可能会在短时期让人 FUD,但它们也为社区提供了宝贵的经验教训,促使进一步改进安全协议和风险缓解策略。通过持续的研究、开发和教育努力,区块链行业可以努力构建一个更安全、更有弹性的生态系统,使个人和组织能够充分发挥区块链技术的变革潜力。