亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

當(dāng)前位置:主頁 > 區(qū)塊鏈 > 資訊 > HopeLend遭受借貸攻擊

去中心化借貸平臺HopeLend遭受借貸攻擊事件分析

2023-10-22 12:37:37 | 來源: | 作者:佚名
Hope.money 的借貸池受到了基于閃電貸實施的攻擊,本次攻擊涉及的協(xié)議是 HopeLend,是一個去中心化借貸平臺,用戶可以為協(xié)議提供流動性或者超額抵押借貸賺取收益

北京時間 2023 年 10 月 18 日 19:48:59,Hope.money 的借貸池受到了基于閃電貸實施的攻擊。

Hope.money 包括了借貸平臺 HopeLend、去中心化交易所 HopeSwap、穩(wěn)定幣 HOPE 和治理代幣 LT,為用戶提供去中心化金融全棧服務(wù)。

本次攻擊涉及的協(xié)議是 HopeLend,是一個去中心化借貸平臺,用戶可以為協(xié)議提供流動性或者超額抵押借貸賺取收益。

事件始末

在 HopeLend 的代碼實現(xiàn)中,借貸池存在可被利用的漏洞,由于在銷毀存款憑證時,出現(xiàn)了錯誤的整數(shù)除法問題,導(dǎo)致小數(shù)點部分被截斷,實現(xiàn)了銷毀比預(yù)期少的憑證數(shù)量,獲得和預(yù)期一致的價值代幣。

攻擊者利用這個缺陷掏空了 Hope.money 上存在資金的多種借貸池。

其中 hEthWbtc 借貸池于 73 天前部署,但是其中沒有資金,因此黑客通過往該借貸池注入大量資金來達(dá)到讓貼現(xiàn)率戲劇性地暴漲,從而實現(xiàn)了在一個區(qū)塊交易內(nèi)快速掏空了所有其他借貸池子的資金。

更戲劇性的是,實現(xiàn)利用的黑客沒有獲得漏洞利用的資金,他的攻擊交易被搶跑者發(fā)現(xiàn),搶跑者模仿其攻擊行為并成功搶走了所有攻擊收益資金(527 ETH),最終有 50% 的攻擊收益資金 (263 ETH) 被搶跑者用于賄賂打包區(qū)塊的礦工(payload)。

發(fā)現(xiàn)漏洞的初始黑客,在區(qū)塊 18377039 創(chuàng)建了攻擊合約,并在區(qū)塊 18377042 進(jìn)行了攻擊合約的調(diào)用,此時搶跑者監(jiān)控到內(nèi)存池里的交易,并將其攻擊合約進(jìn)行模擬,作為搶跑合約的輸入,在同樣的 18377042 區(qū)塊進(jìn)行利用,而初始黑客在 18377042 區(qū)塊的交易由于排序在搶跑者后面,從而執(zhí)行失敗了。

資金去向

搶跑者在獲得收益后的一小時,將資金轉(zhuǎn)移到:0x9a9122Ef3C4B33cAe7902EDFCD5F5a486792Bc3A

在 10 月 20 日 13:30:23,疑似官方團(tuán)隊聯(lián)系了該地址,允許搶跑者留下 26 ETH(10% 的獲利)作為獎勵,并得到搶跑者的答復(fù)。

最終資金在溝通一個小時后,轉(zhuǎn)移到 Gnosis Safe 的多簽金庫中。

下面我們將展示真實的漏洞和黑客進(jìn)行利用的細(xì)節(jié)。

前置信息

HopeLend 的借貸協(xié)議實現(xiàn) Fork 自 Aave,因此涉及到漏洞相關(guān)的核心業(yè)務(wù)邏輯參考自 Aave 的白皮書。

0×00 存款和借貸

Aave 是一個純粹的 DeFi,借貸業(yè)務(wù)通過流動性池實現(xiàn),用戶在 Aave 存款提供流動性時,期望獲得借貸所獲得的收益。

貸款收益并不會完全分配給用戶,有少部分利息收入會被計入風(fēng)險儲備金,此部分比例較少,大部分貸款收益會分發(fā)給提供流動性的用戶。

在 Aave 中進(jìn)行存款放貸時,Aave 是通過貼現(xiàn)的方式,將不同時間點的存款數(shù)量轉(zhuǎn)化成流動性池初始時間點的存款數(shù)量份額,因此每數(shù)量份額的底層資產(chǎn)對應(yīng)的本息和,就可以直接用 amount(份額) * index(貼現(xiàn)率)算出來,大大方便了計算和理解。

