鴨嘴獸攻擊利用了不正確的代碼排序,審計員聲稱


根據Platypus 審計師Omniscia 的事後報告,價值800 萬美元的Platypus 閃電貸攻擊之所以成為可能,是因為代碼順序錯誤。審計公司聲稱他們看到的版本中不存在有問題的代碼。

鑑於最近的@Platypusdefi 事件,https://t.co/30PzcoIJnt 團隊準備了一份技術性事後分析,詳細描述了該漏洞利用的具體過程。

請務必關注@Omniscia_sec 以獲得更多安全更新https://t.co/cf784QtKPK pic.twitter.com/egHyoYaBhn

– Omniscia (@Omniscia_sec) 2023 年2 月17 日

根據該報告,Platypus MasterPlatypusV4 合約“在其緊急撤回機制中包含一個致命的誤解”,這使得它“在更新與股權頭寸相關的LP 代幣之前執行償付能力檢查”。

該報告強調,emergencyWithdraw 函數的代碼具有防止攻擊的所有必要元素,但這些元素只是以錯誤的順序編寫,正如Omniscia 解釋的那樣:

“這個問題可以通過重新排序MasterPlatypusV4::emergencyWithdraw 語句並在用戶的金額輸入設置為0 後執行償付能力檢查來防止,這將阻止攻擊發生。”

Omnisia 承認,他們在2021 年11 月21 日至12 月5 日期間審核了MasterPlatypusV4 合約的一個版本。但是,該版本“不包含與外部platypusTreasure 系統的集成點”,因此不包含順序錯誤的代碼行。從Omniscia 的角度來看,這意味著開發人員必須在審計完成後的某個時候部署了新版本的合約。

相關:Raydium 公佈黑客攻擊細節,建議對受害者進行賠償

審計員聲稱,Avalanche (AVAX) C-Chain 地址0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 的合約實施被利用了。該合約的第582-584 行似乎調用了PlatypusTreasure 合約上名為“isSolvent”的函數,第599-601 行似乎將用戶的金額、因子和rewardDebt 設置為零。但是,在調用“isSolvent”函數後,這些數量將設置為零。

Platypus 團隊於2 月16 日證實,攻擊者利用了“ [the] USP 償付能力檢查機制”,但該團隊最初並未提供更多細節。 審計員的這份新報告進一步闡明了攻擊者可能如何完成攻擊。

鴨嘴獸團隊於2 月16 日宣布襲擊已經發生。它試圖聯繫黑客並獲得返還資金以換取漏洞賞金。攻擊者使用閃貸來執行漏洞利用,這類似於12 月25 日Defrost Finance 漏洞利用中使用的策略。

資訊來源:由0x資訊編譯自COINTELEGRAPH。版權歸作者Tom Blackstone所有,未經許可,不得轉載

Total
0
Shares
Related Posts