FAUDITOR 論文閱讀分析:很多 smart contract 工具真正缺的,不是更多 warning,而是更早看出哪條路真的能把錢搬走

論文基本資訊

  • 論文標題:Capturing Monetarily Exploitable Vulnerability in Smart Contracts via Auditor Knowledge-Learning Fuzzing
  • 作者:Bowen Cai、Weiheng Bai、Hangyun Tang、Youshui Lu、Kangjie Lu
  • 年份:2026
  • 來源:arXiv:2604.18395
  • 論文連結:https://arxiv.org/abs/2604.18395
  • DOI:10.48550/arXiv.2604.18395
  • 主題:Smart Contracts、Fuzzing、Blockchain Security、DeFi、Vulnerability Discovery、Exploitability Analysis

這篇 paper 我會想寫,不是因為它又多做出一個 smart contract fuzzer,而是因為它把一個安全團隊一直都知道、但工具常常沒真的處理好的問題講得很直接:真正讓團隊痛的,往往不是 warning 不夠多,而是 warning 太多、但真正會變成錢被搬走的那幾個風險沒有被先抓出來。

尤其在 DeFi 與 smart contract 世界,很多漏洞不是單純「有 bug」而已,而是會一路穿過價格操縱、資產兌換、狀態更新與多步函式鏈,最後變成可被直接套利、可被直接搬資產的 monetarily exploitable path。這篇論文要補的正是這個落差:不要只問程式哪裡怪,要問它哪裡真的會讓攻擊者賺到錢。

如果把這篇濃縮成一句話,我會寫成:很多漏洞工具卡住的,不是找不到異常,而是還不夠懂「哪種異常真的已經接近攻擊者的提款路徑」。

它想解的不是一般漏洞,而是 MEVuls

作者先定義了一個很關鍵的概念:Monetarily Exploitable Vulnerabilities(MEVuls)。這不是泛泛指所有 smart contract 弱點,而是更聚焦在那些會出現在 monetary transaction / value-transfer logic 裡、能被攻擊者轉成實際金融收益的漏洞。

這個 framing 很重要,因為它其實是在重新排序優先級。很多既有工具會報出:

  • 可疑行為
  • 潛在 coding flaw
  • coverage 能碰到的異常路徑

但對協議團隊、安全稽核員、甚至投資者來說,真正想先知道的是另一件事:哪些路徑真的能組成有經濟意義的 exploit chain?

換句話說,這篇不是單純在做更會撞 code path 的 fuzzing,而是在做更接近現實攻擊動機的 fuzzing

為什麼這類漏洞特別難抓?

論文點出的難點很實際。MEVuls 難抓,不只是因為 smart contract 本來就難,而是因為它通常同時具備幾個特性:

  • 函式呼叫鏈很長:攻擊可能不是單一步驟,而是多次互動後才形成套利條件。
  • 金融語意很重:風險往往藏在價格、鑄造、銷毀、兌換、抵押、清算或治理流程裡。
  • 同型異構很常見:不同協議長得不一樣,但 exploitable pattern 可能很像。
  • 一般 warning 不夠 actionable:就算工具告訴你「這裡可能有問題」,也不代表它能說清楚這個問題到底會不會變成真實損失。

這也是為什麼很多工具最後會讓團隊陷入熟悉的老問題:報警很多,但 triage 成本更高;而真正高價值的 exploitable case 反而被埋在噪音裡。

FAUDITOR 的主軸:把稽核知識灌回 fuzzing

作者提出的系統叫 FAUDITOR。我覺得它最值得看的點,不是名字,而是背後那個思路:把 audit report 裡的人類稽核知識轉成 fuzzing search strategy。

這比單純說「我們用了 NLP」更重要。因為論文真正抓到的是,現實世界裡很多 exploitable pattern 其實已經散落在大量 auditor reports、incident writeups 與漏洞說明裡,只是這些知識大多停留在人讀得懂、工具卻吃不太進去的敘事層。

FAUDITOR 想做的,就是把這些稽核員已經累積的 exploitation pattern 抽出來,拿去引導 fuzzing 更快往高風險金融介面與高價值狀態轉換靠近。

它的核心精神可以理解成:

  • 不是盲目亂炸所有輸入
  • 而是先理解「歷史上稽核員最常在哪些金融邏輯裡看出可套利結構」
  • 再把這種知識回灌到測試探索順序裡

這其實很像把傳統 coverage-guided fuzzing,往economically informed fuzzing 推了一步。

論文提出三個關鍵元件

根據摘要,FAUDITOR 至少有三個值得記的核心設計:

  • MEVuls formalization:先把常見真實金融 exploit 抽象成一組可被識別的漏洞類型與模式。
  • auditor knowledge integration:利用 NLP 從 auditor reports 萃取 exploitation insights,拿來引導搜尋。
  • self-learning mechanism:根據先前 fuzzing 結果持續修正後續策略,而不是每次都從同樣的盲目起點開始。

我覺得這三個拼起來才是這篇的真正價值。單看每一個元素都不算完全新鮮——formalization、NLP 輔助、self-learning 你以前都看過;但這篇把它們串成一個很實務的閉環:

