聯合調查表明,黑客實施攻擊需要內幕信息。且由於涉及協議和審計公司的範圍,內幕人士可能有多個可能。

撰文:rekt
翻譯:Defi 之道

DeFi 的黑暗藝術仍然是最有利可圖的。

下面是我們至今遇到過最具戲劇性的故事之一。

一個虛假魔術,混亂及指控的故事,導致了迄今爲止最大的 DeFi 黑客事件。

大約有 3750 萬美元資金在一起復雜的 DeFi 欺騙案中被盜,這次攻擊利用了多筆交易來突襲 Alpha Finance 的金庫,同時讓很多人相信是 Cream 的鐵金庫(Iron Bank)受到了影響。

回顧 Alpha Finance 被盜 3750 萬美元事件,黑客疑似掌握內部信息

這起謀殺案發生在一個有鏡子的大廳裏,DeFi 協議日益交織的性質,加上攻擊的複雜性,使得社區對誰是真正的受害者,以及誰該負責賠償感到困惑。

攻擊者的合約導致 Homora 代碼「相信」他們的惡意合約是他們自己的,目的是操縱系統中的內部債務數量。

這是協議和攻擊者之間的一場私人戰鬥。被利用的合約尚未被公佈,也未提供給用戶,這意味着他們沒有受到直接影響。我們還沒有看到過這樣一個明目張膽的內部作案,Alpha Finance 很快指出,他們找到了一個「主要嫌疑人」。

如果合約還沒有準備好,爲什麼還要部署在主網上?

在混亂中,大玩家迅速採取行動來保護自己的資本。SBF 從 Cream Finance 中提取了價值 4 億美元的 FTT,三箭資本(Three Arrows Capital)則向幣安發送了價值 300 多萬美元的 ALPHA 代幣,其唯一目的可能是出售掉它們。

與這次攻擊相關的所有代幣的價值均出現了下降。

  1. Alpha Homora 治理令牌 ALPHA 從 2.25 美元跌至 1.78 美元。

  2. Iron Bank 治理代幣 CREAM 從 288.32 美元跌至 193.51 美元。

  3. AAVE,其提供了這次攻擊所需的閃電貸功能,它的治理代幣從當天的 518 美元跌至 492 美元的低點。

然而,代幣定價並不是這個故事中最有趣的方面。

回顧 Alpha Finance 被盜 3750 萬美元事件,黑客疑似掌握內部信息

事件回顧

Alpha Finance 團隊發佈了一篇出色的調查報告,而他們的發現是驚人的。我們聯合調查的結果表明,腐敗的程度比預期的要嚴重得多。

Alpha Finance 是否會公開他們的指控還有待觀察,但他們最初關於有主要嫌疑人的聲明表明,影響正在到來。

從官方調查報告來看,我們可以看出,攻擊者需要知道以下信息才能實施攻擊:

  1. HomoraBankv2 爲即將發佈的版本部署了一個 sUSD 池子,這一版本既沒有在 UI 上提供,也沒有公開發布。

  2. sUSD 借貸池中沒有流動性,因此攻擊者可以完全操縱和誇大總債務金額和總債務份額;

  3. 借用函數計算中存在舍入錯誤計算,僅當攻擊者是唯一借用者時纔會產生影響;

  4. resolveReserve 函數可以在不增加 totalDebtShare 的情況下增加 totalDebt,而實際上任何人都可以調用用於將收入收集到儲備池的函數;

  5. HomoraBankv2 接受任何自定義 spell,只要不變量檢查出 collateral>borrow (類似於 Yearn 中策略的 spell);

在這麼多用戶的注視下,搶劫者留下了清晰的線索,在罕見的反擊行動中,受害者將襲擊者挑了出來。

上述要求證明,實施這一攻擊需要內幕信息。然而,由於涉及協議和審計公司的範圍,內幕人士可能有多個可能。

rekt 不再是在做指控的生意,但我們期待着看到 Alpha Finance 如何處理這種情況。