可以理解為類似購買基金的過程,基金的初始凈值是 1,用戶投入 100 塊錢獲得 100 的份額,假設(shè)經(jīng)過一段時間獲得收益,凈值變成 1.03,此時用戶再次投入 100 塊錢,獲得的份額是 97,用戶的總份額是 197。

這其實是將該資產(chǎn)按照 index(凈值)進(jìn)行貼現(xiàn)處理。之所以這么處理,是因為用戶實際的本息和是用 balance 去乘以當(dāng)前的 index。當(dāng)?shù)诙未婵畹臅r候,用戶正確的本息和應(yīng)該是 100 * 1.03 + 100 = 203,如果不做貼現(xiàn)處理,第二次用戶存入 100 后的本息和就變成了 (100+100) * 1.03 = 206,是錯誤的,如果進(jìn)行了貼現(xiàn),本息和就變成了(100 + 100 / 1.03) * 1.03 = 103 + 100 = 203,203 的結(jié)果是正確的。

攻擊過程

0×25126……403907(hETHWBTC pool)

0x5a63e……844e74(攻擊合約 – 套現(xiàn))

借出初始閃電貸資金,進(jìn)行質(zhì)押

攻擊者首先從 Aave 閃電貸借入 2300WBTC,將其中 2000 枚 WBTC 質(zhì)押(deposit)到 HopeLend,資金將會被轉(zhuǎn)移至 HopeLend 的 hEthWbtc 合約(0×251…907),同時獲取相應(yīng)的 2000 枚 hETHWBTC。

借助空借貸池操縱初始貼現(xiàn)率(liquidityIndex)

從 HopeLend 進(jìn)行閃電貸借入 2000 枚 WBTC。

目前的價值是 1 hETHWBTC = 1 WBTC。

按照正常的存取 ETHWBTC 換回 WBTC 的操作,是不會影響兌換比例(只有當(dāng)收入了利息才會影響兌換比例,1 hETHWBTC 會獲得更多 WBTC)。

此時黑客開始通過一系列復(fù)雜操作,操縱貼現(xiàn)率:

黑客直接又將得到的 2000 枚 WBTC 通過直接轉(zhuǎn)賬(transfer)的方式轉(zhuǎn)移資金至 HopeLend 的 hEthWbtc 合約 ( 0×251…907),這一步并不是還貸。

黑客隨后取出(withdraw)之前步驟 1 中質(zhì)押(deposit)的絕大部分 WBTC(1999.999…),所以上一步才需要轉(zhuǎn)回 WBTC 以補充池子內(nèi)的資產(chǎn)。

最后黑客手上僅保留最小單位 (1e-8) 的 hEthWbtc,這里不能完全提完,是因為需要留下一點點,作為計算貼現(xiàn)率(liquidityIndex)時,會基于現(xiàn)有的加上新增的,如果清零的話,導(dǎo)致貼現(xiàn)率(liquidityIndex)變成 0,就不能讓池子里的比例失衡。

把上一步銷毀掉絕大部分 hEthWbtc 換回來的 wBTC,加上之前閃電貸剩余的 wBTC,歸還向 HopeLend 池子借出的閃電貸,共支付 2001.8 枚 WBTC( 其中包含利息 1.8 枚 wBTC)。

上面的過程銷毀掉大部分的 hEthWbtc,只留下 1 最小單位(1e-8)的 hEthWbtc 在黑客賬戶,這樣一來 hETHWBTC 總量就減少了,而借貸池里卻有 2001.8 枚 wBTC,此時的貼現(xiàn)率(liquidityIndex)達(dá)到驚人的 126,000,000。

這里涉及到一個知識,存款用戶的利息根本上來自池中流動性的增長,借貸池會根據(jù)存款率和使用率,動態(tài)調(diào)節(jié)借款和存款利率。

此處,當(dāng)池子從閃電貸利息 (1.8WBTC) 獲得額外流動性時,百分之七十 (126,000,000) 被計入 liquidityIndex(liquidityIndex),這個數(shù)值用來計算每單位存款 (hEthWbt) 的貼現(xiàn)價值。

由于池子在黑客操作前為空,還款后 totalLiquidity 僅為 1,amount 是 126000000,初始 liquidityIndex 為 1,得出結(jié)果為 126000001。

