北京时间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。
泰国暹罗商业银行:DeFi将颠覆传统金融:7月12日消息,暹罗商业银行的风险投资部门 SCB 10X 表示,它正在为去中心化金融 (DeFi) 颠覆传统银行业的潜在日子做准备。SCB首席风险投资官 Mukaya Tai Panich 在周六通过电子邮件与 CoinDesk 交谈时表示,DeFi 拥有当今传统金融所拥有的一切,我认为像我们这样的传统金融公司应该积极探索、投资和采用DeFi。当我们研究 DeFi 时,我们认为有朝一日银行和其他金融机构可能会完全去中介化。(coindesk)[2021/7/12 0:45:06]
3)攻击者利用STA代币和Balancer智能合约存在的不兼容性即记账和余额的不匹配性实施攻击,将资金池中的其他资产耗尽,最终共计获利价值523,616.52美元的数字资产。
DeFi基准利率今日为3.22%:金色财经报道,据同伴客数据显示,06月28日DeFi去中心化金融基准利率为3.22%,较前一日下降0.04%。同期美国国债抵押回购率(Repo Rate)为0.06%,二者利率差为3.16%。
DeFi基准利率代表了DeFi融资难易程度,利率越高说明融资成本越高,利率越低说明融资成本越低。其与Repo Rate的利率差则便于DeFi与传统市场作进行同类比较。[2021/6/28 0:11:34]
4)攻击者偿还从dYdX借出的闪电贷,并卷走了攻击所得的数字资产。
接下来的篇幅中,我们将逐步解析黑客在该笔闪电贷交易(http://oko.palkeo.com/0x013be97768b702fe8eccef1a40544d5ecb3c1961ad5f87fee4d16fdc08c78106/)中实施的攻击行为。
DeFi保险协议Cover Protocol发布BT.Finance索赔方案:2月15日,DeFi保险协议Cover Protocol官方推特表示,BT.Finance的索赔决定已经正式发布在链上。CVC决定的最终支付百分比为60%(所投入的140906枚DAI中的60%):1.枚CLAIM代币可兑换0.60枚DAI;2.1枚NOCLAIM代币可兑换0.40 枚DAI。CLAIM和NOCLAIM covTokens将在两天后开始。将很快部署新的nonce 1 covTokens。此前2月9日消息,智能DeFi收益聚合器BT.Finance遭受黑客攻击。[2021/2/15 19:47:12]
Balancer遭黑客攻击全过程技术拆解
第一步:闪电贷
DeFi项目总市值为130.16亿美元,概念币种3涨10跌:金色财经DeFi专区行情显示,DeFi概念币种24h行情3涨10跌,24h涨幅前三为:LEND(+18.58%)、DMG(+3.43%)、LRC(+1.93%);跌幅前三为:BNT(-11.21%)、ZRX(-5.37%)、LINK(-3.89%)。
DeFi项目总市值为130.16亿美元,市值排名前五的代币为:LINK(55.33亿美元)、LEND(10.74亿美元)、SNX(7.35亿美元)、UMA(6.67亿美元)、MKR(5.80亿美元)。[2020/8/26]
从dYdX闪电贷104,331WETH,这部分熟悉DeFi借贷模式的读者应该都比较清楚,此处不再赘述。
第二步:清空Balancer的STA资产
攻击者通过多次swapExactAmountIn()调用清空了Balancer的STA资产,为下一步实施攻击做准备。值得一提的是,我们发现合约代码中每次能够兑换的资产数额其实有上限,然而狡猾的攻击者预先计算了可兑换的WETH最大数额,并巧妙的让Balancer只剩了0.000000000000000001STA。
由于Balancer资金池各资产间存在“动态平衡”原理,仅剩接近于0的STA会拉高STA的价值,使得任何人都可以用1STA换到大量的其他数字资产。
第三步:攻击获利
经过前两个准备步骤之后,攻击者是时候展现真正技术了!
承上所述,攻击者通过swapExactAmountIn()函数将0.000000000000000001STA发送到BPool,以极高的价值差,立即兑换出了30,347个WETH,实现了获利。而此时,BPool的内部记账机制_records在BPool真正收到0.000000000000000001STA之前先加了1。
另外我们发现,在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美元的数字资产,详情列表如下:
本文链接:https://www.8btc.com/media/615706
转载请注明文章出处
标签:STAALABALANCEstarlink币值多少钱MEGALAND币Balance.FinanceSqueezetoken Finance
文/币锦峰投资者在市场分析时对移动平均线情有独钟,懂得基础知识的投资者都知道分析指标有很多,但为何他们偏偏钟情于移动平均线呢?带着这个疑惑,币锦峰和大家揭秘移动平均线的优点到底是什么.
1900/1/1 0:00:00分析:3个原因显示比特币虽跌破9000美元但依然看涨比特币今日凌晨短时跌破9000美元大关,创一周多以来的新低,导致价值数千万美元的多头平仓,动摇了多头的上行预期.
1900/1/1 0:00:00行情很简单,没有什么交易上的难度。尊重市场,市场才会尊重你,而不是盲目的靠自己感觉瞎做,这样的基本活不到下一个天明.
1900/1/1 0:00:00应GICC格林币升级公链需求,已将原有GICC代币更改名为GICCerc20,现GICC为公链代币,持原有GICCerc20的用户可映射为Green公链代币GICC.
1900/1/1 0:00:00北京时间6月29日8点,反映加密货币市场整体走势的ChaiNext100指数报815.84点,过去24小时上涨1.61%,成交额322.55亿美元,成交较前24小时减少15.12%.
1900/1/1 0:00:00尊敬的用户:BiKi平台即将上线OKS,并开放OKS/USDT交易对,具体时间如下:1、开放充值时间:6月26日13:302、开放交易时间:6月26日13:303、开放提现时间:待定同时.
1900/1/1 0:00:00