北京時間 2021 年 5 月 16 日晚上九點半左右,PeckShield「派盾」預警監測到,跨鏈智能收益與流動性聚合器 bEarn Fi 遭到攻擊,損失近 1,100 萬美元。
PeckShield「派盾」安全人員追蹤和分析發現,此次攻擊始於 bEarn Fi 機槍池(Vault)代碼存在的「小問題」,以下是攻擊細節分析。
值得注意的是,此次攻擊的本金是從 Cream Finance 的閃電貸借來的。
攻擊者從 Cream Finance 閃電貸借出 7,804,239.1 BUSD;
接著,攻擊者創建的合約將所借 BUSD 存入 BvaultsBank 後,這些 BUSD 立即存至 BvaultsStrategy 策略中,隨即轉存入 Alpaca 借貸資金池,此時,攻擊者可獲得借貸資金池返還給的 ibBUSD 合成資產作為用戶的抵押憑證(相當於存摺)。當退出時,用戶可以憑藉該憑證贖回抵押在借貸資金池內的本金及其抵押期內所產生的利息。在這一步中,Alpaca Vault 鑄造了 7,598,066.6 ibBUSD 返還至 BvaultsStrategy;
合約利用所鑄造的 7,598,066.6 ibBUSD 通過 Alpaca FairLaunch 進行挖礦;
當攻擊者合約從 BvaultsBank 提取 7,804,239.1 BUSD 時,以 BvaultsStrategy 提取邏輯為準,按照 ibBUSD 的價格來換算,而 iBUSD 的價格高於 BUSD,則 7,804,239.1 ibBUSD 相當於 8,016,006.1 BUSD,憑空多出 20 多萬 BUSD。
值得注意的是,攻擊者合約只能從 bVaults Bank 取出其中 7,804,239.1 BUSD,並再次存入用於第二輪攻擊,加上上一輪未從 BvaultsStrategy 取出的部分,此時,BvaultsStrategy 轉入 Alpaca 借貸資金池的數額就變成了 8,016,006.1 BUSD。
攻擊者重複操作,最終將 7,806,580.4 BUSD 返還給閃電貸,造成近 1,100 萬美元的損失。
bEarn Fi 在復盤此次攻擊事件時寫道:務必複核所有的產品代碼,由於近期 DeFi 安全事件頻繁發生,未來的工作重心將從創新調整到增強安全上來。
事實上,每次 DeFi 安全事件發生後,區塊鏈安全公司 PeckShield 「派盾」都會警示協議開發者引以為戒,在協議上線前對代碼進行審計和研究,在攻擊事件發生後自查代碼,防患於未然,但說一千道一萬都不及遭到損失數百上千萬美元的教訓來得深刻。
安全是 DeFi 生態愈發繁榮的前提,也是一切創新創造的根本,不要等到造成損失才審視安全的重要性。
冷萃財經原創,作者:awing,轉載請註明出處:https://www.lccjd.top/2021/05/18/bearn-fi-%e9%bb%91%e5%ae%a2%e6%94%bb%e5%87%bb%e5%a7%8b%e6%9c%ab%ef%bc%9a%e4%bb%a3%e7%a0%81%e7%8e%b0%e5%b0%8f%e9%97%ae%e9%a2%98%e8%bd%bb%e6%9d%be%e5%be%97%e6%89%8b1100-%e4%b8%87/?variant=zh-tw
文章評論