Back to Blog

Coin98 如何悄悄修復漏洞

Code Auditing
January 16, 2022
3 min read

上週五,我們的監控系統偵測到針對 BSC 上 Coin98 智能合約(0x8aaf408e06feed6a6a6182ea3c464035748b9b31 — 受害合約)的一次攻擊。我們立即透過 Twitter 私訊了專案負責人,但未獲得回應。由於當時漏洞仍然存在,我們並未將其公開。幾個小時後,我們發現專案負責人已經建立了一個修復該漏洞的新合約。因此,我們現在可以安全地在此總結該漏洞及其修復方式。

攻擊交易與根本原因

我們內部監控系統引發的該交易記錄引起了我們的注意。經過仔細調查,我們確認這是由於 swapExactTokensForTokens 函數中 route 參數(實際上是指路由器)的存取控制缺失所致,如下所示:

該合約盲目地信任了 route,然後調用了路由器的 swapExactTokensForTokens 函數。在此之前,它會將受害合約擁有的所有代幣授權給該 route。然而,route 可以由攻擊者傳入。在這種情況下,攻擊者可以將受害合約的所有代幣轉移給自己,然後兌換成 WBNB 以獲取利潤。

以下是其中一次攻擊交易

該漏洞的隱蔽修復

我們上週五透過 Twitter 私訊了專案負責人,但未獲回應。隨後我們在今天再次檢查了該合約,發現已經部署了一個新的智能合約(0x83f25d16bdf91f51120032f264dad0e1ab1c8227)。這個新合約為 route 增加了白名單機制:

結論

我們已經見過許多案例,智能合約盲目地信任傳入的參數。這確實會造成嚴重的安全漏洞。

請勿信任任何不受控制的參數!

關於 BlockSec

BlockSec 是一家開拓性的區塊鏈安全公司,於 2021 年由一群全球傑出的安全專家創立。公司致力於增強新興 Web3 世界的安全性和可用性,以促進其大規模採用。為此,BlockSec 提供智能合約與 EVM 鏈的安全審計服務,用於安全開發與主動阻斷威脅的 Phalcon 平台,用於資金追蹤與調查的 MetaSleuth 平台,以及協助 Web3 建構者能高效探索加密世界的 MetaSuites 瀏覽器擴充功能。

迄今為止,公司已服務超過 300 家知名客戶,如 MetaMask、Uniswap Foundation、Compound、Forta 和 PancakeSwap,並從包括經緯創投(Matrix Partners)、Vitalbridge Capital 和分佈式資本(Fenbushi Capital)在內的頂尖投資者處獲得了兩輪數千萬美元的融資。

官方網站:https://blocksec.com/

官方 Twitter 帳號:https://twitter.com/BlockSecTeam

Sign up for the latest updates
電子報 - 2026年6月
Security Insights

電子報 - 2026年6月

本月報告涵蓋2026年6月三起最大安全事件,確認損失合計約2200萬美元。一次精密蜜罐攻擊利用未受檢查的代幣授權,從JaredFromSubway的MEV機器人抽走約1500萬美元。兩個舊版Aztec rollup部署因證明結算邊界漏洞損失約435萬美元。SecondFi的Ed25519實現缺陷暴露錢包私鑰,導致374個錢包共損失約240萬美元。三起事件共同模式:表面完整但從未真正執行的安全保證。

~$400萬損失:Taiko、SecondFi遭攻擊 | BlockSec週報
Security Insights

~$400萬損失:Taiko、SecondFi遭攻擊 | BlockSec週報

本週區塊鏈安全報告涵蓋2026年6月22-28日兩起重大事件,以太坊和Cardano確認損失約410萬美元。Taiko橋接漏洞結合了外洩的SGX飛地簽名密鑰與不完整的認證策略,未能拒絕調試飛地,使攻擊者註冊惡意證明者並偽造L2狀態證明。SecondFi錢包漏洞源於Ed25519隨機數派生中的密碼學實現缺陷,移除了秘密輸入,可從Cardano公開交易數據離線恢復私鑰。

~$18M損失:jaredFromSubway、Aztec及更多 | BlockSec每週快報
Security Insights

~$18M損失:jaredFromSubway、Aztec及更多 | BlockSec每週快報

本週區塊鏈安全報告涵蓋2026年6月15日至21日,以太坊與BNB Chain共發生3起重大事件,總損失約1830萬美元。重點分析兩起事件:jaredFromSubway事件揭示反向授權攻擊模式——MEV機器人主動將資產授權給不可信第三方合約套利,攻擊者構造假包裝代幣與交易池,發出真實事件但從未消耗授權額度,損失約1500萬美元。Aztec三日內第二次漏洞:逃生艙ZK電路中`old_data_root`兩個見證值缺少相等約束,致使攻擊者可用偽造Merkle樹證明虛假票據所有權並通過鏈上驗證。

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit