木星链 木星链
Ctrl+D收藏木星链

URG:XSURGE 攻击事件的全面梳理

作者:

时间:1900/1/1 0:00:00

前言

8月17日,BSC链上的XSURGE协议遭到闪电贷攻击,损失超过500万美元。对此,知道创宇区块链安全实验室对攻击流程和代码细节进行了全盘梳理。

全盘梳理

基础信息

-攻击tx:0x7e2a6ec08464e8e0118368cb933dc64ed9ce36445ecf9c49cacb970ea78531d2-攻击合约:

0x1514AAA4dCF56c4Aa90da6a4ed19118E6800dc46

Aave已通过禁用xSUSHI、DPI借款及冻结UNI/BAL AMM交易市场的存款等功能的新提案:11月2日消息,借贷协议Aave的AIP-44号社区提案获得通过,已暂时禁用xSUSHI和DPI (DeFi Pulse Index)的借款,同时冻结UNI/BAL AMM交易市场的存款、借款和利率互换功能。[2021/11/2 6:26:57]

-SurgeToken:

0xE1E1Aa58983F6b8eE8E4eCD206ceA6578F036c21

Crypto.com APP上线去中心化游戏类与NFT项目Axie Infinity(AXS):加密货币借记卡公司Crypto.com发推称,Crypto.com APP现已上线去中心化游戏类与NFT项目Axie Infinity,用户可使用美元、欧元、英镑等超20种法币购买AXS代币。[2021/4/28 21:08:08]

攻击流程

这里有个小细节,代币转移流程中的顺序是按照事件先后顺序来显示的,而重入之后的买操作引起的事件会在卖操作引起的事件之前,所以在流程中看到的每一个单独的重入攻击中是SURGE的买入发生在卖出之前。

抵押借贷平台CreamFinance社区提议添加xSUSHI作为抵押品:据官方消息,抵押借贷平台CreamFinance社区发起提案建议添加xSUSHI作为抵押品。注:xSUSHI是SUSHI代币的Wrapped版本。该提案投票时间将于1月24日12:00AM截至。[2021/1/21 16:41:11]

漏洞原理

漏洞点在于SurgeToken合约中的sell()函数,其中对调用者msg.sender的BNB转账采用的call()函数,并且在转账之后才更新代币总量_totalSupply,是典型的重入漏洞场景。

虽然sell()函数使用了nonReentrant修饰防止了重入,但purchase()函数并没有。重入转回BNB给合约,触发fallback函数调用purchase(),由于_totalSupply尚未减去卖出量,而导致可买入相较正常更多的SURGE代币。

复现

价格分析

sell()函数卖出过程中,输入tokenAmount与输出amountBNB的关系:

purchase()函数买入过程中,输入bnbAmount与输出tokensToSend的关系:

在重入过程中,sell()函数卖出后获得的BNB通过重入打回SurgeToken合约传入purchase()函数故令sell()函数的输出amountBNB与purchase()函数的输入bnbAmount相等,可得到整个利用流程中输入与输出的关系:

若要实现套利,需要输出大于输入,则有:

最后得到:

也就是说重入套利过程中调用sell()卖出的代币量必须在代币总量的12.383%以上

模拟演示

为方便调试,将SurgeToken合约中的mint()函数可见性改为public,并为构造函数增加payable修饰,在部署时传入10^15wei。

SurgeToken合约初始化的代币总量为10^9,根据前面推导出的结论,为攻击合约铸币200000000,则攻击合约拥有大约SURGE代币总量16%的代币。

攻击合约调用Attack()函数攻击,查看攻击合约的代币余额已变为209549307,获利9549307。

总结

XSURGE协议被攻击的本质原因在于sell()函数中存在重入漏洞,导致可通过purchase函数买入较多的SURGE代币而获利。

简而言之,典型的重入漏洞场景,教科书级的案例。

标签:URGSURGESURBNBURG币Surge InuNSURE币如何购买bnb币

比特币交易所热门资讯
IDG:解读跨链桥的发展现状:Layer2型和链专用型跨链桥占多数,9月独立地址数猛增

分析师?|Carol?编辑|Tong?出品|PANews如果纵观DeFi的发展,可以看到一条较为清晰的路径。DeFi从去年下半年开始,在流动性挖矿的激励下,率先在以太坊上爆发.

1900/1/1 0:00:00
AXI:a16z:我们为什么要投资“边玩边赚”游戏Axie Infinity

本文来自a16z,原文作者:AriannaSimpsonOdaily星球日报译者|Moni“你的利润就是我的机会”——全球电商巨头Amazon公司创始人JeffBezos.

1900/1/1 0:00:00
RAY:ZT ETF板即將上線RAYBULL, RAYBEAR

親愛的ZT用戶:ZTETF板即將上線RAYBULL,RAYBEAR,並開啟RAYBULL/USDT,RAYBEAR/USDT交易對.

1900/1/1 0:00:00
ETHER:彭博商业周刊:Tether 向加密公司提供了数十亿美元的贷款

链闻消息,彭博商业周刊于昨日发表文章《AnyoneSeenTether''sBillions?》,提出了对Tether发行的稳定币是否有足额的资产支持的质疑.

1900/1/1 0:00:00
CMD:中币关于上线CMD(CMD)的公告

尊敬的中币用户:????中币将于香港时间2021年10月14日上线CMD。具体安排如下:????1、2021年10月14日12:00开放CMD充值;????2、2021年10月15日14:00开.

1900/1/1 0:00:00
WIS:数字基础设施提供商Mawson完成4500万美元股票公开发售

据Businesswire10月4日报道,数字基础设施提供商MawsonInfrastructureGroupInc.宣布.

1900/1/1 0:00:00