宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > Luna > 正文

DeFi平台Balancer遭黑客攻击全过程技术拆解

作者:

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

北京时间06月29日凌晨02时03分起,最近因“借贷即挖矿”模式而备受关注DeFi平台Balancer上的STA和STONK两个ERC20通缩代币池遭到了黑客攻击,共计损失了超50万美元。

PeckShield?安全人员介入分析后,迅速定位到问题的本质在于,Balancer上的通缩型代币和其智能合约在某些特定场景不兼容,使得攻击者可以创建价格偏差的STA/STONK流通池并从中获利。

此次黑客实施攻击共计分了四个步骤,具体而言:

1)攻击者通过闪电贷从dYdX平台借出了104,331个WETH;

2)攻击者反复执行swapexactMountin()调用,直至Balancer拥有的大部分STA代币被消耗殆尽,进而开始下一步攻击。最终Balancer仅仅剩余0.000000000000000001个STA。

3)攻击者利用STA代币和Balancer智能合约存在的不兼容性即记账和余额的不匹配性实施攻击,将资金池中的其他资产耗尽,最终共计获利价值523,616.52美元的数字资产。

数据:DeFi TVL约为420亿美元,MakerDAO位列第一:金色财经报道,数据显示,目前DeFi的TVL约为420亿美元,其中,MakerDAO约为66亿美元,占比15.78%,位列第一。其次是Lido,约61亿美元。第三是AAVE,约38亿美元。[2022/12/5 21:22:34]

4)攻击者?偿还从dYdX借出的闪电贷,并卷走了攻击所得的数字资产。

接下来的篇幅中,我们将逐步解析黑客在该笔闪电贷交易(http://oko.palkeo.com/0x013be97768b702fe8eccef1a40544d5ecb3c1961ad5f87fee4d16fdc08c78106/)中实施的攻击行为。

Balancer遭黑客攻击全过程技术拆解

Avalanche链上DeFi协议总锁仓量为107.1亿美元:金色财经报道,据DefiLlama数据显示,目前Avalanche链上DeFi协议总锁仓量为107.1亿美元,24小时减少6.30%。锁仓资产排名前五分别为AAVE(27.2亿美元)、TraderJoe(17亿美元)、Benqi(15.3亿美元)、Curve(11.6亿美元)、multichan(9.50亿美元)。[2022/1/9 8:35:11]

第一步:闪电贷

从dYdX闪电贷104,331WETH,这部分熟悉DeFi借贷模式的读者应该都比较清楚,此处不再赘述。

第二步:清空Balancer的STA资产

攻击者通过多次swapExactAmountIn()调用清空了Balancer的STA资产,为下一步实施攻击做准备。值得一提的是,我们发现合约代码中每次能够兑换的资产数额其实有上限,然而狡猾的攻击者预先计算了可兑换的WETH最大数额,并巧妙的让Balancer只剩了?0.000000000000000001STA。

Avalanche链上DeFi锁仓量超111亿美元创新高,AAVE居首位:11月18日,DeFi LIama数据显示,Avalanche(雪崩协议)链上DeFi锁仓量超过111亿美元,创历史新高。其中,AAVE锁仓量为32.3亿美元,占比29%,位居首位;Trader Joe以21.9亿美元排名第二;Benqi以14.1亿美元位居第三。[2021/11/18 22:00:10]

由于Balancer资金池各资产间存在“动态平衡”原理,仅剩接近于0的STA会拉高STA的价值,使得任何人都可以用1STA换到大量的其他数字资产。

第三步:攻击获利

经过前两个准备步骤之后,攻击者是时候展现真正技术了!

Bella协议联合创始人兼CEO Felix:DeFi在未来仍是大方向:据官方消息,Gate.io直播专访节目《酒局币赴》20210220期已结束,本期直播邀请Bella协议联合创始人兼CEO Felix,给大家做了APY超100%的收益的Bella系列产品的分享与介绍,Felix认为,DeFi在未来仍是大方向,而Bella Protocol作为一站式的DeFi平台,目前在刚上线阶段,产品目前包括自动进行流动性挖矿的工具、借贷协议、一键储蓄账户、智能机器投顾等,Bella产品矩阵将能够有效解决用户手续费高、用户体验差、理解智能合约门槛高的痛点,是用户可以轻松配置资产,享受增值,并将所有繁琐的操作留给设计优雅、流畅安全且自动化的智能合约协议。[2021/2/20 17:34:57]

承上所述,攻击者通过swapExactAmountIn()函数将?0.000000000000000001STA发送到BPool,以极高的价值差,立即兑换出了30,347个WETH,实现了获利。而此时,BPool的内部记账机制?_records在BPool真正收到0.000000000000000001STA之前先加了1。

Dedaub已通过一次白帽攻击将DeFi Saver客户的资金安全转移:智能合约安全公司Dedaub发文称,已通过一次白帽攻击将DeFi Saver客户的资金安全转移。该文称,在DeFi Saver部署的智能合约中发现一个关键漏洞后,Dedaub利用了该漏洞,并于1月5日与团队取得联系。DeFi Saver团队立即作出回应,不到20小时,客户资金已通过一次白帽攻击恢复安全。

Dedaub称,该漏洞将会影响DeFi Saver服务的主要用户,过去2个月有200多名客户将存款存入这个易受攻击的合约中;该漏洞最初是通过复杂的静态分析而非人工检查来标记的,在涉及金融资产时,自动化分析通常是一种低价值的警告;通过使用DeFi Saver的闪电贷和代理授权功能可抢救用户资产。[2021/1/11 15:51:17]

另外我们发现,在swapExactAmountIn()的底部,_pullUnderlying()尝试从攻击者端收集相应消耗的STA。然而,由于STA转账时还会烧掉1%的手续费,实际BPool是收不到任何STA的。这样就使得BPool的实际STA余额和内部记账产生不匹配。

接下来是最有趣的一部分,攻击者调用gulp()不断重置_records,使得BPool中始终保持0.000000000000000001个STA。因此攻击者可以用极高价的0.000000000000000001个STA将流通池中的WETH、SNX、LINK等其他资产消耗光。

第四步:偿还闪电贷

最终,如上图所示,攻击者偿还了从闪电贷借出的104,331个WETH。

建议

此次攻击事件再次暴露了DeFi可组合性存在的兼容性风险。此前不久,Uniswap和Lendf.Me两个平台就因和ERC777标准的兼容性问题,产生了非常严重的黑客攻击事?件。需要警醒的是,在未来DeFi行业类似的黑客攻击行为或许会屡见不鲜。

如果问该怎样才能规避这类攻击事件的发生呢?或许有两个优化调整思路:1)STA/STONK在执行transfer()或transferFrom()时,当转账数额不足以支付手续费时,应该直接回滚或者返回False;2)?Balancer应该在每一次transferFrom()函数调用后检查BPool的余额。

