北京时间12月18日6时许,DeFi借贷协议WarpFinance遭到黑客攻击,造成了近800万美元的资产损失。
同时,WarpFinance官方也发布推文表示,已在调查违规贷款情况,并建议用户暂停稳定币的存入,直到事件真相明朗。成都链安团队在接到区块链安全态势感知平台报警后,第一时间对本次攻击事件进行了调查,结果发现:1、WarpFinance使用的是Uniswap交易对的相对价格作为其预言机的喂价源。2、攻击者在了解到这个情况后,使用从闪电贷中获取的巨额资金操纵了Uniswap交易对的价格。3、通过控制预言机喂价源信息,攻击者破坏了WarpFinance的借款价值判断标准。4、在WarpFinance错误的数据环境下,攻击者窃取了远远超过抵押品价值的资产。5、攻击者归还了从闪电贷中借出的款项。攻击交易地址
数据:被黄立成起诉的链上侦探ZachXBT已收到超90万美元捐款:6月18日消息,据0xScope数据显示,链上侦探ZachXBT发布的0x6ea开头麻吉大哥诉讼案捐款地址目前已收到超90万美元捐款。[2023/6/18 21:45:04]
0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090攻击过程精析
攻击者首先利用Uniswap进行闪电贷借款,并采用镶嵌式的手法,在WBTC2、USDC3以及USDT2池中分别进行了WETH借贷,如下图所示:
Gary Gensler:在SEC两年已提起1500项执法行动:金色财经报道,美国证券交易委员会(SEC)主席Gary Gensler在社交媒体表示,在他服务该监管机构的两年时间里,已提起1,500项执法行动并监督了数万名注册实体。Gary Gensler还表示,美国证券交易委员会提出了一些规则,以使市场更高效、更具竞争力、更透明、更有弹性,并且更值得公众信任。Gary Gensler今日在美国国会作证时表示,自己未持有包括比特币在内的任何加密货币。[2023/4/20 14:14:38]
其后,为扩大用于攻击的资金量,攻击者又在dYdX进行了闪电贷借款。如下图所示:
美国政府暂缓Voyager出售给Binance.US交易中提交的“根据案情的实质性证据”:金色财经报道,据美国纽约南区地区法院法庭文件显示,美国政府在暂缓 Voyager 将其资产出售给 Binance.US 提议中展示了“根据案情的实质性证据”(a substantial case on the merits),若不暂缓交易将会造成不可挽回的损害。文件结论显示,美国纽约南区地方法院地方法官 Jennifer Rearden 决定加快上诉的简报与裁决,并为 Voyager 出售给 Binance.US 设定最后期限以避免拖延太久,要求政府在 4 月 7 日之前提交其简报,Voyager 债务人与债权人委员会应于 4 月 14 日提交简报,政府应在 4 月 18 日前对 Voyager 予以回应。
注,“根据案情”(on the merits)是指案件的判决取决于适用于案件中提出的特定证据与事实的法律,与基于程序理由作出决定的案件相反。通常,“根据案情”的决定被认为是最终决定。
此前报道,3 月 28 日,美国纽约南区地方法院地方法官 Jennifer Rearden 批准了美国司法部提出的暂缓 Voyager 将其资产出售给 Binance.US 的计划,以等待对先前获得破产法官批准的出售的上诉。[2023/4/2 13:40:27]
此时,借出的资金规模已高达近2亿美元.接下来,攻击者向Uniswap的DAI2交易池中注入流动性,获取了流动性代币LP,如下图所示:
Pendulum已上线Polkadot主网,完成路线图第一阶段:3月1日消息,Pendulum已上线Polkadot主网,标志着该项目完成路线图的第一阶段。在其三阶段路线图中,后续阶段将包括推出Token Transferability Event、Spacewalk Stellar-Polkadot Bridge以及forex-AMM 0xAmber。目标是在3月份之前完成整个阶段。
Pendulum网络已经产出区块,并且在链上成功执行了第一笔交易。完成后,Pendulum的原生代币PEN将为Polkadot上的法币枢纽、Pendulum上的交易以及治理和质押提供动力。
此前1月消息,Polkadot宣布Pendulum赢得第35次平行链拍卖。(Finance Feeds)[2023/3/1 12:36:51]
当前Near Raibow桥接总资产为18.68亿美元:金色财经消息,Dune Analytics数据显示,当前Near Raibow桥接总资产为18.68亿美元,总用户数10553,总交易数28441。[2022/4/24 14:45:54]
然后,将所获的LP代币抵押在WarpFinance合约中,交易及代码如下图:
完成抵押后,攻击者利用借来的资金,将UniswapDAI2池中的DAI兑换殆尽,如下图所示:
上述“准备工作”完成后,价格已处于被操纵状态。另一方面,WarpFinance的预言机喂价源是来自UniswapLP代币的价格数据,代码如下图:
LP代币价格算法
/LP代币的总量其中,A代币与B代币的价格是由Uniswap的“对应代币与稳定币”交易对计算得出。因此,在上述情况下,A、B代币的价格处于正常水平、而交易对中的A、B代币相对价格则已经发生异常。这是因为Uniswap采用恒定乘积做市商机制,即A×B=K。当出现大量的兑换某一种代币时,就会产生巨大的滑点,从而产生价差。假设:A=A代币数量;B=B代币数量;AP=A代币价格;BP=B代币价格已知:A×B=k;Warp价格=/totalLP因AP和BP在本事件中皆为恒定,故可设AP=X1×BP,化简可得Warp价格=/B+B)×BP/totalLP可得结论为,X1×K、BP和totalLP在攻击中都是常数,随着B的数量增大,LP价格就会提高。攻击者正是利用了这一点,使用从闪电贷获取的巨额资金在交易池中海量添加其中一种代币的流动性,迫使另一种代币也随之巨增,从而引发LP的价格失衡。由于LP价格已被操纵,处于一个高位,因此,攻击者可以借出相比正常量更多的资产。此后,攻击者即通过调用以下函数进行贷款。
在成功控制抵押价格后,攻击者便能利用错误的价格数据贷出远远超过抵押品价值的资产,从中获取暴利。最后,攻击者归还了闪电贷的款项,如下图所示:
事件小结
很明显,这又是一起典型的由闪电贷巨款发起的预言机攻击事件。成都链安曾撰文指出,在当前黑客众多的攻击手法中,“预言机”喂价控制才是隐形的“元凶”。同时,成都链安也郑重提醒DeFi开发者,应加强预言机的针对性测试,特别是在项目上线前,尽可能模拟价格操控攻击的各类场景,及时发现问题并找出解决方案,切实提高项目抗预言机攻击的能力。短短一个月后,巨额的财产损失再一次告诫我们,在区块链领域中,安全防护工作尤为重要,许多系统安全漏洞属于防不胜防。因此,我们必须采取积极措施形成连续、有效的保护方案,才能在最大程度上提前规避问题。此外,如在DeFi项目运行中存在安防方面的任何技术问题,采取第三方安全技术解决方案不失为一种行之有效的办法。最后,成都链安再次呼吁,要加强对项目预言机等多方面的定期安全检测,以防范此类事件的再度发生。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。