以下是 Alpha Finance 表述的經過:

  1. 攻擊者製造了一個邪惡的 spell (相當於 Yearn 的策略) https://etherscan.io/tx/0x2b419173c1f116e94e43afed15a46e3b3a109e118aba166fcca0ba583f686d23

  2. 攻擊者將 ETH 交換成 UNI,並將 ETH+UNI 提供給 Uniswap 池子(獲得 ETH/UNI LP 代幣)。在同一筆交易中,在 Uniswap 上交換 ETH->sUSD,並將 sUSD 存入 Cream 的 Iron Bank (獲得 cysUSD) https://etherscan.io/tx/0x4441eefe434fbef9d9b3acb169e35eb7b3958763b74c5617b39034decd4dd3ad

  3. 使用邪惡的 spell 調用 execute 到 HomoraBankV2,執行:借用 1000e18 sUSD,將 UNI-WETH LP 存到 WERC20,並在此過程中用作抵押品(繞過 collateral > borrow 檢查),攻擊者擁有 1000e18 sUSD 債務份額(因爲攻擊者是第一個借款人) https://etherscan.io/tx/0xcc57ac77dc3953de7832162ea4cd925970e064ead3f6861ee40076aca8e7e571

  4. 再次使用邪惡 spell 調用 execute 到 HomoraBankV2,執行:償還 100000098548938710983 sUSD (實際應計利息債務爲 100000098548938710984 sUSD),導致償還份額比總份額少 1。結果,攻擊者現在有 1 minisUSD 債務和 1 份債務份額。https://etherscan.io/tx/0xf31ee9d9e83db3592601b854fe4f8b872cecd0ea2a3247c475eea8062a20dd41

  5. 調用 sUSD 銀行的 resolveReserve,產生 19709787742196 債務,而 totalShare 仍爲 1。當前狀態:totalDebt = 19709787742197,而 totalShare = 1 https://etherscan.io/tx/0x98f623af655f1e27e1c04ffe0bc8c9bbdb35d39999913bedfe712d4058c67c0e

  6. 再次使用邪惡 spell 調用 execute 到 HomoraBankV2,執行(重複 16 次,每次翻倍借入金額):借入 19709787742196 美元並轉移給攻擊者(每次翻倍,因爲每次借入成功 totalDebt 都翻倍)。每次借入都比 totalDebt 值小 1,導致相應的借入份額 =0,因此協議將其視爲無債務借入。在交易結束時,攻擊者向 Cream 的 Iron Bank 存入 19.54 sUSD。https://etherscan.io/tx/0x2e387620bb31c067efc878346742637d650843210596e770d4e2d601de5409e3

  7. 繼續這個過程:再次使用邪惡的 spell 調用 execute 到 HomoraBankV2,執行(重複 10 次,每次翻倍借來的金額)。在交易結束時,攻擊者將 1321 sUSD 存入 Cream 的 Iron Bank,https://etherscan.io/tx/0x64de824a7aa339ff41b1487194ca634a9ce35a32c65f4e78eb3893cc183532a4

  8. 通過 Aave 的閃電貸借入 1,800,000 USDC,然後將這 1,800,000 USDC 換成 1770757.5625447219047906 sUSD,並存入 Cream 以使攻擊者有足夠的流動資金使用自定義 spell 借款,繼續將 sUSD 借款翻番,從 1322.70 sUSD 增加到 677223.15 sUSD (共 10 倍)。將 1353123.59 sUSD 換成 1374960.72 USDC,從 Cream 借入 426659.27 USDC (因爲攻擊者已在步驟 b 中存入 sUSD) https://etherscan.io/tx/0x7eb2436eedd39c8865fcc1e51ae4a245e89765f4c64a3200c623f676b3912f9

  9. 重複步驟 8,這次金額大約是 1000 萬 USDC ,https://etherscan.io/tx/0xd7a91172c3fd09acb75a9447189e1178ae70517698f249b84062681f43f0e26e

  10. 重複 1000 萬 USDC,https://etherscan.io/tx/0xacec6ddb7db4baa66c0fb6289c25a833d93d2d9eb4fbe9a8d8495e5bfa24ba57

  11. 借款 13244.63 WETH+360 萬 USDC+560 萬 USDT+426 萬 DAI,向 Aave 供應穩定幣(以獲得 aToken,因此 USDC 和 USDT 不能凍結),向 Curve a3Crv 池子供應 aDAI、 aUSDT 以及 aUSDC,https://etherscan.io/tx/0x745ddedf268f60ea4a038991d46b33b7a1d4e5a9ff2767cdba2d3af69f43eb1b

  12. 將 a3Crv LP 代幣添加到 Curve 的流動性 gauge https://etherscan.io/tx/0xc60bc6ab561af2a19ebc9e57b44b21774e489bb07f75cb367d69841b372fe896

  13. 其餘的交易將資金髮送到 Tornado Cash 以及 GitCoin Grants,其中有 1000 ETH 被髮送到 Cream 和 Alpha 的部署者地址。

回顧 Alpha Finance 被盜 3750 萬美元事件,黑客疑似掌握內部信息

這個故事很獨特,也令人生疑。

當涉及到白帽子 / 黑帽子的活動時,我們總是期待看到角色轉換,但是我們很少看到受害者如此清楚地指責。

幾周前促成 Yearn 和 Alpha Homora 合作的 Andre Cronje 在談到這次攻擊時寫道:

「花點時間研究了這次攻擊,9 筆交易,4 種不同的操縱,其中一種包括精確的債務計算,這需要研究團隊花費數小時才能弄清楚,Alpha 立即採取了措施來緩解漏洞問題,在發現該問題後的幾分鐘內就解決了它。」

而 Banteg 的回覆是:

「這個事件絕對是瘋狂的,不可能有人隨便看看合約,尤其是那些未經宣佈的東西,就能發現這一點。」

也許這會導致另一起 Yearn 收購案,Cronje 的名字在調查報告中被提到了 4 次,而且這個模式看起來確實很熟悉。

回顧 Alpha Finance 被盜 3750 萬美元事件,黑客疑似掌握內部信息

匿名黑客的時代還能持續多久?

由於可能的嫌疑犯名單非常小,因此更容易排除和追蹤潛在的攻擊者,在這種情況下,名單範圍甚至比平常更小。

在處理代碼時,「Don’t trust, verify」是一句極好的口號,但它並不能阻止日益增長的社會偏執症。我們正經歷一個加密貨幣和 DeFi 前所未有的增長時期,在這個時期,不工作的成本是非常高的。DeFi 開發者的精神負擔與日俱增。

帝國是建立在代碼行之上的,金融的未來就在我們眼前。

開發人員陷入了競爭,而腐敗的內部人員則幫助黑客在地下工作,在他們的基礎上挖洞。

當一座塔倒塌時,其他的塔都會看着並學習。在塵埃落定之前,人羣已經開始前進,而堅韌的的團隊會重返賽場,以尋求更強的實力。

在不可避免的錯誤導致他們的匿名斗篷掉下之前,他們還能維持多長時間?

來源鏈接:rekt.eth.link