動區動趨-最具影響力的區塊鏈新聞媒體
  • Home
    • Home Layout 1
    • Home Layout 2
    • Home Layout 3
  • Browse
    • News
    • Movie
    • Music
    • Technology
    • Howto & Style
    • Entertainment
    • Gaming
  • Features
    • Youtube Video
    • Vimeo Video
    • Dailymotion Video
    • Self-hosted Video
    • User Profile
    • Playlists
    • User-created Playlist
    • Favorite Playlist (Private)
    • Watch Later Playlist (Private)
    • All JNews Features
No Result
View All Result
  • Login
  • Register
UPLOAD
動區動趨-最具影響力的區塊鏈新聞媒體
No Result
View All Result
Currently Playing

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

搶先看
ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

搶先看

6 Sci-fi Gadgets in Movie We Wish Actually Existed

Movie

The 10 best games to play on your new PlayStation 4

Gaming

Tesla’s Chinese factory just delivered its first cars

News

乾貨 | Amber 安全專家吳博士:剖析 BSC 的閃電貸攻擊手法,如何再引發 3 個分叉項目連環爆?

近期,於幣安智能鏈(BSC)似乎是特別受到 Defi 駭客們青睞似的,接連受到攻擊。而最經典且嚴重的案例,莫過於 PancakeBunny 及其另外三個分叉項目 AutoShark、Merlin Labs 和 PancakeHunny 的連環爆事件。今天,將由 Amber Group 區塊鏈安全團隊負責人 Chiachih Wu 博士,將模擬重回事發情境,步步剖析帶您了解這三種攻擊的背後細節與手法。
(前情提要:打臉現場!分叉項目 Merlin 重演 PancakeBunny 遭遇,駭客 240 枚 ETH 入袋)
(前情提要: BSC官方:8起閃電貸攻擊恐為「同一駭客組織」所為!)

 

本文源自於知名數位資產投資集團 Amber Group 的投稿《BSC Flash Loan Attack: The Three Copycats》,作者為該集團區塊鏈安全專家吳家志博士(Chiachih Wu),該博士曾任英特爾(Intel)、奇虎360 高級研究員,同時於幣圈為名於共同創辦了區塊鏈安全公司派頓(Pechshield)。

以下為吳博士撰文,將詳細闡述這三個 PancakeBunny 模仿者的攻擊背後細節:


5 份以來,幣安智能鏈(BSC)上的 Defi 項目們便開始接連受到 Defi 駭客攻擊。在 PancakeBunny 驚爆遭駭之後,PancakeBunny 的三個分叉項目——AutoShark、Merlin Labs 和 PancakeHunny——也相繼遭遇類似的技術手法遭人毒手。

其中 PancakeBunny 在這四次攻擊中是損失規模最高的項目,總損失金額接近 4,500 萬美元。

模仿者 Copycats

AutoShark 是在 PancakeBunny 遭到攻擊後五天也被釘上,接著是 Merlin Labs 和 PancakeHunny。 下面將對這三個分叉項目已存在的問題和可能的攻擊技術進行分析。

在 SharkMinter.mintFor() 函數中,我們可以假設在第 1492 行收到的代幣數量等於移動餘額的數量。要鑄造的獎勵 SHARK 代幣的數量(即 mintShark)來自於第 1494 行中由 tokenToSharkBNB() 計算的 sharkBNBAmount。

然而,tokenToSharkBNB() 引用了當前的移動餘額,產生了一個漏洞。

儘管如此,駭客可以透過 getReward() 函數調用之前發送的代幣並間接破壞 tokenToSharkBNB() 的邏輯,以輕易操縱餘額。

在 tokenToSharkBNB() 的底層執行層序中,還存在另一個攻擊面。 如上面的程式碼片段表示,_flipToSharkBNBFlip() 從 ApeSwap(第 1243 行)或 PantherSwap(第 1262 行)中移除流動性,並將 LP 代幣轉換為 SHARK+WBNB。