繼續(xù)放大貼現(xiàn)率

黑客繼續(xù)從 HopeLend 進(jìn)行閃電貸借入 2000 枚 WBTC,并每次歸還額外的 1.8 枚 WBTC,使得每次 LiquidityIndex 得以累加 126,000,000。

黑客重復(fù)執(zhí)行了 60 次該過程,最終 liquidityIndex 達(dá)到 7,560,000,001,攻擊者持有的 1 個最小單位的 hEthWBTC 貼現(xiàn)價值可達(dá) 75.6WBTC(約為 214 萬美元)。

這也就使得黑客操控了 hEthWBTC,使之價值失真。

掏空其他存在資金的借貸池,形成收益

攻擊者接著將 1 個最小單位的 hEthWBTC 為抵押,從 HopeLend 的其他五個代幣池借出了大量資產(chǎn)。

包括:

175.4 – WETH

145,522.220985 – USDT

123,406.134999 – USDC

844,282.284002229528476039 – HOPE

220,617.821736563540747967 – stHOPE

這些代幣被作為收益通過 Uniswap 兌換為 WBTC 和 WETH,扣除各種費用后,最終黑客獲利為約 263 枚 WETH(除去賄賂 payload 的 263.9 枚 WETH)。

為什么黑客可以從其他池子借走大量資金:

借款或取走存款時,借貸合約會檢驗用戶的抵押資產(chǎn)狀況,確保借出不超過抵押。

由于之前貼現(xiàn)率已被黑客操縱且貼現(xiàn)率會以 normalizedIncome 乘數(shù)計入抵押價值計算,其手中的一單位 hEthWBTC 抵押價值高達(dá) 75.6WBTC。

每一次從其他池借款,黑客都輕松通過了抵押資產(chǎn)校驗。

此時, 攻擊者總共在 HopeLend 投入了 2000+1.8*60 枚 WBTC 用于操縱 liquidityIndex,只留存了 1 單位的 hEtthWBTC。

利用關(guān)鍵漏洞點(整數(shù)除法錯誤)套現(xiàn)

為了取出之前的投入 wBTC,攻擊者部署了另一個攻擊合約:0x5a63e……844e74,并調(diào)用其中的 withdrawAllBtc() 方法:

漏洞過程如下

首先存入 151.20000002 枚 wBTC,根據(jù)當(dāng)前的 liquidityIndex(1 最小單位 hEthWBTC=75.6wBTC),攻擊者獲得 2 個最小單位的 hEthWBTC。

取出(withdraw)113.4 個 wBTC,反算出其對應(yīng)的 hEthWBTC 份額,對 hEthWBTC 進(jìn)行 burn 操作。

113.4 個 wBTC 需要銷毀 1.9999999998 最小單位的的 hEthWBTC,但是由于 div 函數(shù)精度問題,僅一個最小單位的 hEthWBTC 被銷毀,因此變成可被利用的漏洞,黑客仍可保留 1 個最小單位的 hEthWBTC。

關(guān)鍵漏洞

hEthWBTC 的 burn 方法調(diào)用了高精度除法 rayDiv。

此處:

a=11340000000(打算取出的 WBTC)

b=7560000001000000000000000009655610336(貼現(xiàn)率)

雖然 (a*1e27+b/2)/b = 1.9999999998,solidity 自帶的 div 方法截斷返回 1, 相當(dāng)于 11340000000 / 7560000001 除法后小數(shù)位被截斷了。

0x5a63( 攻擊合約 – 套現(xiàn) ) 繼續(xù)存入 75.60000001WBTC 恰好又獲得 1 個最小單位 hEthWBTC,從而繼續(xù)持有 2 個最小單位 hEthWBTC。

如此循環(huán)取出 113.40000000wBTC,存入 75.60000001wBTC 的操作,每次攻擊者可以憑空獲取 37.8 枚 wBTC。

循環(huán) 58 次后,攻擊者取出了所有前期投入的 wBTC ,并順利歸還 Aave 的閃電貸。

結(jié)論

由于 hEthWBTC 借貸池未被初始化,攻擊者得以輕易操縱 liquidityIndex,將其增至極大,提現(xiàn)率作為除數(shù)極大放大后,由于整數(shù)除法的截斷誤差,使得取出之前的投入更容易在一個區(qū)塊內(nèi)實現(xiàn)。

