火星链 火星链
Ctrl+D收藏火星链

WET:采用延时喂价还被黑?Warp Finance 被黑详解

作者:

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

By:慢雾安全团队

背景

2020年12月18日,据慢雾区情报DeFi项目WarpFinance遭受闪电贷攻击。以下是慢雾安全团队对整个攻击流程的详细分析。

攻击过程分析

(分析过程较多,快速了解攻击思路可以直接查看下方完整攻击流程部分)

1、通过攻击交易可以看出攻击者通过Uniswap和dydx闪电贷借出了约290万DAI和34

通过以上代码第11行我们可以看到合约通过collateralizedLP记录了攻击者抵押的LPToken的数量。

4、之后攻击者的操作是本次攻击最关键的一步:攻击者通过Uniswap的WETH-DAI交易对将大约34万的WETH兑换成约4762万DAI,此时WETH-DAI池子中约剩下有43

2)从上方代码第3、4行,我们可以发现WarpControl合约是通过getBorrowLimit函数来获得用户可以借出稳定的数量,接下来我们具体看getBorrowLimit函数:

*

functiongetBorrowLimit(address_account)publicreturns(uint256){uint256availibleCollateralValue=getTotalAvailableCollateralValue(_account);returncalcBorrowLimit(availibleCollateralValue);}

Nexo创始人:更多拉丁美洲国家采用BTC将把价格推高至10万美元:加密借贷平台 Nexo 联合创始人 Antoni Trenchev 预计,在采用率增加等因素的支持下,比特币可能会在一年内达到 100,000 美元大关。 根据 Trenchev 的说法,南美国家的采用填补了机构对比特币的投资缺口。(finbold)[2021/6/19 23:49:06]

3)通过分析我们可以发现getBorrowLimit函数先通过getTotalAvailableCollateralValue函数计算出availibleCollateralValue,再将计算结果作为参数传入calcBorrowLimit函数中,最后返回具体的数量。我们先分析getTotalAvailableCollateralValue函数:

functiongetTotalAvailableCollateralValue(address_account)publicreturns(uint256){//getthenumberofLPvaultstheplatformhasuint256numVaults=lpVaults

//returntotalUSDCvalueofallcollateralreturntotalCollateral

Ripple CEO:Spark代币空投将促进采用并推动XRP价格上涨:Ripple首席执行官Brad Garlinghouse接受采访时提到Flare Networks。在Ripple投资部门Xpring支持下,该项目旨在增加Ripple的互操作性和XRP用例数量,将实现图灵完全联邦拜占庭协议(FBA)协议。

他表示,“这是一家非常令人兴奋的创业公司。他们正在用Spark代币做一些非常有趣的事情。但这与Ripple的做法截然不同。对我来说,这只是人们认识到XRP是如此高效数字资产的又一个例子,正如我们谈到的,效用将推动任何数字资产的长期价值。看到Flare Networks这样的公司,看到他们以各种方式使用XRP网络,这是向前发展的机会,但这不会影响RippleNet客户以及我们如何为客户使用ODL(按需流动性)。”

他补充说,“我认为XRP持有者应对Flare的做法感到兴奋。我对Flare的工作很兴奋。正如我们所说,任何时候你看到真正的效用解决真正的问题,我认为Flare开拓了一个有趣的利基市场,随着其空投Spark代币,我对其持乐观态度。我见过管理团队,认为他们很有才华、对将要解决的问题有清晰认知。”(Crypto News Flash)[2020/12/5 14:07:25]

4)对getTotalAvailableCollateralValue函数进行具体的分析我们可以看到此函数通过for循环来获得DAI、USDT、USDC的可借数量总和。我们可以发现在for循环的逻辑中通过Oracle

以太坊联合创始人:以太坊2.0即将到来,企业采用仍需一定时间:金色财经报道,以太坊联合创始人、ConsenSys创始人Joseph Lubin在接受采访时表示,以太坊2.0即将到来,现在处于他们所认为的最终测试网的中间。在由不同团队构建的许多以太坊2.0客户端中,已在测试网上进行了许多流畅的操作。尽管以太坊2.0取得了显著进步,但需要指出,企业采用可能需要一些时间。Lubin评论说,以太坊2.0的第三阶段将在2021年下半年或2022年的某个时候进行。一旦发生,将有能力从以太坊1.0顺利接纳客户。[2020/9/12]

通过以上代码我们可以知道LP价格是如何得出的,以WETH-DAI池为例:其通过池子中WETH的数量乘WETH的价格加上池子中DAI的数量乘DAI的价格最后除以池子总的LPToken数量即可得到单个LPToken的价格。具体计算算式如下所示:

通过以上分析我们可以知道WETH的价格和DAI的价格获取是正常的,无法被恶意操纵,因此我们可以大胆猜测:攻击者通过将巨量的WETH打入WETH-DAI池子中换取DAI,这时候池子中WETH的数量将大大的增加,而由于滑点的存在,这种巨量兑换操作必然是会亏损一大部分WETH的。所以我们再看上面LP单价的计算方式,由于WETH数量的大大增加,在巨量兑换后池子中WETH数量*WETH价格池子中DAI数量*DAI价格将远大于巨量兑换前的,也就是池子的总价值大大增加了。所以LP的单价也随之提高了,因此攻击者就可以通过其抵押的LPToken借出更多的稳定币了。

光一科技:CCDI“版权云”采用的区块链技术是外购基础上的自主创新:光一科技(300356.SZ)在互动平台表示,公司投资的CCDI“版权云”项目采用的区块链技术是外购基础上的自主创新。(新浪财经)[2020/4/18]

分析思路验证

我们可以借助Ethtx.info来验证我们的猜测是否正确:

https://ethtx.info/mainnet/0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090