接著,調用 generateFlipToken() 將 SHARK+WBNB 轉換為 SHARK-BNB LP 代幣。

在 generateFlipToken() 裡頭,SharkMinter 目前的 SHARK 和 WBNB 餘額(amountADesired,amountBDesired)用於生成 LP 代幣,並將 LP 代幣的數量返還給 sharkBNBAmount 的 mintFor()。

於此來說,駭客或入侵者可以將 SHARK+WBNB 轉移到 SharkMinter 以操縱要鑄造的 SHARK 代幣數量。
PancakeHunny 中的漏洞與 AutoShark 中發現的漏洞相同,代表駭客可以使用 HUNNY 和 WBNB 代幣操縱 HUNNY 鑄造獎勵。

與 AutoShark 和 PancakeHunny 相比 ,Merlin Labs 的 _getReward() 有一個更明顯的漏洞。

上面的程式碼片段表明,performanceFee 可以透過 CAKE 的餘額來操縱,間接影響了 MERL 獎勵的鑄造。 不過,nonContract 這個改良裝置擺脫了閃電貸。

就算合約上沒有漏洞,駭客仍然可以透過多次調用而獲利。

再現 Autoshark 攻擊

要重現 AutoShark 攻擊,我們首先需要從 PantherSwap 獲取一些 SHARK-BNB-LP 代幣。 具體來說,我們將 0.5 WBNB 交換到 SHARK(第 58 行),並將剩餘的 WBNB 與 SHARK 代幣一起轉移到 PantherSwap 中以鑄造 SHARK-BNB-LP 代幣(第 64 行)。

稍後,我們再將這些 LP 代幣存入 AutoShark 的 StrategyCompoundFLIP 合約(第 69 行)以獲得獎勵。 注意我們在第 69 行只故意存入一半的 LP 代幣。

第二步是讓 getReward() 進入 SharkMinter 合約。在上面的程式碼片段中,我們知道獎勵可以透過 created() 函數(第 1658 行)。

此外,30% 的獎勵(即 performanceFee)應大於 1,000(即 DUST)以觸發第 1668 行中的 SharkMinter.mintFor()。

因此,在我們的漏洞利用程式碼中,我們在第 76 行將一些 LP 代幣轉移到 StrategyCompoundFLIP 合約,以繞過 performanceFee > DUST 檢查並觸發 mintFor() 調用。

由於我們需要大量 WBNB+SHARK 來操作 SharkMinter,因此我們須透過第 81 行的 flash-swap 調用 PantherSwap 的 100k WBNB。

在閃貸回調 pancakeCall() 中,我們將一半的 WBNB 交換為 SHARK,並將剩餘 50,000 WBNB 的 SHARK 發送到 SharkMinter 合約以操縱獎勵鑄造。

下一步則是在當 SharkMinter 收到 WBNB+SHARK 代幣時觸發 getReward() 以對調用方鑄造大量 SHARK 代幣。

最後一步是將 SHARK 轉換為 WBNB,支付閃貸,然後帶走剩餘的 WBNB 代幣。

我們這次的實驗中,駭客如果從 1 WBNB 開始。 在閃貸的協助下,他可以從一筆交易中返還了 1,000 多個 WBNB 中並獲利。

再現 PancakeHunny 攻擊

PancakeHunny 攻擊背後的理論類似於 AutoShark 攻擊。 簡而言之,在觸發 getReward() 之前,我們需要向 HunnyMinter 發送大量 HUNNY+WBNB。

但是,HUNNY 代幣合約有一個稱為 antiWhale 的保護機制,可以防止大量轉移。 因此,閃貸在這裡不會起作用。

為了避開 antiWhale,我們創建了多個子合約並透過這些合約發起多個 CakeFlipVault.deposit() 調用。