先把「什麼叫有經濟意義的漏洞」定清楚,再讓人類稽核經驗去偏置探索方向,最後再讓系統從已經撞到的結果裡學會下一輪該更像哪種稽核員。

它真正補的,是漏洞偵測到 exploitability judgement 中間那段空白

我最喜歡這篇的地方,是它不是只想把 recall 做大,而是想把發現流程往更接近 exploitability judgement 那邊推。

很多安全工具實際上都停在這裡:

  • 它知道有一條怪 path
  • 它知道某個 invariant 可能被破壞
  • 它甚至知道某個函式組合看起來危險

但它不太知道,這條路徑對攻擊者來說,到底是:

  • 只是理論上的異常
  • 還是已接近可操作的價值轉移通道

而在 DeFi 世界,這個差別巨大。因為真正會造成 headline-level 損失的,通常不是抽象 bug,而是可被金融化的 bug

所以我會把 FAUDITOR 看成是在做一種很有工程味的事情:把漏洞發現系統從 syntax / path / anomaly 導向,往 attack economics 導向搬。

最有殺傷力的數字:220 個 zero-day MEVuls

摘要裡最醒目的數字當然是這個:FAUDITOR 找到 220 個 zero-day MEVuls

這個數字本身很猛,但我覺得更重要的是它代表了兩件事:

  • 現有工具確實還漏掉不少真正高價值問題
  • 如果搜尋策略開始更懂 exploit pattern,產出會明顯不一樣

另外摘要也提到,和既有 fuzzers 相比,FAUDITOR 不只抓得多,還有兩個很實際的優勢:

  • 更快偵測到漏洞
  • 更好的 instruction coverage

這兩件事放在一起看就很關鍵。因為這代表它不是靠一堆超慢、超重的事後分析硬拗出結果,而是探索效率本身有改進。這通常才表示方法不是只在某個 dataset 上湊巧有用,而是真的改變了搜尋品質。

這篇和 AI / Agent security 主線其實沒有離很遠

表面上看,這篇比較像 blockchain security paper,和最近站上那串 prompt injection、runtime guardrails、MCP defense 好像是不同宇宙;但我反而覺得它們底層在講同一件事:真正有產線價值的安全系統,不能只會報問題,還要更懂攻擊者想怎麼把問題轉成收益或影響。

最近幾篇論文一直在提醒一個主軸:

  • 漏洞 AI 卡住的,常不是 finding,而是報告品質與 triage 可交付性。
  • prompt injection 防禦卡住的,常不是知道有毒內容,而是不知道怎麼把最終 action 真正攔下來。
  • agent runtime 安全卡住的,常不是看不到風險,而是不知道該把控制放在哪一層。

FAUDITOR 補的則是另一種同型問題:smart contract analysis 卡住的,常不是看不到怪象,而是不夠懂哪種怪象已經接近金融 exploit。

所以如果把它放回 sectools.tw 的最近主線,我會把它看成是把「安全分析必須更接近真實攻擊工作流」這件事,帶到 smart contract / DeFi 這一側。

它最值得實務界記住的啟示

這篇 paper 給實務界最有價值的提醒,我覺得有三個:

  • 不要再把所有 warning 視為同質:真正重要的是 exploitability ranking,而不是 alert volume。
  • 人類稽核知識是可操作資產,不只是文件:audit reports 不該只是 PDF 存檔,它們其實可以回灌成下一代分析系統的搜尋偏置。
  • 自動化要更像懂業務語意的分析師:在 DeFi 場景裡,不懂 value-transfer logic 的工具,再高 coverage 也可能只是在高速產生低價值噪音。

這三點其實不只適用 smart contracts。放大來看,它是在說:安全自動化若要真的變有用,就必須愈來愈會區分「形式上的異常」和「攻擊者真正在意的 exploitable structure」。

最後怎麼看這篇?

Capturing Monetarily Exploitable Vulnerability in Smart Contracts via Auditor Knowledge-Learning Fuzzing 這篇最值得帶走的,不是「又一個 fuzzer 破了幾個 benchmark」,而是它把很現實的一件事落地了:

真正高價值的安全工具,不能只會把可疑路徑找出來,還要更像有經驗的稽核員,知道哪些路徑最可能一路通往資產流失。

如果未來 smart contract security tooling 要繼續進化,我很認同這篇指的方向:不是無止境堆更多 warning,而是把金融語意、稽核經驗與自我修正能力 一起放進搜尋流程裡。因為在 DeFi 現場,真正有價值的從來不是「這裡怪怪的」,而是「這裡很可能就是下一個會被搬錢的地方」。

如果要我把它濃縮成最後一句,我會寫成:

很多 smart contract 安全工具真正缺的,不是再多一點 coverage,而是更像稽核員那樣,知道哪條異常路徑已經離「可以把錢搬走」很近。


本文由 AI 產生、整理與撰寫;內容基於論文摘要、公開資訊與脈絡化解讀,建議仍搭配原始論文交叉閱讀。

You may also like