链闻消息,据慢雾区,针对 DeFi 项目 xToken 遭受攻击损失近 2500 万美元一事,慢雾安全团队分析称,本次被黑的两个模块分别是 xToken 中的 xBNTa 合约和 xSNXa 合约,两个合约分别遭受了「假币」攻击和预言机操控攻击。具体分析如下:

一、xBNTa 合约攻击分析:
1. xBNTa 合约存在一个 mint 函数,允许用户使用 ETH 兑换 BNT,使用的是 Bancor Netowrk 进行兑换,并根据 Bancor Network 返回的兑换数量进行铸币。
2. 在 mint 函数中存在一个 path 变量,用于在 Bancor Network 中进行 ETH 到 BNT 的兑换,但是 path 这个值是用户传入并可以操控的
3. 攻击者传入一个伪造的 path,使 xBNTa 合约使用攻击者传入的 path 来进行代币兑换,达到使用其他交易对来进行铸币的目的。绕过了合约本身必须使用 ETH/BNT 交易对进行兑换的限制,进而达到任意铸币的目的。

二、xSNXa 合约攻击分析:
1. xSNXa 合约存在一个 mint 函数,允许用户使用 ETH 兑换 xSNX,使用的是 Kyber Network 的聚合器进行兑换。
2. 攻击者可以通过闪电贷 Uniswap 中 ETH/SNX 交易对的价格进行操控,扰乱 SNX/ETH 交易对的报价,进而扰乱 Kyber Network 的报价。从而影响 xSNXa 合约的价格获取
3. 攻击者使用操控后的价格进行铸币,从而达到攻击目的。