收藏本站 网站导航 开放平台 Saturday, July 24, 2021 星期六

慢雾:解析 BSC DeFi 项目 Impossible Finance 遭闪电贷攻击细节

来源 中金网 06-21 21:30
摘要: Impossible Finance 的 DEX 架构参考了 Uniswap v2,但在 Pair 的实现上有所不同,这是导致攻击事件的根本原因。

  区块天眼APP讯 : Impossible Finance 的 DEX 架构参考了 Uniswap v2,但在 Pair 的实现上有所不同,这是导致攻击事件的根本原因。

  原文标题:《「不可思议」 的被黑之旅 —— Impossible Finance 被黑分析》

  撰文:Kong,就职于慢雾安全团队

  据慢雾区消息,币安智能链 (BSC) DeFi 项目 Impossible Finance 遭遇闪电贷攻击。慢雾安全团队第一时间介入分析,并将结果分享如下:

攻击细节分析

  Impossible Finance 的 DEX 架构参考了 Uniswap v2,但在 Pair 的实现上有所不同。Impossible Pair 分别实现了 cheapSwap 与 swap 两个接口。cheapSwap 函数限制了只由 Router 合约可进行调用,swap 函数则是任意用户都可调用进行代币兑换操作。本次攻击事件的根本原因正是出在这种特殊的代币兑换架构上,接下来我们对此次攻击进行具体分析:

  首先攻击者利用闪电贷从 PancakeSwap 中借出大量 WBNB,并最终将其兑换成 IF (Impossible Finance 代币)。

慢雾:解析

  随后攻击者创建了一个由自己控制的代币 AAA (BBB),并与上一步骤中获得的 IF 代币添加流动性。

慢雾:解析

  之后攻击者通过 Router 传入自定的兑换路径 (AAA -> IF -> BUSD) 将 AAA 代币兑换成 BUSD 代币,而问题正是出现在此兑换过程中。通过链上记录我们可以很容易的发现攻击者在将 AAA 代币兑换成 IF 代币的过程中进行了两次兑换操作:

慢雾:解析

  为什么在一次兑换过程中会进行两次兑换操作呢?

  通过分析具体的内部调用流程我们可以发现,攻击者在 Router 合约调用 AAA 合约的 transferFrom 函数将 AAA 代币转入 Pair 合约的过程中,同时调用了一次 Pair 合约的 swap 函数 (即在 transferFrom 函数实现了正常转账与 swap 调用的逻辑)。然后再通过项目设计预期的 cheapSwap 再进行一次正常的代币兑换操作。

慢雾:解析
慢雾:解析
慢雾:解析

  通过以上分析我们可以知道攻击者在一次代币兑换过程中分别通过调用 swap 函数与 cheapSwap 函数进行两次代币兑换操作,最终收到了额外的 BUSD 代币。那么既然是进行兑换操作,理论上每次兑换操作都将导致 K 值的变化,最终使得用户无法获得预期的代币。

  但通过分析 Impossible Pair 的 swap 函数与 cheapSwap 函数的具体逻辑,我们发现一个惊人的情况:在 swap 函数中进行了 K 值检查,而在 cheapSwap 函数却未进行 K 值检查而直接进行了 update 操作。这就导致了攻击者进行了多次兑换操作获得了额外的 BUSD。

慢雾:解析
慢雾:解析
攻击流程
  •   攻击者先通过 PancakeSwap 闪电贷借出 WBNB,并将 WBNB 兑换成 IF 代币。

  •   创建恶意的代币合约 AAA(BBB),并在 Impossible 中添加了 AAA 代币与 IF 代币流动性。

  •   通过 AAA -> IF -> BUSD 路径进行 AAA 代币到 BUSD 代币的兑换,并在 AAA 代币转入 Pair 合约兑换成 IF 代币的过程中进行了一次 IF 代币与 BUSD 的兑换操作,随后再进行正常的 cheapSwap 操作。最终获得了额外的 BUSD 代币。

  •   之后重复以上操作进行获利。

  • 总结

      本次攻击的核心在于 cheapSwap 函数中未进行 K 值检查,导致攻击者可以通过在一次兑换过程中进行多次兑换操作以获得额外的代币。慢雾安全团队建议 DeFi 协议在参考其他项目的基础上进行创新的过程中应该充分的对其新的模型进行检查验证以避免此类安全事故的发生。

      参考交易:

      https://bscscan.com/tx/0x0220704a99ddfb982d26e65cc337f26b77dc057930b7aa1d848cc48ec77984a8

更多区块链消息,请关注下载区块天眼APP,全球区块链监管查询APP 。

DeFi
免责声明:中金网发布此信息目的在于传播更多信息,与本网站立场无关。中金网不保证该信息的准确性、真实性、完整性、有效性等。相关信息并未经过本网站证实,不构成任何投资建议,据此操作,风险自担。
相关新闻 更多

天眼项目周报 | DeFi平台Balanced DAO:治理论坛已上线,正在讨论首个提案

DeFi平台Balanced DAO今日在推特上称,治理论坛现已上线,并准备好进行讨论。社区发起的首个提案是关于降低抵押品要求和移除奖励阈值,目前正在讨论中。

DeFi 波卡 5小时前

DeFiance Capital创始人:我如何在3年内将投资组合从6位数变成9位数

本文内容来自Bankless,由The Reading Ape整理。亚洲最大的专

DeFi 9小时前

天眼深度 | 华盛顿应该允许DeFi成功 也承认其有效性的局限性

监管机构应起诉欺诈行为,但也应承认其有效性的局限性,并允许DeFi成熟。一种新的消费金融形式可能会颠覆整个银行和金融体系,该体系正饱受昂贵费用、有限的“银行家工作时间”、公众不信任、紧急援助和政府内部偏袒的困扰。

DeFi 11小时前
天眼经纪商 更多
天眼交易所 更多
猜你喜欢