1、通过上文中第4点分析我们可以知道:攻击者通过Uniswap的WETH-DAI交易对将大约34万的WETH兑换成约4762万DAI,此时WETH-DAI池子中约剩下有43.6万枚WETH和1328.8万枚DAI,而在此之前池子里约有9.5万枚WETH和6091万枚DAI。

2、我们可以在Ethtx.info发现在兑换前WETH-DAI池子的LPToken单价为58815427。

巨量兑换后WETH-DAI池子的LPToken单价为135470392。

我们可以看到由于WETH数量的增加造成兑换后池子的总价值几乎翻倍了,因此单个LPToken在Warp中可借出的稳定币就更多了。

迪拜旅游局计划采用区块链技术促进旅游产业民主化:迪拜正式宣布将在两年内通过创建一个虚拟的商务市场实现旅游业的民主化。官方声称将采用智能合约和区块链技术使迪拜保持领先世界10年。迪拜旅游局局长Helal Saeed Almarri说:“迪拜旅游局决心在旅游创新方面建立全球领先的地位,加快实行他们的‘数字、移动和社交’战略”。[2018/3/4]

3、接下里如我们猜测的那样攻击者在拉高LPToken的价格后通过WarpControl合约的borrowSC函数分别借出DAI和USDC。

4、最后在Uniwsap的WETH-DAI池子总归还DAI,重新拿回34万枚WETH完成攻击操作。最后只需按部就班的归还闪电贷即可获利。

完整的攻击流程如下

1、攻击者部署攻击合约,并通过dydx与Uniswap闪电贷借出DAI和WETH。

2、攻击者拿出一小部分的DAI和WETH在Uniswap的WETH-DAI池中添加流动性,并获取LPToken。

3、攻击者使用添加流动性获取的LPToken抵押到WarpFinance中,为借出稳定币做准备。

4、攻击者利用巨量的WETH在Uniswap兑换成DAI来拉高WETH-DAI池子的总价值,使得WarpFinance中LPToken的单价变高。(注意这里WETH和DAI价格获取是正确的并没有被操纵,被操纵的是WETH的数量,通过增加WETH的数量来拉高池子的总价值)。

5、由于LPToken的单价变高,导致攻击者抵押的LPToken可以借出更多的稳定币来进行获利。

总结

本次攻击的本质是通过操纵LPToken的单价来获取更多的稳定币可借贷数量进行获利的。这是由于在WarpFinance中LPToken的价格是通过LP池子的总价值除以LPToken的总数量得到的,虽然代币价格获取正确,但代币数量是可被操纵的,因此LP的单价就是可被操纵的,这就形成了攻击的必要条件了。最终项目方损失约800万美元,但攻击者抵押的LP也留在了Vault中,如果抵押的这部分LP后续可被清算的话可以一定程度上的弥补项目方的损失。

相关参考链接如下:

Uniswap预言机实现介绍:

https://uniswap.org/docs/v2/core-concepts/oracles/

本次分析的攻击交易:

https://etherscan.io/tx/0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090

往期回顾

HackingTime区块链安全攻防峰会第二期来啦!

以小博大,简析SushiSwap攻击事件始末

假钱换真钱,揭秘PickleFinance被黑过程

闪电贷重入攻击,OUSD损失700万美金技术简析

如何使用闪电贷从0撬动百万美元?ValueDeFi协议闪电贷攻击简要分析

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

币乎

https://bihu.com/people/586104

知识星球

https://t.zsxq.com/Q3zNvvF

火星号

http://t.cn/AiRkv4Gz

链闻号

https://www.chainnews.com/u/958260692213.htm

本文来源于非小号媒体平台:

慢雾科技

现已在非小号资讯平台发布68篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/9558996.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

币安为何推出第三条链?这对BNB意味着什么?

标签:ETHWETHWETDAIGreenETHweth币价格WET币Daily Crypto Giveaways

欧易交易所app下载热门资讯
以太坊:Vitalik Buterin:区块链并非取代反垄断法,可促进经济交易权力下放

权力下放是区块链和反垄断法的共同目标,法律和技术可以作为盟友以弥补各自不足。原文标题:《VitalikButerin:区块链与反垄断法的互补作用》撰文:ThibaultSchrepel、Vita.

1900/1/1 0:00:00
比特币:比特币减半短短6个月,创下历史新高23670 美金,小伙每天挖0.6个

近日,比特币的价格一直处于一个暴涨的状态,从减半之后到11月份,比特币突破13万,紧接着本月也是破历史记录15万,一直横盘在14-15万之间,今年的比特币暴涨也是带动了其他币种的跟随.

1900/1/1 0:00:00
VOS:Nervos 创始人详解:Layer 1 应该做什么

原文标题:《Layer1应该做什么》作者:janxNervosApproachNervosNetwork的技术目标是设计一个分层的加密经济网络.

1900/1/1 0:00:00
VITA:Vitalik 解释为何权益证明 PoS 更安全

在PoS中,总体奖励将非常低;在eth2中,我们预计验证者每年的奖励等于ETH总供应量的?0.5-2%。网络中验证者质押的币总量越多,收益率就越低.

1900/1/1 0:00:00
区块链:获李开复等人天使投资的墨群区块链发布在即,实现 Monoxide 论文第一阶段

墨群团队在国际顶级会议NSDI2019上发表Monoxide论文,如今将要发布该论文的第一个实现版本:墨群区块链.

1900/1/1 0:00:00
区块链:一览 Web 3.0 知识图谱:特征、技术路径与热门项目

跨链、分布式存储与隐私计算是Web3.0发展的核心技术栈。原文标题:《Web3.0技术与生态发展研究报告》撰文:WebX实验室AI、5G、大数据、区块链......,我们很清楚自己正处在一场全新.

1900/1/1 0:00:00