SNX:慢雾分析 xToken 被黑:两个被黑合约分别遭到假币攻击和预言机操作攻击_NET

链闻消息,据慢雾区,针对DeFi项目xToken遭受攻击损失近2500万美元一事,慢雾安全团队分析称,本次被黑的两个模块分别是xToken中的xBNTa合约和xSNXa合约,两个合约分别遭受了「假币」攻击和预言机操控攻击。具体分析如下:一、xBNTa合约攻击分析:1.xBNTa合约存在一个mint函数,允许用户使用ETH兑换BNT,使用的是BancorNetowrk进行兑换,并根据BancorNetwork返回的兑换数量进行铸币。2.在mint函数中存在一个path变量,用于在BancorNetwork中进行ETH到BNT的兑换,但是path这个值是用户传入并可以操控的3.攻击者传入一个伪造的path,使xBNTa合约使用攻击者传入的path来进行代币兑换,达到使用其他交易对来进行铸币的目的。绕过了合约本身必须使用ETH/BNT交易对进行兑换的限制,进而达到任意铸币的目的。二、xSNXa合约攻击分析:1.xSNXa合约存在一个mint函数,允许用户使用ETH兑换xSNX,使用的是KyberNetwork的聚合器进行兑换。2.攻击者可以通过闪电贷Uniswap中ETH/SNX交易对的价格进行操控,扰乱SNX/ETH交易对的报价,进而扰乱KyberNetwork的报价。从而影响xSNXa合约的价格获取3.攻击者使用操控后的价格进行铸币,从而达到攻击目的。

慢雾:BXH 第一次被盗资金再次转移,BTC 网络余额超 2700 BTC:金色财经报道,10月8日凌晨(UTC+8),慢雾监控到 BXH 第一次被盗资金再次出现异动,经慢雾 MistTrack 分析,异动详情如下:

黑客地址 0x48c9...7d79 将部分资金(213.77 BTCB,5 BNB 和 1 ETH)转移至新地址 0xc01f...2aef,接着将资金兑换为 renBTC 跨链到 BTC 网络,跨链后地址为 1JwQ...u9oU。1JwQ...u9oU 在此次转移中接收到的总资金为 204.12 BTC。截止目前,BXH 第一次被盗事件在 BTC 网络共有 4 个黑客地址,总计余额为 2701.3 BTC,暂未进一步转移。慢雾 MistTrack 将持续监控被盗资金的转移。[2022/10/8 12:49:28]

慢雾: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]

慢雾安全:警惕Big Data Protocol合约相关风险:据慢雾区消息,知名DeFi项目Big Data Protocol因项目自身代码Bug出现无法正常领取奖励的问题。经慢雾安全团队分析,此问题系Big Data Protocol的BDP代币合约在mint函数中对seePoolAmount变量做了错误的校验,导致合约功能无法正常执行。目前合约用户只能通过紧急提现函数对资金进行提现。但紧急提现函数无法同时提现挖矿收益。

慢雾安全团队提醒用户注意Big Data Protocol合约风险,如有参与,可通过emergency Withdraw函数将资金安全取出。[2021/3/12 18:40:04]

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

区块博客

[0:15ms0-3:685ms