在運轉(zhuǎn)良好的借貸池中,由于池中已有流動性,不容易因為少量的貸款利息增加而極大增加貼現(xiàn)率。

聲明:文章內(nèi)容不代表本站觀點及立場,不構(gòu)成本平臺任何投資建議。本文內(nèi)容僅供參考,風(fēng)險自擔(dān)!
Tag:HopeLend   借貸攻擊  

你可能感興趣的文章

幣圈快訊

  • 英偉達(dá)、OpenAI齊進(jìn)軍網(wǎng)頁瀏覽器

    2025-07-10 06:29
    金色財經(jīng)報道,英偉達(dá)支持的PerplexityAI周三表示,該公司已經(jīng)推出了一款具有人工智能搜索功能的新瀏覽器Comet,希望挑戰(zhàn)市場領(lǐng)導(dǎo)者谷歌的主導(dǎo)地位。這標(biāo)志著PerplexityAI進(jìn)入競爭激烈的瀏覽器市場,旨在用能夠代表用戶思考、行動和決定的智能體AI取代傳統(tǒng)的互聯(lián)網(wǎng)瀏覽方式。同日,有報道稱OpenAI亦打算推出人工智能網(wǎng)頁瀏覽器。StatCounter的數(shù)據(jù)顯示,今年6月,Chrome占據(jù)了全球瀏覽器市場68%的份額,鞏固了其作為世界上使用最廣泛的瀏覽器的地位。(第一財經(jīng))
  • 金融科技公司Revolut尋求10億美元新融資

    2025-07-10 06:26
    金色財經(jīng)報道,金融科技公司Revolut正在洽談以650億美元的估值籌集10億美元的新資本。Greenoaks是一家美國投資公司,專門支持Robinhood和Stripe等高增長科技企業(yè),目前正在商談領(lǐng)投此輪融資,但最終條款尚未確定。
  • 美聯(lián)儲7月維持利率不變的概率為93.3%

    2025-07-10 06:09
    金色財經(jīng)報道,據(jù)CME“美聯(lián)儲觀察”:美聯(lián)儲7月維持利率不變的概率為93.3%,降息25個基點的概率為6.7%。美聯(lián)儲9月維持利率不變的概率為31.1%,累計降息25個基點的概率為64.4%,累計降息50個基點的概率為4.5%。
  • 美SEC加密小組負(fù)責(zé)人:股票代幣化仍屬證券監(jiān)管范圍

    2025-07-10 05:25
    金色財經(jīng)報道,美國證券交易委員會(SEC)加密貨幣特別小組負(fù)責(zé)人、委員HesterPeirce表示,將股票和其他資產(chǎn)「代幣化」并不改變其本質(zhì),仍需遵守聯(lián)邦證券法。盡管Peirce長期支持加密創(chuàng)新,但她強調(diào)相關(guān)市場參與者必須嚴(yán)格履行監(jiān)管義務(wù)。這一表態(tài)回應(yīng)了部分行業(yè)人士希望在區(qū)塊鏈上自由交易股票等資產(chǎn)的呼聲,并提醒數(shù)字化資產(chǎn)同樣受監(jiān)管框架約束。
  • 美聯(lián)儲會議紀(jì)要:如果關(guān)稅導(dǎo)致通脹高于預(yù)期維持更嚴(yán)格的貨幣政策立場將是適當(dāng)?shù)?/p>

    2025-07-10 04:45
    金色財經(jīng)報道,最新公布的美聯(lián)儲6月會議紀(jì)要顯示,與會者指出,如果征收關(guān)稅導(dǎo)致通脹率高于預(yù)期,且持續(xù)時間比預(yù)期更持久,或者中期或長期通脹預(yù)期出現(xiàn)顯著上升,那么維持更嚴(yán)格的貨幣政策立場將是適當(dāng)?shù)模貏e是在勞動力市場狀況和經(jīng)濟(jì)活動穩(wěn)定的情況下。然而,如果勞動力市場狀況或經(jīng)濟(jì)活動實質(zhì)性減弱,或者如果通脹繼續(xù)下降,通脹預(yù)期保持良好穩(wěn)定,那么建立一種限制性較低的貨幣政策立場將是合適的。與會者指出,如果高通脹更持久,而就業(yè)前景減弱,委員會可能面臨艱難的權(quán)衡。
  • 查看更多