BSP:独家|Fairyproof Tech:对XSURGE受攻击事件的完整回顾

由Fairyproof Tech授权,金色财经独家发布。

8月17日,Fairyproof Tech的监测系统检查到BSC链上的DeFi协议XSURGE遭到闪电贷攻击。 

关于闪电贷攻击,我们在此前的文章中曾经有过多次介绍。“闪电贷”在DeFi领域,尤其是今年以来的屡 次攻击事件中已经成为圈内外耳熟能详的词汇。 

“闪电贷”的原理是利用以太坊智能合约可以回滚交易的特性,进行借贷操作的一种手段。大家一定要注意的是,“闪电贷”只是被利用的手段,它本身并不是罪魁祸首。罪魁祸首一般都另有其它原因。 

黑客们利用闪电贷进行攻击的基本过程是这样的: 

首先利用闪电贷从资金池借出资金 

独家|以太坊当前建议Gas费用为66.71Gwei 环比上升83.72%:金色财经消息,据欧科云链OKLink链上数据显示,以太坊24h链上活跃地址数逾52.04万,环比上升4.08%;链上交易量近283.77万ETH,环比上升32.49%;链上交易笔数逾111.58万笔,环比下降0.14%。

截至下午2时,以太坊全网算力约为250.75TH/s,环比下降0.04TH/s,当前建议Gas费用为66.71Gwei,环比上升83.72%,未确认交易数约10.25万笔。[2020/10/21]

然后利用借出的资金找准被攻击合约的漏洞进行攻击 

最后从攻击获得的巨额收益中拿出借贷的本金归还给资金池,则剩下的就是黑客本次攻击的获利。

 本次受攻击的XSURGE项目被黑客抓住的漏洞是“重入攻击”。黑客抓住这个漏洞,利用闪电贷,放大了攻击效果。不过本次攻击事件中,值得注意的是:在XSURGE受到攻击前,项目方已经在推特上发表了声明,声称在合约中发现漏洞,并提醒大家将资金撤出。 

独家|近六个月来,以太坊全网算力持续上升:金色财经消息,据欧科云链OKLink链上数据显示,以太坊24h链上活跃地址数逾48.34万,环比下降2.69%;链上交易量近330.4万ETH,环比下降8.99%;链上交易笔数逾110万笔,环比上升2.92%。

截至下午2时,以太坊全网算力约为235.23TH/s,环比上升0.71TH/s,近六个月以来,以太坊全网算力持续上升,现已接近18年8月的历史高位。[2020/9/21]

或许是项目方的声明提醒了黑客,抑或许是黑客蓄谋已久,就在项目方的声明发出不久,项目即遭到了攻击。 

在本次攻击中,黑客前后进行了多轮测试和攻击,总共的获利超过13000个BNB,市值超过500万美元。在黑客发起的众多轮测试和攻击中,我们选取了一次很简单的攻击流程和大家展示一下黑客攻击的过程。

独家|以太坊当前建议Gas费用为132.03Gwei,环比上升24.25%:金色财经消息,据欧科云链OKLink链上数据显示,以太坊24h链上活跃地址数逾43.37万,环比上升2.01%;链上交易量近468.28万ETH,环比上升4.04%;链上交易笔数逾104.76万笔,环比上升0.85%。

截至下午2时,以太坊全网算力约为229.8TH/s,环比上升0.72TH/s,建议Gas费用为132.03Gwei,环比上升24.25%,未确认交易数约10.35万笔。[2020/9/14]

在这个攻击中,攻击者的地址为:0x59c686272e6f11dC8701A162F938fb085D940ad3,被攻击的 XSURGE的合约地址为: 0xE1E1Aa58983F6b8eE8E4eCD206ceA6578F036c21。

独家|比特币全网难度预计将于今日下调1.51%:金色财经消息,据欧科云链OKLink链上数据显示,比特币24h链上活跃地址数逾99.82万,环比上升3.14%;链上交易量近35.47万BTC,环比下降25.2%;链上交易笔数逾26.48万笔,环比下降17.42%。

截至上午10时,BTC全网难度为17.56T,全网算力为124.78EH/s,较前日上升2.92EH/s,未确认交易数约8566笔。比特币预计将于9月7日晚9时前后迎来难度调整,预计全网难度将下调至17.29T,下调幅度为1.51%。[2020/9/7]

这个攻击的交易哈希值为 0x42bc03afdbda5c46d185711ce1f5df990ece215534dcd8b14529bb1beddacd4 ,与其相关的交易流 程图如下:

独家|比特币24h链上交易量环比下降4.05%:金色财经消息,据欧科云链OKLink链上数据显示,BTC链上活跃度上升。BTC 24h链上活跃地址数逾99.76万,环比上升2.54% ;链上交易量近58.53万BTC,环比下降4.05% ;链上交易笔数逾33.37万笔,环比上升0.41% 。

截至上午10时,BTC全网难度为16.95T,全网算力为122.95EH/s,较前日上升0.29EH/s,全网算力呈上升趋势。未确认交易数近1.2万笔。[2020/8/21]

这个流程图显示的是一系列BNB的转账流程,这个流程所暗含的信息如下: - 攻击合约首先以闪电贷的方式借入了3个BNB - 然后攻击者开始攻击SurgeToken合约 - 经过重复多次攻击后,攻击者获得的累计金额达8.175个BNB - 攻击者最终偿还3个BNB的闪电贷借款,最后获利5.1667个BNB “麻雀虽小、五脏俱全”,这个金额很小的试探性攻击过程就反映了黑客利用闪电贷攻击合约的完整流 程。那么具体到被攻击的合约代码,到底是哪里出了问题呢?下面是我们节选的关键代码:

上述代码中,有"重入攻击"漏洞的代码是下面这一行:

这一行代码中,在外部调用时,通常 call 调用默认只有2300 gas可用,无法完成一次攻击。但这里使 用 gas: 40000 的参数, 使得重入攻击最多有40000 gas可用,这就使得重入攻击得以完成,漏洞就出 现了。 另外,合约的状态修改是在外部调用之后,从而导致重入攻击发生时 require(_balances[seller] >= tokenAmount 这句语句中的 balances[seller] 没有被修改。因此攻击者可以在重入时继续调用上面 的代码,转走合约中的BNB。

因此,本次攻击得逞的原因有以下两点:

状态修改发生外部调用之后 

调用call函数时设置了gas 值使得重入攻击的条件得以具备。

 重入攻击是智能合约安全领域经常出现的问题,在本次攻击中,闪电贷同样也只是起到了“帮凶”的作用,而不是“祸首”。所以本次合约安全事故的根本还是“重入攻击”这个漏洞。 这次事件再次提醒所有的项目方要高度重视合约的审计。同时这也提醒了所有的审计者,对常见问题的审计不能掉以轻心,要以严谨的态度处理一切问题、细致的工作堵住一切漏洞,而这也是Fairyproof Tech一直以来秉持的基本态度和方法。

关于Fairyproof Tech: Fairyproof Tech科技有限公司是一家专注区块链生态安全的公司。Fairyproof Tech科技主要通过“代码风险检测+逻辑风险检测“的一体化综合方案服务了诸多新兴知名项目。公司成立于2021年01月,团队由一支拥有丰富 智能合约编程经验及网络安全经验的团队创建。

团队成员参与发起并提交了以太坊领域的多项标准草案,包括ERC-1646、ERC-2569、ERC-2794,其中 ERC-2569 被以太坊团队正式收入。 

团队参与了多项以太坊项目的发起及构建,包括区块链平台、DAO组织、链上数据存储、去中心化交易 所等项目, 并参与了多个项目的安全审计工作,在此基础上基于团队丰富的经验构建了完善的漏洞追踪 及安全防范系统。 

作者:Fairyproof TechCEO 谭粤飞 

美国弗吉尼亚理工大学(Virginia Tech, Blacksburg, VA, USA) 工业工程(Industrial Engineering) 硕士 (Master)。曾任美国硅谷半导体公司 AIBT Inc(San Jose, CA, USA) 软件工程师,负责底层控制系统的 开发、设备制程的程序实现、算法的设计,并负责与台积电的全面技术对接和交流。自2011至今,从事 嵌入式,互联网及区块链技术的研究,深圳大学创业学院《区块链概论》课程教师,中山大学区块链与 智能中心客座研究员,广东省金融创新研究会常务理事 。个人拥有4项区块链相关专利、3本出版著作。

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

地球链

Gate.ioCHA:原生代币流动性的艺术与科学

为什么项目方想要为其原生代币提供流动性?从根本上说,拥有代币的流动性很重要,因为它允许新投资者轻松地投资项目并让不活跃的投资者退出。少一点流动性不会破坏一个强大的项目,而过多的流动性也只是徒劳.

区块链区块链:web3.0上的隐私:天堂还是陷阱?

随着以人工智能、大数据和互联网为代表的信息技术革命的推进,数据的价值进一步凸显,数据成为了企业的重要资产和持续创新的推动力。因此,保障数据在采集、传输、利用和共享等各个环节安全的重要性不言而喻.

[0:15ms0-1:7ms