在上面的漏洞利用程式碼片段中,在第 116 行收集的 LP 代幣被分為 10 個部分,並在第 122 行轉移到 10 個 Lib 合約,然後讓每個合約調用 Lib.prepare()。

在 Lib.prepare() 中,我們准許 () CakeFlipVault 使用 LP 代幣並調用 CakeFlipVault.deposit() 以啟用稍後的 getReward() 調用來鑄造獎勵 HUNNY 代幣。

準備好 10 個 Lib 合約後,主合約對每個合約進行迭代:

  1. 將 WBNB 換成 HUNNY 的最大允許數量
  2. 將WBNB+HUNNY 轉給 HunnyMinter
  3. 透過 lib.trigger() 觸發 getReward()
  4. 將 HUNNY 轉換回 WBNB。

最後,有 10 WBNB 的駭客透過 10 次運行 10 個 Lib 合約操作中可賺取大約 200 個 WBNB。

重現 Merlin Labs 攻擊

如前所述,Merlin Labs 具有 noContract 改良裝置來擺脫閃貸攻擊。

但是,我們可以使用腳本來觸發 EOA(外部擁有帳戶)地址發起的多筆交易的攻擊。 唯一的區別是有人可以先行搶走駭客的交易並從中竊取利潤。

與 AutoShark 攻擊類似,我們需要準備足夠的 LINK 和 WBNB(第 23 行),使用它們來鑄造 WBNB-LINK-LP 代幣(第 34 行),並將 LP 代幣存入 VaultFlipCake 合約(第 38 行)。

接下來的動作是:

  1. 將 WBNB 交換為 CAKE(第 42 行)。
  2. 透過將 CAKE 發送到 VaultFlipToCake 合約(第 50 行)來操縱 MERL 鑄造。
  3. 在第 55 行觸發 getReward()(鑄造了大量的 MERL 代幣)。
  4. 將 MERL 交換回 WBNB 並多次重複上述步驟。
  5. 如前所述,如果有人在第 2 步之後立即執行第 3 步,則該人可能會移除大量的 MERL。

在這次的實驗中,駭客從 10 WBNB 開始,然後透過將四個步驟重複 10 次,可獲利大約 165 WBNB 。

📍相關報導📍

BSC上閃電貸攻擊再現!BurgerSwap 被駭技術分析 — 我竟騙了我自己?

BSC 項目 PancakeBunny 遭閃電貸攻擊!估遭駭 2 億美元,BUNNY 暴跌 99%

BSC首現閃電貸攻擊/技術解析 Spartan Protocol 遭駭手法,造成 3 千萬美元損失


讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。

LINE 與 Messenger 不定期為大家服務

加入好友

加入好友

No Result
View All Result

近期文章

  • 精選文章搶先看!動區登入Access質押訂閱服務,解鎖寶貴資訊快人一步
  • ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點
  • ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味
  • 快訊!BTC 現在已來到 58996.2
  • 快訊!BTC 現在已來到 58815.03
Next Post
年薪破百萬,美國19歲少年當全職比特幣礦工 : 我根本沒想過要上大學

年薪破百萬,美國19歲少年當全職比特幣礦工 : 我根本沒想過要上大學

Copyright (c) 2019 by Jegtheme.
  • About
  • Buy JNews
  • Request A Demo
  • Contact

Welcome Back!

Login to your account below

Forgotten Password? Sign Up

Create New Account!

Fill the forms below to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

- Select Visibility -

    No Result
    View All Result
    • Account
    • BlockTempo Beginner – 動區新手村
    • Change Password
    • Forgot Password?
    • Home 1
    • Home 2
    • Home 3
    • Jin-homepage
    • Latest
    • Login
    • Profile
    • Register
    • Reset Password
    • Trending
    • Users
    • Users List Item
    • 不只加密貨幣,談談那些你不知道的區塊鏈應用|動區新手村
    • 所有文章
    • 關於 BlockTempo

    © 2025 JNews - Premium WordPress news & magazine theme by Jegtheme.