以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > 幣贏 > Info

空手套白狼:Popsicle 被黑分析_BET

Author:

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

2021 年 08 月 04 日,據慢霧區消息,跨鏈收益率平臺 Popsicle Finance 的 Sorbetto Fragola 產品遭受黑客攻擊,慢霧安全團隊第一時間介入分析,并將結果分享如下。

攻擊背景

在本次攻擊中,攻擊者通過創建 3 個攻擊合約來完成對 Sorbetto Fragola 的攻擊,以下是本次攻擊涉及的具體地址:

攻擊者:

H1:0x3A9D90eD069021057d9d11E78F142F2C4267934A

H2:0xf9E3D08196F76f5078882d98941b71C0884BEa52

攻擊合約:

C1:0xdFb6faB7f4bc9512d5620e679E90D1C91C4EAdE6

C2:0x576cf5f8ba98e1643a2c93103881d8356c3550cf

C3:0xd282f740bb0ff5d9e0a861df024fcbd3c0bd0dc8

Sorbetto Fragola:

0xc4ff55a4329f84f9Bf0F5619998aB570481EBB48

攻擊對象

通過官方的介紹我們可以知道被攻擊的 Sorbetto Fragola 產品主要是用于幫助用戶管理 Uniswap V3 頭寸,以避免用戶在 Uniswap V3 做市的頭寸超出所選定的價格范圍。用戶可以在 Sorbetto Fragola 中存入提供流動性對應的兩種代幣,Sorbetto Fragola 會給到用戶 Popsicle LP (PLP) 憑證,用戶使用此憑證可以獲取獎勵并取回抵押的流動性資金,同時此憑證也是可以隨意轉移給其他用戶的。

petemitchell.eth將價值約230萬美元SNX轉入Coinbase:金色財經報道,據推特用戶余燼監測,2 小時前,petemitchell.eth將806,607枚SNX(約合230萬美元) 轉入Coinbase。petemitchell.eth自2021/4以來從 Synthetix獎勵合約歸屬SNX,并在歸屬后轉入Coinbase:2021/07 將 96,100 SNX($1.2M) 轉入 CB;2022/07 將 1,660,100 SNX($5.04M) 轉入 CB。[2023/7/28 16:03:41]

攻擊核心

此次攻擊的核心在于,Sorbetto Fragola 中通過用戶持有的 PLP 憑證數量來參與計算用戶所能獲得的獎勵,但 PLP 憑證是可以隨意轉移給其他用戶的,但其憑證轉移的過程中沒有進行獎勵結算轉移等操作。這就導致了只要持有 PLP 憑證就可以立即獲取獎勵。最終造成同個 PLP 憑證卻能在同個時間節點給多個持有者帶來收益。接下來我們對整個攻擊細節進行詳細分析。

攻擊細節

攻擊首先通過 H1 地址創建了攻擊合約 C1、C2 與 C3,隨后攻擊者通過 H2 地址調用了攻擊合約 C1 開始進行具體的攻擊,交易為:

0xcd7dae143a4c0223349c16237ce4cd7696b1638d116a72755231ede872ab70fc。

通過分析此交易我們可以發現,其先從 AAVE 中利用閃電貸借出了 30,000,000 個 USDT、13,000 個 WETH、1,400 個 WBTC、30,000,000 個 USDC、3,000,000 個 DAI、200,000 個 UNI,為后續在 Sorbetto Fragola 中提供流動性獲得 PLP 憑證做準備。

2022年暗網市場總收入為15億美元,低于2021年的31億美元:金色財經報道,據區塊鏈分析公司 Chainalysis 發布的一份報告,2022 年暗網市場和欺詐商店的收入較上年有所下降。2022 年暗網市場總收入為 15 億美元,低于 2021 年的 31 億美元。

Hydra 市場再次成為 2022 年收入最高的暗網市場,盡管它在 4 月份受到 OFAC 的制裁并在美德聯合行動中被關閉,其次是 Mega Darknet Market、Blacksprut Market 和 OMG!OMG! Market,Hydra 的關閉導致整個行業的暗網市場收入下降,所有市場的平均每日收入從關閉前的 420 萬美元下降到關閉后的 44.7 萬美元。[2023/2/10 11:57:55]

隨后攻擊者調用 Sorbetto Fragola 合約的 deposit 函數存入提供流動性對應的兩種代幣 (這里以攻擊者首次存入的 WETH 與 USDT 代幣為例),其會先通過 checkDeviation 與 updateVault 修飾器分別檢查價格與更新獎勵。價格檢查主要是針對價格是否出現大波動被操控等情況,這里不做展開。而獎勵更新就與本次攻擊密切相關了,我們切入分析:

