02月15日,bZx团队在官方电报群上发出公告,称有黑客对bZx协议进行了漏洞攻击,且已暂停除了借贷外的其他功能。对于攻击细节,bZx官方并没有进行详细披露。
PeckShield安全人员主动跟进bZx攻击事件,发现这起事件是针对DeFi项目间共享可组合流动性的设计进行攻击,特别在有杠杆交易及借贷功能的DeFi项目里,该问题会更容易被利用。
Figure1:FiveArbitrageStepsinbZxHack
漏洞的攻击细节如下:
此攻击事件发生在北京时间2020-02-1509:38:57。攻击者的transaction信息可以在?etherscan?上查到。此攻击过程可以分为以下五个步骤:
第一步:闪贷获取可用资金
攻击者通过在部署的合约中调用了?dYdX闪贷功能借入了10,000个?ETH。这部分是已知的dYdX的基本借贷功能,我们不做进一步解释。
ApeCoin基金会特别委员会和治理工作组管理员候选人第二阶段提名流程正式启动:金色财经报道,ApeCoin官推发布信息,ApeCoin基金会特别委员会和治理工作组管理员候选人第二阶段提名流程已正式启动并提供了为期两周的讨论期,社区成员可以在此期间与提名人交流沟通并访问特别委员会和工作组管理员的ApeCoin Discourse,讨论期将于6月11日结束。此外,ApeCoin还公布了后续流程时间:6月15日至21日ApeCoin DAO社区将投票选出候选人、6月22日至28日启动选举、7月1日新任期开启。[2023/5/30 9:50:09]
Figure2:FlashloanBorrowingFromdYdX
当第一步操作过后,如下表中攻击者资产,此时并没有收益:
第二步:囤积WBTC现货
通过第一步闪贷获得ETH后,攻击者将其中的5,500ETH存入Compound作为抵押品,贷出112WBTC。这也是正常的Compound借贷操作,贷出的WBTC将在第四步中被抛售。
跨链桥Hop社区发起定期奖励Hop DAO贡献者的提案:3月22日消息,DAO 治理公司 StableLab 在跨链桥 Hop 社区发起旨在定期奖励主动为 DAO 做出贡献的 Hop DAO 社区成员的 RFC(Request For Comments)提案。根据该提案,社区的任何成员都有资格获得奖励。每个月,论坛上都会开设一个提名讨论帖。为 Hop DAO 做出贡献的社区成员可以自我提名或由他人提名获得追溯奖励。
提案还提出一个为期 6 个月的试点计划,在初始测试期间会将价值 3 万美元的 Hop Token 发送给社区多重签名,每位贡献者的最高申请额度为 2000 美元。[2023/3/22 13:19:09]
Figure3:WBTCHoardingFromCompound
在此步骤操作后,我们可以看到关于攻击者控制的资产发生了改变,但此时仍然没有获益:
第三步:杠杆拉盘WBTC价格
利用bZx的杠杆交易功能,做空ETH购入大量WBTC。具体步骤是:攻击者存入1,300ETH并调用bZx杠杆交易功能,即接口mintWithEther(),在内部会继续调用接口marginTradeFromDeposit()。接下来,攻击者将从bZx5倍杠杆获得的5,637.62个ETH,通过?KyberSwap兑换成51.345576WBTC。请注意,此处做空ETH是借来的5倍。本次交易导致将WETH/WBTC的兑换率提高到109.8,大约是正常兑换率的3倍。
支付技术公司Nuvei Q4加密收入同比下降58%:金色财经报道,根据美国证券交易委员会周三上午提交的一份文件,支付技术公司Nuvei (NVEI) 公布2022年第四季度与加密货币相关的收入为1920万美元,比去年同期的4610万美元下降了58%。(CoinDesk)[2023/3/8 12:50:16]
为了完成此交易,KyberSwap基本上会查询其储备金并找到最优惠的汇率,最终只有Uniswap能提供这样的流通性,因此这个交易从本质上推动了Uniswap中WBTC价格上涨了3倍。
Figure4:MarginPumpingWithbZx(andKyber+Uniswap)
应该注意的是,这步操作在合约内部实现有个安全检查逻辑,但是实际上在交易之后并没有验证锁仓值。也就是说,当攻击发生时,此检查没有启用,我们在后面会有一节详细介绍此合约中的问题。
在这一步之后,我们注意到关于黑客控制的资产有以下改变。不过,在这一步之后仍然没有获利。
路透社:FTX过去72小时一直和美国监管机构联系备案:11月15日消息,据本周披露的一份文件显示,在美国监管机构正式针对FTX破产事件展开调查之后,FTX公司人员在过去72小时内一直与美国监管机构和其他国际监管机构保持联系并进行了相关备案。[2022/11/15 13:06:55]
第四步:抛售WBTC现货
在Uniswap中WBTC价格飙升后,攻击者将第二步中通过Compound借的112WBTC全部卖给Uniswap并返还了相应的WETH。
这次交易攻击者共计获得6,871.41个ETH的净额作为回报。在这一步之后,可以看到攻击者已经获得不少利润。
Figure5:WBTCDumpingWithUniswap
第五步:闪贷还款
攻击者从抛售的112WBTC中获得的6,871.41个ETH,将闪贷的10,000个ETH偿还给dYdX,从而完成闪贷还款。
日本政府向地方当局颁发NFT证书:金色财经报道,根据CoinPost的一份报告称,所谓的“数字证书”被授予“2022年夏季Digi Takoshien”竞赛的地方政府当局获胜者,以嘉奖其在该竞赛中使用数字技术振兴当地社区的努力。
NFT奖励由日本内阁官房长官松野博和领导的政府机构内阁秘书处发放。岸田首相也出席了颁奖典礼,这是该机构第一次使用NFT。
岸田首相今年曾多次谈到NFT,并表示元宇宙和NFT相关的创新可以促进日本Web3的发展。[2022/9/8 13:15:15]
在这一步之后,我们重新计算了以下资产详情。结果显示,攻击者通过此次攻击获得71ETH,加上这两个锁仓:Compound和bZx。bZx锁仓处于违约状态,Compound的锁仓是有利可图的。显然,在攻击之后,攻击者就开始偿还Compoud债务以赎回抵押的5,500个WETH。由于bZx锁仓已经处于违约状态,攻击者也不再感兴趣了。
参考1WBTC=38.5WETH的平均市场价格,若攻击者以市场价格购入112WBTC花费约需4,300个ETH。此112WBTC用以清偿Compond债务并取回抵押品5,500ETH,则最终攻击者总共获利为?71WETH+5,500WETH-4,300ETH=1,271ETH,合计大约$355,880。
硬核解析:bZx可规避风险代码逻辑缺陷
通过前面攻击者在合约中实现的步骤可以看出,问题的核心原因是在第三步调用marginTradeFromDeposit()通过借贷的1,300ETH,加5倍杠杆来实现做空ETH/WBTC交易的,于是
我们进一步审查合约代码,发现这是一个「可避免的套利机会」,但因为代码存在的逻辑错误造成可用于规避风险的代码逻辑没有生效。具体代码追踪如下:
首先是marginTradeFromDeposit()调用_borrowTokenAndUse(),此处由于是以存入的资产作杠杆交易,第四个参数为true。
在_borrowTokenAndUse()里,当amountIsADeposit为true时,调用_getBorrowAmountAndRate()并且将borrowAmount存入sentAmounts。
在1,355行,sentAmounts被设置为sentAmounts并且于第1,370行调用_borrowTokenAndUseFinal()
经由IBZxinterface进入bZxContract的takeOrderFromiToken()函数。
bZxContract属于另一个合约?iTokens_loanOpeningFunctions?于是我们我们继续分析合约代码,在函数中发现有一个关键的逻辑判断:
在第148行,bZx事实上尝试利用oracle合约的shouldLiquidate()检查这个杠杆交易的仓位是否健康。然而,因为第一个条件已经为true,则继续执行,而忽略了shouldLiquidate()的逻辑判断。
事实上,在合约?BZxOracle?的shouldLiquidate()中实现了对getCurrentMarginAmount()<=loanOrder.maintenanceMarginAmount判断,如果执行到shouldLiquidate()就可以有效避免这个攻击的发生。
如前所述,这是一次很有意思的攻击,它结合了各种有趣的特性,如贷款、杠杆交易和拉高价格等。之所以可能发生这种攻击,是因为当前项目共享可组合流动性的设计。特别是,5倍杠杆交易允许用户以相对较低的成本借入大量代币,加上DeFi项目间共享的流动性,导致交易价格更容易被操控。
正如二十年前的互联网一样,区块链正在悄然改变着我们的生活。著名物理学家张首晟教授说过:区块链技术是互联网世界新的分合转折点.
1900/1/1 0:00:00据Beincrypto2月16日报道,美国总统唐纳德?特朗普的一名高级官员提议称,美国新的经济刺激方案可能包括“401(k)计划”以外的免税投资.
1900/1/1 0:00:00Lition,是一个商业区块链项目,微软在2月18日宣布,其已经正式将Lition区块链解决方案引入其Azure云市场.
1900/1/1 0:00:00来源:澎湃新闻·金改实验室作者:杨耀东国内疫情开始拐向“负增长”,而经济方面的脱离负面影响的拐点仍未到来。一些工厂仍然停工、商店餐馆关门、村庄封路、各个写字楼也要控制办公人数.
1900/1/1 0:00:00文|秦晓峰?出品?|?Odaily星球日报BitUniverse数据显示,过去48小时,加密市场遭遇重创,全线暴跌.
1900/1/1 0:00:00比自己丢钱更让人懊恼的事儿,莫过于你让别人保管你的钱,别人还把你的钱给弄丢了。 币圈的大佬们经常说的一句话是“你要是不掌管私钥,就没有真正拥有过加密货币”;因此,币圈的每个人都应该遵守的两条规则.
1900/1/1 0:00:00