黑色星期三:Popsicle 和 Wault 被擄走的 2000 多萬美元

買賣虛擬貨幣

8月4日,去中心化做市商 Popsicle Finance 和收益聚合平臺 Wault Finance 接連遭到攻擊,分別損失 2,070 萬美元和 88.8 萬美元。

PeckShield「派盾」安全人員第一時間定位分析,發現在 Popsicle Finance 的安全事件中,攻擊者建立了 3 個合約,即合約 A、B、C,並在 8 個流動池中重複呼叫 A.deposit()、A.transfer(B)、B.collectFees()、B.transfer(C)、C.collectFees() 進行攻擊。

PeckShield「派盾」簡述攻擊過程:

第一步,攻擊者從 Aave 中透過閃電貸借出 3,000 萬 USDT、1,300 WETH、1,400 BTC, 3,000 萬 USDC、3,000 萬 DAI 和 200,000 UNI

第二步,呼叫合約 A 的 deposit() 函式,在 USDT-WETH PLP 流動池中新增 3,000 萬 USDT 和 5,460 WETH,同時獲得 10.52 PLP tokens;

第三步,A 將 10.52 PLP tokens 轉給 B;

第四步,呼叫合約 B 的 collectFees() 函式,旨在更新 tokenRewards;

第五步,B 將 10.52 PLP tokens 轉給 C;

第六步,呼叫合約 C 的 collectFees() 函式,旨在更新 tokenRewards;

第七步,C 將 10.52 PLP tokens 轉給 A,便於 A 移除流動性;

第八步,呼叫合約 A 的 withdraw() 函式,移除流動性,A 獲得 3,000 萬 USDT 和 5,460 WETH;

第九步,呼叫合約 B 的 collectFees() 函式,獲得獎勵 215 萬 USDT 和 392 WETH;

第十步,呼叫合約 C 的 collectFees() 函式,獲得獎勵 215 萬 USDT 和 402 WETH;

最後,攻擊者重複操作二至十的步驟,歸還閃電貸完成攻擊。

PeckShield

PeckShield「派盾」安全人員第一時間定位分析,發現 Wault Finance 的攻擊手段和此前損失 1,000 多萬美元的 yDAI 相似,即使在 USDT-WEX 交易對的價格被操縱的情況下,stake() 函式仍可透過相關的 USDT-WEX 交易對強制將 USDT 兌換為 WEX。

PeckShield「派盾」簡述攻擊過程:

第一步,攻擊者透過閃電貸從 WUSD-USDT 池中借出 1,683 萬 WUSD,

第二步,呼叫 WUSDMaster 贖回 1,503 萬 USDT (90%)和 1.065 億 WEX(10%),此時 WEX 的價格為 0.015 USDT;

第三步,攻擊者從 PancakeSwap 透過閃電貸借出 4,000 萬 USDT,並將其中 2,300 萬 USDT 兌換為 WEX,此時 WEX 的價格上升至 0.044 USDT,攻擊者獲得 5.179 億 WEX;

第四步,攻擊者重複呼叫 stake() 函式,質押 68 次 25 萬 USDT(總計 1,700 萬 USDT),每次質押 WUSDMaster 都會將其中 10% 的 USDT 強制兌換為 WEX,此時 WEX 的價格為 0.14 USDT;

第五步,攻擊者歸還 1,688 萬 WUSD 閃電貸;

第六步,攻擊者用 6.24 億 WEX 兌換為 USDT, 獲得 2,593 萬 USDT,隨後歸還 4,012 萬 USDT 的閃電貸;此時攻擊者獲利 11 萬 WUSD 和 84 萬 USDT,並將這些代幣在 PancakeSwap 上兌換為 370 ETH,並透過 AnySwap 跨鏈到以太坊上。

受到安全事件的影響,WEX 短時腰斬,從 0.012 美元跌至 0.006 美元。

免責聲明:

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

推荐阅读