可以看到其調用了 _updateFeesReward 函數進行具體的更新操作,我們跟進此函數:

Cointelegraph盤點波場TRON 2022年度22大成就:1月8日消息,日前,區塊鏈行業媒體Cointelegraph發布波場TRON 2022年度的22大成就, 主要包括:TRON DAO成為世界上最大的DAO、擴大與火必的合作、推出穩定幣USDD、TRX和USDD獲得更多應用場景、成為多米尼克國家公鏈、建成行業第二大穩定幣生態系統、被評為最環保區塊鏈、TVL規模僅次于幣安以及用戶帳戶從6900萬增長到1.32億等。

Cointelegraph在文中稱,2022年是波場TRON歷史性增長的一年,全年累計新增用戶6300萬。作為加密行業的全球潮流引領者,波場TRON正在打造一個可以為每個人服務的生態系統基礎設施。[2023/1/8 11:00:51]

從上圖我們可以很容易的發現其先通過 positionLiquidity 函數獲取 tickLower 與 tickUpper 范圍內合約所持有的流動性數量。然后通過 _earnFees 函數從 Uniswap V3 Pool 中收取提供流動性獎勵。之后再通過 _tokenPerShare 函數計算每個 PLP 憑證所能分得的流動性獎勵。最后通過 _fee0Earned 與 _fee1Earned 函數來計算用戶所持有的 PLP 憑證數量可以獲得多少獎勵,并使用user.token0Rewards 與 user.token1Rewards 變量進行記錄,如下圖所示:

Jimmy Song暗示只有比特幣才是去中心化的:金色財經報道,比特幣開發人員Jimmy Song在社交媒體上稱,你不能審計美聯儲。你不能審計Ethereum。你不能審計Binance Chain。即使你可以,初始狀態是一個中央實體,為自己創造代幣,而沒有做任何工作。但你可以審計比特幣。[2022/12/22 22:01:39]

但由于此時攻擊者剛進行充值操作,還未獲得 PLP 憑證,因此其 user.token0Rewards 與 user.token1Rewards 變量最終記錄的自然是 0。

看到這里你可能已經意識到問題所在了,既然 user.token0Rewards 與 user.token1Rewards 變量記錄的獎勵是根據用戶持有的 PLP 憑證進行計算的,且 PLP 憑證是可以轉移的,那么是否只要持有 PLP 憑證再去觸發此變量記錄獎勵就可以讓我們獲得獎勵。答案自然是肯定的。我們繼續看 deposit 函數:

在獎勵更新之后通過 liquidityForAmounts 函數計算出在目標價格區間內用戶提供資金所占的流動性然后調用 Uniswap V3 Pool  mint 函數注入流動性。隨后通過 _calcShare 計算出 Sorbetto Fragola 所需要鑄造給用戶的 PLP 憑證數量。

數據:處于虧損狀態的比特幣供應占比達到交易所外所有比特幣的48.1%:7月6日消息,Glassnode發推稱,處于虧損狀態的比特幣供應占比已經達到了交易所外所有比特幣的48.1%。在這些比特幣中,近60%由長期持有者持有(占總數的28.6%)。這兩個指標與2018年11月至12月和2020年3月的下跌階段相似。[2022/7/6 1:54:59]

在攻擊者獲得 PLP 憑著后也正如我們所想的那樣將 PLP 憑證轉移給其他地址,并調用 Sorbetto Fragola 合約 collectFees 函數來進行獎勵記錄。

通過上圖的 PLP 憑證鏈上轉移記錄我們可以看到,在攻擊合約 C1 獲得 PLP 憑證后,將其轉移給了攻擊合約 C2,隨后調用了 collectFees 函數。之后攻擊合約 C2 再將 PLP 憑證轉移給攻擊合約 C3 再次調用了 collectFees。最后攻擊合約 C3 將 PLP 憑證轉移回攻擊合約 C1。我們切入 collectFees 函數進行分析:

通過上圖我們可以很容易的看出此函數也有 updateVault 修飾器,而經過上面的分析我們可以知道 updateVault 修飾器用于獎勵更新,因此在攻擊合約 C2 持有 PLP 憑證的情況下調用 collectFees 函數觸發 updateVault 修飾器則會根據其持有的 PLP 憑證數量來計算應分得的獎勵,并記入用戶的 token0Rewards 與 token1Rewards 變量。需要注意的是此時對于此類 PLP 憑證持有者緩存的 tokenPerSharePaid 變量是 0,這直接導致了用戶可以獲得 PLP 憑證持有獎勵。

我們從鏈上狀態的變化也可以看出:

隨后攻擊合約 C2 也如法炮制即可獲得獎勵記錄。

最后 PLP 憑證轉移回到攻擊合約 C1,并調用了 Sorbetto Fragola 合約的 withdraw 函數燃燒掉 PLP 憑證取回先前存入的 WETH 與 USDT 流動性。并且攻擊合約 C2、C3 分別調用 collectFees 函數傳入所要領取的獎勵數量以領取獎勵。這樣攻擊者在同個區塊中不僅拿回了存入的流動性還額外獲得多份流動性提供獎勵。

隨后攻擊者開始利用其他的代幣對如法炮制的薅取獎勵,如下圖所示:

攻擊流程

1、攻擊者創建多個攻擊合約,并從 AAVE 中利用閃電貸借出大量的代幣;

2、攻擊者使用借來的代幣存入 Sorbetto Fragola 合約中獲得 PLP 憑證;

3、攻擊者利用 Sorbetto Fragola 合約的獎勵結算缺陷問題將獲得的 PLP 憑證在其創建的攻擊合約之間進行轉移并分別調用了 Sorbetto Fragola 合約的 collectFees 函數來為各個攻擊合約紀錄獎勵;

4、攻擊者燃燒 PLP 憑證取回在 Sorbetto Fragola 合約中存入的流動性資金,并通過各個攻擊合約調用 Sorbetto Fragola 合約的 collectFees 函數來獲取紀錄的獎勵;

5、不斷的循環上述操作攻擊各個流動性資金池薅取獎勵;

6、歸還閃電貸獲利走人。

MistTrack 分析過程

慢霧 AML 團隊分析統計,本次攻擊損失了約 4.98M USDT、2.56K WETH、96 WBTC、5.39M USDC、159.93K DAI、10.49K UNI,接近 2100 萬美元。

資金流向分析

慢霧 AML 旗下 MistTrack 反洗錢追蹤系統分析發現,攻擊者 H1 地址首先從 Tornado.Cash 提幣獲取初始資金隨后部署了三個攻擊合約:

攻擊獲利后通過 Uniswap V3 將獲得的代幣兌換成 ETH 再次轉入了 Tornado.Cash:

目前攻擊者賬戶余額僅為 0.08 ETH,其余資金均已通過 Tornado.Cash 進行轉移。

總結

本次漏洞的核心在于由于獎勵更新記錄缺陷導致同個 PLP 憑證能在同個時間節點給多個持有者都帶來收益。針對此類漏洞,慢霧安全團隊建議在進行憑證轉移前應處理好獎勵結算問題,記錄好轉移前后用戶的獎勵緩存,以避免再次出現此類問題。

Tags:BETOLAAGOFRAGCashBet CoinSOLA價格Attack WagonFragmint

幣贏
小米葡萄牙商店已接受比特幣等加密貨幣作為支付手段_區塊鏈

8月5日周四,據區塊鏈與加密貨幣行業資訊網站U.Today報道,小米葡萄牙商店開始接受世界前三大數字貨幣和其他加密貨幣作為支付手段.

1900/1/1 0:00:00
去中心化金融成為監管重地:如何將 DeFi 前端去中心化?_BSP

運行在區塊鏈上的智能合約可以提供抗審查和持續運營的能力,但是用戶在接入這些智能合約之前,如何確保前端體驗也能提供同樣的去中心化特性?上周.

1900/1/1 0:00:00
紐約時報:加密富豪們游牧在全球_加密貨幣

長期以來,高杠桿率在加密市場盛行,不僅令許多投資者遭遇巨大損失,也加劇了加密市場的波動性,成為影響加密市場的最大系統性風險之一.

1900/1/1 0:00:00
以太坊經濟體系大變革:從DeFi質押到燃燒機制再到POS機制_以太坊

以太坊在上一輪牛市中憑借智能合約和ICO異軍突起,成為當年最大的黑馬,但隨著以EOS為代表的公鏈競爭以及ICO大潮的消退,以太坊在熊市中回歸于平淡.

1900/1/1 0:00:00
加密貨幣錢包的下一個戰場從移動端走向瀏覽器插件_COI

移動互聯網的熱潮下,imToken、Trust Wallet 以及 Argent 等移動端錢包百花齊放,MetaMask 一度成為了以太坊瀏覽器插件錢包的唯一選擇.

1900/1/1 0:00:00
詳解以太坊 2.0 質押協議 Lido 業務機制、生態進展與經濟模型_ETH

Lido 是一個以太坊 2.0 質押服務平臺,用戶可質押任意數量 ETH,并 1:1 獲得質押代幣 stETH,參與 DeFi 市場其他服務.

1900/1/1 0:00:00
ads