bZx 年内上演安全问题「 帽子戏法」 DeFi 安全「危」与「机」并存_BZX:DEFI

昨日,DeFi借贷协议bZx年内第三次遭到攻击,由于代码重复事故导致共计损失价值超800万的资产,这距离BZx新版本部署仅不到两周。受此影响,bZx代币BZRX过去?24小时跌近30%,从0.6679USDT一度跌至0.4USDT,发文时暂报0.44USDT。

BZRX30分钟K线图,来源:币安

与此同时,bZx?锁仓量较昨日暴跌99.71%,几乎归零,目前仅为176美元。

北京时间9月14日下午3点半左右,bZx发现其协议总锁定价值出现显著下降。大约3小时后bZx确认多个iToken发生了重复事故,即iToken合约中的_internalTransferFrom()函数出现异常行为,攻击者利用了相同的_from和_to地址调用了传输函数。确认问题后bZx随即暂停了放贷操作。

DeFi借贷协议bZx推出staking门户网站用以发放vBZRX回扣:9月10日,DeFi借贷协议bZx官方发推宣布,用户现在将通过staking门户网站申请vBZRX回扣。以前,回扣与每笔交易一起分发。现在是手动申请过程。这将为所有用户节省大量的Gas。[2020/9/10]

bZx表示,目前该函数异常行为已被修复,协议也已恢复正常运行。借款和交易未受到影响,用户不会受到资金风险。bZx也已部署了新版本的iToken合约,并针对重复事故重设了余额。修复后的代码已发送给区块链安全公司Peckshield和Certik进行审查。目前iToken的铸造和销毁已恢复。

bZx披露的信息显示,此次重复事故发生后已将以下债务添加至其保险基金中,包括近22万LINK、4502ETH、175.64万USDT、141.20万USDC、以及66.80万DAI,按当前价格计算,总价值逾800万美元,具体如下:

bZx将推出Fulcrum 2.0 包含闪电贷功能:8月27日,去中心化借贷平台bZx官方宣布,将发布新升级的产品Fulcrum 2.0,主要用于代币化借贷和保证金交易。同时,Fulcrum 2.0具有闪电贷(Flash Loan)功能。[2020/8/27]

219,199.66LINK

4,502.70ETH

1,756,351.27USDT

1,412,048.48USDC

667,988.62DAI

去中心化借贷协议Compound创始人RobertLeshner表示,这意味着bZx损失了价值800多万的资产,并建议bZx重新审计合约,而不是仅向用户表示「nobigdeal」。

针对bZx协议被攻击一事,Bitcoin.com首席工程师MarcThelan表示,昨晚其在bZx中发现了该漏洞,有价值超过2000万美元的资产处于危险之中。MarcThelan称其将该漏洞告知了bZx团队,但该团队反应过于缓慢。等到bZx团队获悉该漏洞时,攻击者几乎已经耗尽了Dai和USDC资产。如果攻击者有更多时间,可能会耗尽整个池子。bZx的一位创始人在电报群中表示,团队安全小组建议给MarcThelan1.25万美元的赏金。

bZx治理代币BZRX将于7月13日上线:DeFi贷款协议bZx在推特表示,其代币BRZX将于北京时间7月13日22点开始发放。团队决定将分配给众售所用的代币置于一个为期4年的锁定合约,最短生效期为6个月,从代币释放的时间(7月13日)开始计算。目前团队并没有公布更多信息,包括可购买该代币的交易平台以及代币价格等。[2020/7/7]

1inch联合创始人AntonBukon此前也发现了该漏洞,其表示,「我们发现有人在两天前就利用该漏洞将自己的余额增加到1.536亿枚iUSDT,并开始从USDT池中转走,直到bZx协议管理员销毁了1.519亿枚iUSDT,这表明似乎有170万USDT被盗。」

关于bZx协议管理员销毁iUSDT一事,以太坊开发人员RomanSemenov解释称,bZx协议管理员使用了一个允许其销毁任何用户资金的后门,然后将代币的实现状态更新为未经验证。在销毁一些涉及攻击的用户资金后,他们再次将其更新为漏洞修复后的正常实现。