当然,任何安全事件事后采取措施补救都无法弥补已经产生的损失,我们相信最好的解决方案还是事前防备。DeFi项目开发者应尽可能利用好的代码规范,并可寻求第三方安全公司协助其在上线前进行全面的攻防测试,尽可能找出一切潜在的漏洞。最后,尽可能对ERC20、ERC777和其它DeFi项目的任何组合行为都做好周密排查。

后续

毫无疑问,Balancer事件的发生势必也会对DeFi社区带来影响,而且这类事情接下来发生的可能性还会很大,在此提醒广大DeFi项目开发者应务必重视合约的安全问题。

经我们统计发现,Balancer在此次攻击事件共计损失了523,616.52美元的数字资产,详情列表如下:

标签:DEFIEFIDEFSTAGenesisDefidefibox币有价值吗一直跌defi communityMonsta XRP

Luna热门资讯
杭州区块链国际周丨科图链CTO王浩:“数据” 赋能一切产业的可编程社会

区块链行业经历了三个阶段,区块链1.0是以比特币为代表的可编程货币,区块链2.0是以以太坊为核心的可编程金融,区块链3.0是以产业区块链为重点的可编程社会。我们现在正处于可编程社会的阶段,在这个阶段最重要的是什么呢?就是数据.

1900/1/1 0:00:00
律师说:想玩虚拟币,你不得不知道的法律知识

转自:肖飒法律团队作者:肖飒BTC的财产属性,法律意义是什么?其法律意义一言以概之,在于:通过承认虚拟币是法律上的“财产”,给予其法律上的保护.

1900/1/1 0:00:00
揭秘灰度基金比特币产品溢价的真相,是风险还是机会?

据数据平台QKL123显示,从6月14日至6月20日,不到一周的时间里,灰度基金对比特币持仓量增加了约5200枚,其中,6月15日至少增持300BTC.

1900/1/1 0:00:00
一文读懂去中心化借贷协议——Aave

作者:DeFiRate,翻译:凌杰Aave是一个DeFi借贷协议,它使用户能够使用稳定和可变的利率借贷各种加密货币.

1900/1/1 0:00:00
“区块链第一考”今天结束,史上首张“区块链技术软件开发师”证书即将发放

史上第一张区块链考级试卷,你会做吗?给你做个题,看看会不会。以太坊开发者创建智能合约时,需要发送一笔交易到一个地址,这个地址的开头是 A、0x B、0x1 C、0x0 D、0x00 你知道答案吗? 7月4日,巴比特学院区块链职业技能等.

1900/1/1 0:00:00
巴比特专栏 | 美国SEC主席离任,对加密数字资产方面的监管政策有何改变?

在刚刚过去的这个周末,在美国的证券行业发生了一个非常有趣的事情。美国总检察长WilliamBarr提议现任SEC主席JayClayton担任纽约南部辖区的美国检察官。这是一个非常有意思的事情.

1900/1/1 0:00:00