免責聲明:文章已更新,以反映 Omniscia 沒有審核 MasterPlatypusV4 合約的版本。 相反,該公司在 1 年 21 月 5 日至 2021 月 XNUMX 日審核了 MasterPlatypusVXNUMX 合約的一個版本。
8 萬美元的 Platypus 閃電貸攻擊之所以成為可能,是因為代碼順序錯誤, 根據 鴨嘴獸審計員 Omniscia 的屍檢報告。 審計公司聲稱他們審計的版本中不存在有問題的代碼。
鑑於近期 @鴨嘴獸defi 事件 https://t.co/30PzcoIJnt 團隊已經準備了一份技術性事後分析,詳細描述了該漏洞利用是如何被揭開的。
一定要遵循 @Omniscia_sec 接收更多安全更新!https://t.co/cf784QtKPK pic.twitter.com/egHyoYaBhn
— 奧姆尼西亞 (@Omniscia_sec) 2023 年 2 月 17 日
根據該報告,Platypus MasterPlatypusV4 合約“在其緊急撤回機制中包含一個致命的誤解”,這使得它“在更新與股權頭寸相關的 LP 代幣之前執行償付能力檢查”。
該報告強調,emergencyWithdraw 函數的代碼具有防止攻擊的所有必要元素,但這些元素只是以錯誤的順序編寫,正如 Omniscia 解釋的那樣:
“這個問題可以通過重新排序 MasterPlatypusV4::emergencyWithdraw 語句並在用戶的金額輸入設置為 0 後執行償付能力檢查來防止,這將阻止攻擊發生。”
Omniscia 在 1 年 21 月 5 日至 2021 月 XNUMX 日期間審計了 MasterPlatypusVXNUMX 合約的一個版本。但是,該版本“不包含與外部 platypusTreasure 系統的集成點”,因此不包含順序錯誤的代碼行。
值得注意的是,在 Omniscia 進行審計時,被利用的代碼並不存在。 Omniscia 的觀點暗示,開發人員必須在審計完成後的某個時刻部署了新版本的合約。
相關新聞: Raydium 公佈黑客攻擊細節,建議對受害者進行賠償
審計員聲稱 Avalanche C-Chain 地址 0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 的合約實施是 剝削. 該合約的第 582-584 行似乎在 PlatypusTreasure 合約上調用一個名為“isSolvent”的函數,第 599-601 行似乎將用戶的金額、因子和獎勵債務設置為零。 但是,在調用“isSolvent”函數後,這些數量將設置為零。
鴨嘴獸團隊 確認 16 月 XNUMX 日,攻擊者利用了“USP 償付能力檢查機制中的缺陷”,但該團隊最初並未提供更多細節。 審計員的這份新報告進一步闡明了攻擊者可能如何完成攻擊。
鴨嘴獸團隊於 16 月 XNUMX 日宣布, 發生攻擊. 它試圖聯繫黑客並獲得返還資金以換取漏洞賞金。 襲擊者 使用閃貸 執行漏洞利用,這類似於在 Defrost Finance漏洞利用 25 年 2022 月 XNUMX 日。
來源:https://cointelegraph.com/news/platypus-attack-exploited-incorrect-ordering-of-code-auditor-claims