BSC 首現閃電貸攻擊 攻擊手法換湯不換藥 DeFi 樂高如何接招?

買賣虛擬貨幣

DeFi 的世界裡,藉助於智慧合約,個人建立金融產品的門檻被大幅降低。人們可以根據自己的需求,自由地設計自己的金融產品,並透過組合實現方便地交易。

目前,隨著 DeFi 協議的組合愈發豐富,湧現出大量“貨幣樂高”的協議,從以太坊生態中的初代去中心化交易所 Uniswap,到二代進化版的 Sushiswap,再到幣安智慧鏈生態中的 PancakeSwap,但組合過程中的風險也逐漸凸顯出來。

5 月 2 日,DeFi 協議 Starpan Potocol 遭到駭客攻擊,PeckShield 「派盾」透過追蹤和分析發現,Starpan Potocol遭到閃電貸攻擊,損失 3,000 萬美元。

斯巴達協議 (Spartan Protocol)是一個資產流動性專案,旨在解決現有 AMM 協議以及合成資產所出現的各類問題。斯巴達協議的流動性池是此協議的核心,所有一切系統內的相關應用都離不開流動性池的支援。SpartanSwap 應用了 THORCHAIN 的 AMM 演算法。此演算法採用流動性敏感資費(Liquidity-sensitive fee)來解決流動性冷啟動以及滑點問題。

以下是攻擊過程:首先攻擊者從 PancakeSwap 中借出閃電貸 10,000 WBNB;

第二步,攻擊者在出現漏洞的 Spartan 兌換池中,分五次將 WBNB 兌換成 SPARTAN,用 1,913.172376149853767216 WBNB 分別兌換了 621,865.037751148871481851 SPARTA、555,430.671213257613862228 SPARTA, 499,085.759047974016386321 SPARTA, 450,888.746328171070956525 SPARTA, 和 409,342.991760515634291439 SPARTA。此時攻擊者手撰 2,536,613.206101067206978364 SPARTA 以及 11,853.332738790033677468 WBNB, 攻擊者將這些 Tokens 注入流動池中提供流動性,鑄造出 933,350.959891510782264802 代幣 (SPT1-WBNB);

第三步,攻擊者運用同樣的手法,在出現漏洞的兌換池中分十次將 WBNB 兌換成 SPARTAN,用1,674.025829131122046314 WBNB 分別兌換了 336,553.226646584413691711 SPARTA, 316,580.407937459884368081 SPARTA, 298,333.47575083824346321 SPARTA, 281,619.23694472865873995 SPARTA, 266,270.782888292437349121 SPARTA, 252,143.313661963544185874 SPARTA, 239,110.715943602161587616 SPARTA, 227,062.743086833745362627 SPARTA, 215,902.679301559370989883 SPARTA, 和205,545.395265586231012643 SPARTA ,總計 2,639,121.977427448690750716 SPARTA。

第四步,攻擊者將 21,632.147355962694186481 WBNB 和所有的 SPARTA,即上面三步中所獲的 2,639,121.977427448690750716 SPARTA 轉入流動池中,來抬高資產價格。

第五步,燒燬從第二步所獲得的 933,350.959891510782264802 代幣 (SPT1-WBNB),提回流動性,由於流動池處於通脹狀態,共計燒燬 2,538,199.153113548855179986 SPARTA 和 20,694.059368262615067224 WBNB,值得注意的是,在第二步中,攻擊者僅兌換了 11,853.332738790033677468 WBNB,此時攻擊者獲利 9,000 WBNB;

第六步,攻擊者在第四步中注入 1,414,010.159908048805295494 pool token 為流動池提供流動性,隨即啟動燒燬機制獲取2,643,882.074112804607308497 SPARTA 和21,555.69728926154636986 WBNB。

攻擊者呼叫了流動性份額函式 calcLiquidityShare() 查詢當前餘額,進而操縱餘額套利,正確的操作需使用 baseAmountPooled/tokenAmountPooled 狀態。

DeFi 系統的執行需要由智慧合約進行保證,這就要求智慧合約的程式碼進行過縝密的稽覈。一旦智慧合約中存在著任何漏洞,它就可能成為駭客攻擊的物件。

在傳統的條件下,駭客們攻擊金融系統時所憑藉的主要是他們在計算機技術上的優勢,而在現有的 DeFi 生態下,由於各鏈、各應用之間的互通性還並不是那麼好,因此跨鏈、跨應用之間的套利機率可能較大。這時,即使一個計算機本領不那麼強的人,只要他有足夠的金融知識和足夠的市場嗅覺,就也可以成為駭客,對 DeFi 系統進行攻擊。

駭客透過區塊鏈上的閃電貸,以很小的成本借出大筆資金,然後用這筆資金去造成一些數字資產的價格波動,再從中漁利,最初興起於以太坊,隨著幣安智慧鏈等 CeFi + DeFi 生態上的資產愈發豐富,駭客也在隨時伺機待發。

PeckShield 「派盾」相關負責人表示:“攻擊手法仍換湯不換藥,只是從一條鏈轉到了另一條鏈,DeFi 協議開發者應在攻擊發生後,自查程式碼。如果對此不瞭解,應找專業的審計機構進行審計和研究,防患於未然。”

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读