ULT:慢雾:跨链 DEX 聚合器 Transit Swap 因任意外部调用问题被黑,被盗资金规模超 2300 万美元

据慢雾安全团队情报,2022年10月2号跨链DEX聚合器TransitSwap项目遭到攻击,导致用户资产被非预期的转出。

慢雾安全团队分析评估此次被盗资金规模超过2300万美元,黑客地址为0x75F2...FD46和0xfa71...90fb。接着对此次攻击过程进行了分析:

1.当用户在TransitSwap进行swap时,会先通过路由代理合约(0x8785bb...)根据不同的兑换类型选择不同的路由桥合约。随后路由桥合约(0x0B4727...)会通过权限管理合约(0xeD1afC...)的claimTokens函数将用户待兑换的代币转入路由桥合约中。因此在代币兑换前用户需要先对权限管理合约(0xeD1afC...)进行授权。

慢雾:近期出现假冒UniSat的钓鱼网站,请勿交互:5月13日消息,慢雾首席信息安全官 @IM_23pds 在社交媒体上发文表示,近期有假冒比特币铭文钱包及交易市场平台 UniSat 的钓鱼网站出现,经慢雾分析,假网站有明显的传统针对 ETH、NFT 钓鱼团伙的作案特征,或因近期 BRC-20 领域火热故转而制作有关该领域的钓鱼网站,请用户注意风险,谨慎辨别。[2023/5/13 15:01:11]

2.而claimTokens函数是通过调用指定代币合约的transferFrom函数进行转账的。其接收的参数都由上层路由桥合约(0x0B4727...)传入,本身没有对这些参数进行任何限制只检查了调用者必须为路由代理合约或路由桥合约。

慢雾:Quixotic黑客盗取约22万枚OP,跨链至BNB Chain后转入Tornado Cash:7月1日消息,据慢雾分析,Quixotic黑客盗取了大约22万枚OP(约11.9万美元),然后将其兑换成USDC并跨链到BNB Chain,之后将其兑换成BNB并转入Tornado Cash。[2022/7/1 1:44:55]

3.路由桥合约(0x0B4727...)在接收到用户待兑换的代币后会调用兑换合约进行具体的兑换操作,但兑换合约的地址与具体的函数调用数据都由上层路由代理合约(0x8785bb...)传入,路由桥合约并未对解析后的兑换合约地址与调用数据进行检查。

慢雾:Equalizer Finance被黑主要在于FlashLoanProvider合约与Vault合约不兼容:据慢雾区消息,6 月 7 日,Equalizer Finance 遭受闪电贷攻击。慢雾安全团队以简讯形式将攻击原理分享如下:

1. Equalizer Finance 存在 FlashLoanProvider 与 Vault 合约,FlashLoanProvider 合约提供闪电贷服务,用户通过调用 flashLoan 函数即可通过 FlashLoanProvider 合约从 Vault 合约中借取资金,Vault 合约的资金来源于用户提供的流动性。

2. 用户可以通过 Vault 合约的 provideLiquidity/removeLiquidity 函数进行流动性提供/移除,流动性提供获得的凭证与流动性移除获得的资金都受 Vault 合约中的流动性余额与流动性凭证总供应量的比值影响。

3. 以 WBNB Vault 为例攻击者首先从 PancekeSwap 闪电贷借出 WBNB

4. 通过 FlashLoanProvider 合约进行二次 WBNB 闪电贷操作,FlashLoanProvider 会先将 WBNB Vault 合约中 WBNB 流动性转给攻击者,随后进行闪电贷回调。

5. 攻击者在二次闪电贷回调中,向 WBNB Vault 提供流动性,由于此时 WBNB Vault 中的流动性已经借出一部分给攻击者,因此流动性余额少于预期,则攻击者所能获取的流动性凭证将多于预期。

6. 攻击者先归还二次闪电贷,然后从 WBNB Vault 中移除流动性,此时由于 WBNB Vault 中的流动性已恢复正常,因此攻击者使用添加流动性获得凭证所取出的流动性数量将多于预期。

7. 攻击者通过以上方式攻击了在各个链上的 Vault 合约,耗尽了 Equalizer Finance 的流动性。

此次攻击的主要原因在于 Equalizer Finance 协议的 FlashLoanProvider 合约与 Vault 合约不兼容。慢雾安全团队建议协议在进行实际实现时应充分考虑各个模块间的兼容性。[2022/6/8 4:09:22]

4.而代理合约(0x8785bb...)对路由桥合约(0x0B4727...)传入的参数也都来自于用户传入的参数。且代理合约(0x8785bb...)仅是确保了用户传入的calldata内各数据长度是否符合预期与所调用的路由桥合约是在白名单映射中的地址,未对calldata数据进行具体检查。

5.因此攻击者利用路由代理合约、路由桥合约与权限管理合约均未对传入的数据进行检查的缺陷。通过路由代理合约传入构造后的数据调用路由桥合约的callBytes函数。callBytes函数解析出攻击者指定的兑换合约与兑换数据,此时兑换合约被指定为权限管理合约地址,兑换数据被指定为调用claimTokens函数将指定用户的代币转入攻击者指定的地址中。实现了窃取所有对权限管理合约进行授权的用户的代币。

此次攻击的主要原因在于TransitSwap协议在进行代币兑换时并未对用户传入的数据进行严格检查,导致了任意外部调用的问题。攻击者利用此任意外部调用问题窃取了用户对TransitSwap授权的代币。

截止到目前,黑客已将2,500BNB转移到TornadoCash,剩余资金分散保留在黑客地址中。经过黑客痕迹分析发现,黑客存在从LATOKEN等平台存提款的痕迹。慢雾MistTrack将持续跟进被盗资金的转移以及黑客痕迹的分析。

参考攻击交易:

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

https://etherscan.io/tx/0x743e4ee2c478300ac768fdba415eb4a23ae66981c076f9bff946c0bf530be0c7

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

波场EOS:全国首个元宇宙政务大厅落户广州南沙

据广州日报报道,10月13日,广州南沙全国首推“元宇宙”赋能智慧新政务,政务服务中心元宇宙政务大厅上线,市民可以戴上VR眼镜进入元宇宙政务大厅进行元宇宙奇妙之旅,也可以办理首批上线的政务事项.

[0:0ms0-9:468ms