menu-icon
anue logo
鉅樂部鉅亨號鉅亨買幣
search icon
快訊

Grim Finance 被黑簡析:攻擊者通過閃電貸借出 WFTM 與 BTC 代幣

金色財經 2021-12-19 15:00

據慢霧區情報,2021 年 12 月 19 日,Fantom 鏈上 Grim Finance 項目遭受攻擊。慢霧安全團隊進行分析後以簡訊的形式分享給大家。 1. 攻擊者通過閃電貸借出 WFTM 與 BTC 代幣,並在 SpiritSwap 中添加流動性獲得 SPIRIT-LP 流動性憑證。 2. 隨後攻擊者通過 Grim Finance 的 GrimBoostVault 合約中的 depositFor 函數進行流動性抵押操作,而 depositFor 允許用戶指定轉入的 token 並通過 safeTransferFrom 將用戶指定的代幣轉入 GrimBoostVault 中,depositFor 會根據用戶轉賬前後本合約與策略池預期接收代幣(預期接收 want 代幣,本次攻擊中應為 SPIRIT-LP)的差值為用戶鑄造抵押憑證。 3. 但由於 depositFor 函數並未檢查用戶指定轉入的 token 的合法性,攻擊者在調用 depositFor 函數時傳入了由攻擊者惡意創建的代幣合約地址。當 GrimBoostVault 通過 safeTransferFrom 函數調用惡意合約的 transferFrom 函數時,惡意合約再次重入調用了 depositFor 函數。攻擊者進行了多次重入並在最後一次轉入真正的 SPIRIT-LP 流動性憑證進行抵押,此操作確保了在重入前後 GrimBoostVault 預期接收代幣的差值存在。隨後 depositFor 函數根據此差值計算並為攻擊者鑄造對應的抵押憑證。 4. 由於攻擊者對 GrimBoostVault 合約重入了多次,因此 GrimBoostVault 合約為攻擊者鑄造了遠多於預期的抵押憑證。攻擊者使用此憑證在 GrimBoostVault 合約中取出了遠多於之前抵押的 SPIRIT-LP 流動性憑證。隨後攻擊者使用此 SPIRIT-LP 流動性憑證移除流動性獲得 WFTM 與 BTC 代幣並歸還閃電貸完成獲利。 此次攻擊是由於 GrimBoostVault 合約的 depositFor 函數未對用戶傳入的 token 的合法性進行檢查且無防重入鎖,導致惡意用戶可以傳入惡意代幣地址對 depositFor 進行重入獲得遠多於預期的抵押憑證。慢霧安全團隊建議:對於用戶傳入的參數應檢查其是否符合預期,對於函數中的外部調用應控制好外部調用帶來的重入攻擊等風險。

暢行幣圈交易全攻略,專家駐群實戰交流

▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!

前往鉅亨買幣找交易所優惠






Empty