mt logoMyToken
总市值:
0%
恐慌指数:
0%
币种:--
交易所 --
ETH Gas:--
EN
USD
APP
Ap Store QR Code

Scan Download

SharkTeam独家分析丨此Shark非彼Shark-AutoShark闪电贷攻击事件分析

收藏
分享

北京时间2021年5月25日,币安智能链(BSC)上DeFi 协议 AutoShark Finance 遭 闪电贷 攻击,币价出现闪崩,跌幅一度超过 99%。这也是BSC上一周内出现的第三次闪电贷攻击。

image.png

区块链安全团队SharkTeam第一时间对此事件进行了攻击分析和技术分析,并总结了安全防范手段,希望后续的区块链项目可以引以为戒,共筑区块链行业的安全防线。

一、事件分析与安全建议

(1)攻击者从 PancakeSwap中借出10万WBNB;并使用其中5万WBNB从 Panther 的 SHARK/WBNB 池兑换出39万SHARK;并将剩余的5万WBNB和1万多SHARK转入SharkMinter 合约。

image.png

(2)调用SharkMinter中的mintFor函数,该函数中调用notifyRewardAmount函数会根据用户获利的资金从中抽出一部分手续费,作为贡献值给用户奖励 SHARK 代币。

image.png

image.png

(3)由于第 1 步中攻击者已经事先将对应的代币打入到 SharkMinter 合约中,并改变了WBNB 和 SHARK 余额数量。这部分资产已在在计算奖励前移出,但WBNB 和 SHARK 余额数量还没有改变,此时再进行流动性添加时,合约获取的WBNB 和 SHARK 余额是错误的,此外,通过tvlInWBNB函数计算价值,并铸造SHARK给用户进行奖励是,在计算 LP 价值的时候,使用的是 Panther WBNB/SHARK 池的 WBNB 实时数量除以 LP 总量来计算 LP 能兑换多少 WBNB。但是由于在第 1 步中,Panther 池中 WBNB 的数量已被拉高,导致计算结果错误。SharkMinter 合约最后在计算攻击者的贡献的时候计算出了一个非常大的值,导致 SharkMinter 合约给攻击者铸出了大量的 SHARK 代币(超过1亿枚)

image.png

(4)之后 攻击 者后续通过卖出 SHARK 代币来换出 WBNB,偿还闪电贷。并通过AnySwap转移为ETH获利离开。

安全建议:

(1)进行合约审计,避免合约中的状态和计算错误。

(2)可使用时间加权平均价格(TWAP)来避免价格异常波动所带来的损失,以此防范黑客利用闪电贷攻击价格预言机。

二、区块链安全知识课堂

此次事件是又一次与闪电贷攻击有关的区块链安全事件,DeFi项目的业务逻辑设计复杂,涉及的经济学计算和参数较多,却不同项目和协议之间可组合性极其丰富,很难预测,非常容易出现安全漏洞。如下表,利用闪电贷这种新型产品进行攻击的DeFi事件在过去的一年里层出不穷,已增加到19起。通常闪电贷攻击包括“哄抬套利”、“操纵预言机”、“重入攻击”和“技术漏洞”四种。本次属于基于“技术漏洞”结合“操纵预言机”的黑客攻击。

image.png

三、SharkTeam智能合约安全审计

智能合约安全关系用户的财产安全,至关重要!区块链项目开发者应与专业的安全审计公司合作,为用户的数字资产安全和项目本身安全提供保障。

SharkTeam作为领先的区块链安全服务团队,为开发者提供 智能合约 审计服务。智能合约审计服务由人工审计和自动化审计构成,满足不同客户需求,独家实现覆盖高级语言层、虚拟机层、区块链层、业务逻辑层四个方面111项审计内容,全面保障智能合约安全。

n SharkTeam为客户提供高级别的区块链安全服务,区块链安全专家团队7*24小时为智能合约提供全生命周期的安全保障,服务包括:VIP安全审计服务、VIP合规审计服务、安全事故应急响应等。

n SharkTeam也提供自动化审计工具,自动化审计以云服务的方式为用户提供服务。运用符号执行、形式化验证等智能合约分析技术,满足开发者智能合约日常审计需求。

image.png

==

免责声明:本文版权归原作者所有,不代表MyToken(www.mytokencap.com)观点和立场;如有关于内容、版权等问题,请与我们联系。