[安全团队:跨链DEX聚合器Transit Swap因任意外部调用问题被黑,被盗资金规模超2300万美元]10月2日消息,据慢雾安全团队情报,2022年10月2号跨链DEX聚合器TransitSwap项目遭到攻击,导致用户资产被非预期的转出。慢雾安全团队分析评估此次被盗资金规模超过2300万美元,黑客地址为0x75F2...FD46和0xfa71...90fb。接着对此次攻击过程进行了分析:
1. 当用户在Transit Swap进行swap时,会先通过路由代理合约(0x8785bb...)根据不同的兑换类型选择不同的路由桥合约。随后路由桥合约(0x0B4727...)会通过权限管理合约(0xeD1afC...)的 claimTokens 函数将用户待兑换的代币转入路由桥合约中。因此在代币兑换前用户需要先对权限管理合约(0xeD1afC...)进行授权。
2. 而 claimTokens 函数是通过调用指定代币合约的 transferFrom 函数进行转账的。其接收的参数都由上层路由桥合约(0x0B4727...)传入,本身没有对这些参数进行任何限制只检查了调用者必须为路由代理合约或路由桥合约。
3. 路由桥合约(0x0B4727...)在接收到用户待兑换的代币后会调用兑换合约进行具体的兑换操作,但兑换合约的地址与具体的函数调用数据都由上层路由代理合约(0x8785bb...)传入,路由桥合约并未对解析后的兑换合约地址与调用数据进行检查。
4. 而代理合约(0x8785bb...)对路由桥合约(0x0B4727...)传入的参数也都来自于用户传入的参数。且代理合约(0x8785bb...)仅是确保了用户传入的 calldata 内各数据长度是否符合预期与所调用的路由桥合约是在白名单映射中的地址,未对 calldata 数据进行具体检查。
5. 因此攻击者利用路由代理合约、路由桥合约与权限管理合约均未对传入的数据进行检查的缺陷。通过路由代理合约传入构造后的数据调用路由桥合约的 callBytes 函数。callBytes 函数解析出攻击者指定的兑换合约与兑换数据,此时兑换合约被指定为权限管理合约地址,兑换数据被指定为调用 claimTokens 函数将指定用户的代币转入攻击者指定的地址中。实现了窃取所有对权限管理合约进行授权的用户的代币。
此次攻击的主要原因在于 Transit Swap 协议在进行代币兑换时并未对用户传入的数据进行严格检查,导致了任意外部调用的问题。攻击者利用此任意外部调用问题窃取了用户对Transit Swap授权的代币。
截止到目前,黑客已将 2,500 BNB 转移到 Tornado Cash,剩余资金分散保留在黑客地址中。经过黑客痕迹分析发现,黑客存在从 LATOKEN 等平台存提款的痕迹。慢雾 MistTrack 将持续跟进被盗资金的转移以及黑客痕迹的分析。
其它快讯:
安全团队:EGD_Finance遭受黑客攻击,代币价格被闪电贷操控:8月8日消息,据慢雾区消息,BSC上的EGD_Finance项目遭受黑客攻击,导致其池子中资金被非预期的取出。慢雾安全团队进行的分析如下:
1.由于EGD_Finance合约中获取奖励的claimAllReward函数在计算奖励时会调用getEGDPrice函数来进行计算EGD的价格,而getEGDPrice函数在计算时仅通过pair里的EGD和USDT的余额进行相除来计算EGD的价格
2.攻击者利用这个点先闪电贷借出池子里大量的USDT,使得EGD代币的价格通过计算后变的很小,因此在调用claimAllReward函数获取奖励的时候会导致奖励被计算的更多,从而导致池子中的EGD代币被非预期取出
本次事件是因为EGD_Finance的合约获取奖励时计算奖励的喂价机制过于简单,导致代币价格被闪电贷操控从而获利。[2022/8/8 12:09:04]
安全团队:NFT项目Spiky Space Fish Discord服务器遭攻击:金色财经消息,据CertiK监测,NFT项目Spiky Space Fish的Discord服务器遭黑客攻击,请用户不要点击任何链接,且不要参与铸造或批准任何交易。[2022/7/6 1:54:32]
安全团队:Beanstalk Farms攻击者将25万美元的USDC转入乌克兰加密捐赠地址:4月17日消息,据派盾监测,稳定币项目Beanstalk Farms遭到攻击,随后,价值25万美元的USDC从攻击者钱包地址转入乌克兰加密捐赠地址。[2022/4/18 14:30:09]
郑重声明: 安全团队:跨链DEX聚合器Transit Swap因任意外部调用问题被黑,被盗资金规模超2300万美元版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。