8月17日,链必安-区块链安全态势感知平台(Beosin-Eagle Eye)舆情监测显示,BSC链上DeFi协议XSURGE遭到闪电贷攻击,攻击者利用合约的重入漏洞获利超过13111BNB。关于本次攻击,成都链安技术团队第一时间进行了事件分析。 #1?事件概览攻击如何发生 Event overview DeFi项目XSURGE今日遭遇闪电贷攻击,不过在XSURGE在遭攻击前,官方发布了关于SurgeBNB漏洞的声明。 XSURGE表示,当地时间8月16日发现了SurgeBNB合约的潜在安全漏洞。由于SurgeBNB合约不可更改且已被放弃,因此无法追溯修补该代币。XSURGE没有透露任何关于此漏洞性质的具体细节,但强烈建议用户尽快迁移出SurgereBnb,因为该漏洞随时都可能被攻击者触发。 说时迟那时快,在声明发布后,XSURGE随后便表示遭遇攻击,这甜蜜一击让项目方防不胜防。官方称,攻击者通过后门漏洞在SurgeBNB中窃取了500万美元。由于SurgeUSD或SurgeETH不提取BNB,因此它们不能成为未来攻击的目标。 回到本次闪电贷攻击,让我们看看这一次的攻击者是如何实现「空手套白狼」的。 #2?事件具体分析攻击者如何得手?Event overview 攻击者地址: 0x59c686272e6f11dC8701A162F938fb085D940ad3 攻击合约 以交易 0x8c93d6e5d6b3ec7478b4195123a696dbc82a3441be090e048fe4b33a242ef09d为例 round 0 先通过闪电贷借出10,000BNB。 Round 1 用所有的的BNB去购买SURGE,根据当前价格,能买到1,896,594,328,449,690 SURGE。 获取的SURGE Round 2 调用sell函数卖出所获得的SURGE,卖出了9346个BNB。 Round 3 因为sell函数是先转账后修改数据,且转账代码中存在重入漏洞。在攻击合约收到BNB时,SURGE合约的状态改变前(第595行代码),攻击合约可通过重入漏洞再次购买SURGE。 由于攻击合约每次都将所有BNB余额用于购买SURGE,合约的bnbAmount不变,而SURGE的代币总量_totalSupply未更新(仍为sell之前的数量),因此SURGE价格降低,导致攻击者可以买到更多的SURGE。 Round 4 重复3次Round2、Round3,攻击者通过重入累积了大量的SURGE,之后将所有的SURGE全部卖出便可以获利。 这笔交易的最后,攻击合约卖了1,864,120,345,279,610,000 SURGE,获得了10327 BNB,最后将获利的297 BNB发送给攻击者地址。 #3?事件复盘我们需要注意什么 Case Review 对于本次攻击事件,成都链安技术团队给出的修改建议为:1.为防止重入攻击,任何转账操作都应该发生在状态改变后;2.使用transfer或send进行转账,不要使用call.value。 在此类安全事件中,攻击者通常属于「空手套白狼」,先使用闪电贷获取大量资金,拥有了攻击的启动「砝码」后,再通过一系列手段出入各类抵押、借贷、交易等协议,在实现操纵、扭曲资产价格数据后,实施套利,最后归还「本金」。 ????注意 ???? 本次事件,攻击者利用合约的重入漏洞获利超过13111BNB,成都链安在此提醒各位用户注意风控,比如在官方发布关于SurgeBNB漏洞的声明后,要及时采取相应措施。 —- 编译者/作者:成都链安 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
甜蜜一击?谁是幕后黑手?BSC链上XSURGE遭闪电贷攻击全解析
2021-08-18 成都链安 来源:区块链网络
LOADING...
相关阅读:
- 加密货币衍生品市场 Beta Finance 将于 8 月 18 日分两阶段启动,第一阶段2021-08-16
- Poly Network 已修复导致 keeper 地址被修改为白帽黑客指定地址的跨链合约2021-08-16
- Mask Network、Polygon 等 16 个项目共同发起 Social DeFi Alliance 以推动去中心化2021-08-16
- 跨链 DeFi 平台 Alpha Finance Lab 宣布分阶段发起 Alpha DAO,首阶段预计本月推2021-08-16
- 稳定资产协议 RAI 将于下周上线质押模块,FLX/ETH 流动性提供者可为 RA2021-08-16