娃酷网 |[切换城市][登录][注册]
搜索风云榜 | 商机推荐 | 会员签到免费发布信息网址大全

比特币价格_比特币合约火爆招商中

2021-8-21 19:51:14 浏览:12次

这个流程图显示的是一系列BNB的转账流程,这个流程所暗含的信息如下: - 攻击合约首先以闪电贷的方式借入了3个BNB - 然后攻击者开始攻击SurgeToken合约 - 经过重复多次攻击后,攻击者获得的累计金额达8.175个BNB

数字货币代理咨询:QQ1284331001

- 攻击者最终偿还3个BNB的闪电贷借款,最后获利5.1667个BNB “麻雀虽小、五脏俱全”,这个金额很小的试探性攻击过程就反映了黑客利用闪电贷攻击合约的完整流 程。
那么具体到被攻击的合约代码,到底是哪里出了问题呢?下面是我们节选的关键代码:

Zr1amGiyKr4GVsm1Q4YrVP78MsoMtWsd1Ia0mGiV.png

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

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

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

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

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

数字货币代理咨询:QQ1284331001

内容来源:https://www.btczsw.com

“比特币价格_比特币合约火爆招商中”该信息由会员自行发布。采用请谨慎,不贪小便宜,以防上当!
© 版权所有 娃酷网 手机版 粤ICP备19125541号-1