动态 | 尽管DEX交易量飙升,但BzX漏洞事件凸显行业隐忧:去年,以太坊上的DEX交易额超过23亿美元,而2020年有望轻松超越。根据Dune Analytics的数据,以太坊DEX过去7天的交易额达到1.19亿美元,同比增长71%。与此同时,为了满足不断增长的需求,新的DEX也在不断涌现。尽管如此,DEX行业依然存在隐忧。2月15日发生的DeFi贷款协议BzX漏洞事件引发了激烈的争论,争论的焦点是去中心化的交易协议是否真的是去中心化的,还是一个“紧急开关”的存在会使所有这些声明无效。此前,BzX的一个合约被操纵,损失了约35万美元的ETH,而后该合约被关闭。注:BzX是第七大DeFi协议,锁定了超过1800万美元的资金。(Bitcoin.com)[2020/2/18]

bZx进一步解释称,该协议此前已经过区块链安全公司Peckshield及Certik的安全审计,并进行了大量的自动化测试,但通过审计并不能确保协议100%安全。Peckshield及Certik正在分析此次事件的根本原因。

动态 | bZx经历被操纵导致以太坊损失后部署合同升级:去中心化金融(DeFi)贷款协议bZx经历被操纵导致以太坊损失后,bZx表示,除除了暂时关闭Fulcrum进行维护之外,BZX部署了合同升级,他们说这将使他们的系统对类似攻击更有抵抗力,并表示他们将通过从银行流向“现有iETH持有者的利息和退出流动性”来覆盖攻击者的贷款偿还。在攻击的事后调查中,DeFi贷款的保险经历了严重的上升,在Maker,Compound,Dydx和Bzx等协议中购买了价值数十万美元的保险。(News.Bitcoin)[2020/2/18]

DeFi项目频繁遭受攻击,刺激去中心化保险需求

事实上,这并不是bZx协议首次受到攻击。今年2月中旬,bZx协议曾两次受到攻击,共计损失价值逾90多万的资产。当月中旬,bZx联合创始人KyleKistner表示,「部分ETH已损失,此次事件是因为一个合约被利用导致的,其他资金是安全的。」业内人士估测,此次损失金额约为35万美元。

3天后,bZx再次受到攻击。bZx表示又发现了一次使用闪电贷进行的可疑交易,攻击者后续使用了Synthetix交易,不过没有影响到Synthetix系统。

除bZx之外,近期随着DeFi热度的大幅提升,安全问题成为了DeFi行业的最大挑战。据PeckShield数据显示,八月共发生安全事件28起,其中DeFi市场就发生了8起。

正因如此,去中心化保险的市场需求应运而生。NexusMutualTracker数据显示,截至目前,去中心化保险NexusMutual的有效保额突破了2亿美元,较之两个月前,该数值已经增长逾20倍。

而在过去短短的24小时左右时间里,该数据就大涨130%,今日bZx的安全事故显然成为了去中心化保险「大跃进式」增长的重要催化剂。

去中心化保险NexusMutual的有效保额,来源:NexusMutualTracker

可以想象,随着DeFi市场的持续发展,去中心化保险、预言机等细分市场有望继续保持增长势头。

bZx协议代码安全漏洞的技术细节与进展更新

根据bZx发布的漏洞?报告,此次事件发生后的团队所采取的进展以及技术细节如下:

团队注意到协议总锁定价值出现了异常变动;

在iToken上识别出与_internalTransferFrom()函数相关的异常行为;

团队在确定修复方案后暂停了iToken的铸造和销毁,不过,借款和交易并未受到影响;

部署了新版本的iToken合约,并重设了余额;

修复后的代码已发送给Peckshield和Certik进行审查;

恢复iToken的铸造和销毁。

在以太坊ERC20代币中,TransferFrom()函数是将一定数量的代币从一个地址转移至另一个地址的执行操作,即从地址_from发送_value个token到地址_to。

此次iToken重复事故正是攻击者利用了相同的_from和_to地址调用了传输函数。

有误的代码

当_from和_to地址相同时,会导致_balancesFrom和_balancesTo相等。

有误的代码

上述问题导致再减少_balancesFrom余额的情况下增加了_balancesTo的余额,并且还保存了_balancesFromNew和_balancesToNew,这会导致用户能够人为地增加自己的余额。

修复后的代码在balances余额减少后,会进行balancesTo余额的转移,从而防止用户人为增加自己的余额。

修复后的代码

撰文:张改娟

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

水星链

[0:15ms0-0:549ms