每隔幾個月,Twitter上就會有人宣布AI要讓智能合約審計師失業(yè)。我在過去幾個月里一直在開發(fā)spectr-ai——一個AI驅(qū)動的智能合約分析工具——我可以明確告訴你:這個說法是錯的。但反過來聲稱AI對安全工作毫無用處,同樣錯得離譜。
真相更微妙,更有趣,而且對任何構(gòu)建或?qū)徲嬛悄芎霞s的人都有實(shí)際影響。
![]()
AI真正擅長什么
AI在大規(guī)模模式識別上表現(xiàn)出色。給語言模型喂一份Solidity合約,它能可靠地捕捉到:
已知漏洞模式。重入攻擊(reentrancy)、未檢查返回值、tx.origin認(rèn)證、未初始化存儲指針、0.8.0版本前的整數(shù)溢出——這些都是訓(xùn)練數(shù)據(jù)中出現(xiàn)數(shù)千次的文檔化模式。AI能快速、穩(wěn)定地發(fā)現(xiàn)它們。
風(fēng)格和規(guī)范問題。狀態(tài)變更缺少事件、應(yīng)該是view/pure卻不是的函數(shù)、過于寬松的可見性、缺少零地址檢查。這些不是漏洞,但表明代碼 sloppy,往往隱藏著更深的問題。
偏離已知安全模式。當(dāng)一份合約實(shí)現(xiàn)了DEX,卻在某個特定函數(shù)上偏離了Uniswap V2/V3模式,AI可以標(biāo)記這種偏離。它可能不知道為什么這種偏離危險,但它知道這很不尋常。
速度。AI能在幾秒內(nèi)分析1000行合約。人類審計師需要幾小時或幾天。對于初篩,這種速度差異是變革性的。
當(dāng)我用spectr-ai跑存在已知漏洞的合約時,它能高可靠性地抓住明顯的問題。withdraw函數(shù)里的重入攻擊?立即標(biāo)記。admin函數(shù)缺少訪問控制?每次都能抓到。這些是構(gòu)成審計報告主體的基礎(chǔ)發(fā)現(xiàn)。
AI做不到什么
這里就是 hype 破滅的地方。
新型攻擊向量。DeFi歷史上最具破壞性的黑客攻擊,利用的都是沒人見過的邏輯。Euler Finance的捐贈攻擊、Mango Markets的預(yù)言機(jī)操縱、Cream Finance的閃電貸連環(huán)攻擊——這些都需要創(chuàng)造性地推理多個系統(tǒng)在對抗條件下如何交互。AI無法推理訓(xùn)練數(shù)據(jù)中不存在的攻擊。
跨合約經(jīng)濟(jì)建模。DeFi協(xié)議是可組合的。借貸協(xié)議與AMM交互,AMM與預(yù)言機(jī)交互,預(yù)言機(jī)與跨鏈橋交互。理解一個協(xié)議的價格操縱如何在整個堆疊中連鎖反應(yīng),需要建模經(jīng)濟(jì)激勵、博弈論和多步攻擊路徑。當(dāng)前的AI模型如果你把它們列出來,可以跟隨這些鏈條,但它們無法獨(dú)立發(fā)現(xiàn)。
業(yè)務(wù)邏輯驗(yàn)證。一份合約可能在技術(shù)上是安全的——沒有重入、沒有溢出、訪問控制正確——但實(shí)現(xiàn)了錯誤的業(yè)務(wù)邏輯。如果一份治理合約讓提案立即執(zhí)行而不是在時間鎖后執(zhí)行,AI可能不會標(biāo)記,因?yàn)榇a"運(yùn)行正常"。
這就是審計師不可替代的地方。人類理解意圖。人類可以問:"這個設(shè)計真的應(yīng)該這樣嗎?"
實(shí)際工作流程長什么樣
我在spectr-ai上的經(jīng)驗(yàn)讓我確信,未來不是AI取代審計師,而是AI增強(qiáng)的審計師取代不用AI的審計師。
典型的工作流是這樣的:
第一階段:AI初篩。把合約喂給spectr-ai,幾分鐘內(nèi)得到一份已知模式問題清單。重入風(fēng)險、訪問控制缺口、風(fēng)格問題——全部標(biāo)記。
第二階段:人類優(yōu)先排序。審計師掃過AI輸出,立即知道哪里需要深挖。AI標(biāo)記了非常規(guī)的DEX實(shí)現(xiàn)?那是審計師花兩小時仔細(xì)研究的地方。AI說"看起來標(biāo)準(zhǔn)"?審計師可以更快通過,把精力留給復(fù)雜邏輯。
第三階段:深度推理。這是人類主導(dǎo)的領(lǐng)域。審計師問:這個預(yù)言機(jī)設(shè)計在流動性危機(jī)下表現(xiàn)如何?這個治理參數(shù)設(shè)置是否讓惡意提案在代幣分布不均時變得可行?閃電貸如何與這個清算機(jī)制交互?
第四階段:AI輔助驗(yàn)證。一旦審計師假設(shè)了一個攻擊場景,可以用AI快速測試。生成一個利用這個邊緣情況的proof-of-concept?AI可以加速編碼。檢查這個特定模式是否在歷史漏洞中出現(xiàn)過?AI可以搜索和總結(jié)。
結(jié)果是審計更快、更全面,但關(guān)鍵決策點(diǎn)仍然有人類把關(guān)。
為什么"AI會取代審計師"是錯的
這個預(yù)測失敗的原因,和"AI會取代醫(yī)生"失敗的原因一樣。醫(yī)學(xué)AI在識別X光片中的腫瘤方面可能超人,但診斷是模式識別、病史采集、患者溝通和判斷的綜合體。智能合約審計類似。
審計不是找 bug 的清單練習(xí)。它是理解一個系統(tǒng)在對抗環(huán)境中的行為,而對抗環(huán)境是不斷演化的。
2024年的新攻擊向量不會出現(xiàn)在2023年的訓(xùn)練數(shù)據(jù)中。當(dāng)有人發(fā)明了新的閃電貸組合或治理操縱技術(shù),AI需要人類先發(fā)現(xiàn)、文檔化、喂給它,才能學(xué)會識別。
更深層的問題是:審計的最終輸出不是漏洞列表,而是風(fēng)險判斷。客戶問"這個合約安全嗎?"時,他們想要的是人類專家的背書,附帶解釋和情境。一份AI生成的報告,即使技術(shù)上準(zhǔn)確,也無法提供同樣的信任。
為什么"AI對安全沒用"也是錯的
另一端的懷疑論者通常基于早期工具的局限下結(jié)論。他們試過ChatGPT分析合約,發(fā)現(xiàn)它幻覺漏洞或錯過明顯問題,于是宣布整個方向是死胡同。
![]()
這忽略了專門化工具的發(fā)展。通用大語言模型和為Solidity訓(xùn)練的專用模型之間的差距,就像用谷歌搜索和用專業(yè)數(shù)據(jù)庫的差距。
spectr-ai不是問"這個合約有什么問題?"然后希望最好。它運(yùn)行確定性分析管道:解析AST、追蹤數(shù)據(jù)流、匹配已知漏洞簽名、標(biāo)記偏差。AI組件處理的是模式識別,而模式識別正是現(xiàn)代神經(jīng)網(wǎng)絡(luò)的強(qiáng)項(xiàng)。
結(jié)果是在已知問題上的召回率(recall)顯著高于人類初篩,同時保持合理的精確率(precision)。它不會替代深度審計,但它讓深度審計從正確的起點(diǎn)開始。
行業(yè)會怎么演變
我看到的未來不是裁員,而是能力分層。
頂級審計公司已經(jīng)在用內(nèi)部工具自動化初篩。他們最好的審計師把時間花在最難的問題上——新穎的經(jīng)濟(jì)攻擊、復(fù)雜的跨協(xié)議交互、治理博弈論。
中小型審計公司獲得AI工具后,可以提供更接近頂級公司覆蓋范圍的初篩服務(wù)。市場不是零和,而是整體安全水位上升。
對個體審計師來說,技能組合在轉(zhuǎn)移。純代碼閱讀能力仍然重要,但"提示工程+快速驗(yàn)證假設(shè)"正在成為核心技能。最好的審計師會是那些能用AI擴(kuò)展自己、同時知道何時不信任AI輸出的人。
對協(xié)議開發(fā)者來說,變化更直接。在提交正式審計前運(yùn)行AI分析,可以顯著降低"明顯問題被人類發(fā)現(xiàn)時的尷尬"成本。開發(fā)-審計循環(huán)加快,安全左移成為實(shí)際可能。
一個具體的例子
上個月我用spectr-ai分析了一份真實(shí)合約——一個修改過的DEX實(shí)現(xiàn),帶有一些非標(biāo)準(zhǔn)的流動性管理功能。
AI在90秒內(nèi)標(biāo)記了:
- 一個重入風(fēng)險(withdraw函數(shù)在更新余額前進(jìn)行外部調(diào)用)
- 兩個缺少零地址檢查的管理函數(shù)
- 與標(biāo)準(zhǔn)Uniswap V3相比,一個非標(biāo)準(zhǔn)的費(fèi)用計算模式
- 一個應(yīng)該是view卻是payable的函數(shù)
這些都是有效發(fā)現(xiàn)。人類審計師最終也會找到,但可能需要幾小時的代碼閱讀。
然后人類部分開始。那個非標(biāo)準(zhǔn)費(fèi)用計算——AI標(biāo)記了"不尋常",但不能判斷是否有意為之、是否安全。審計師花了40分鐘追蹤資金流動,發(fā)現(xiàn)它在特定邊緣情況下確實(shí)會導(dǎo)致LP損失,但那是設(shè)計選擇,不是漏洞。AI提供了起點(diǎn),人類完成了推理。
如果沒有AI,審計師可能在找到這個邊緣情況前就已經(jīng)疲憊于掃描標(biāo)準(zhǔn)模式。有了AI,精力被保留給真正需要創(chuàng)造力的地方。
給不同角色的建議
如果你是審計師:現(xiàn)在開始用AI工具。不是作為玩具,而是作為工作流程的組成部分。學(xué)習(xí)什么可以信任、什么需要驗(yàn)證。你的競爭力將取決于與AI協(xié)作的效率,而不是抵制它。
如果你是協(xié)議開發(fā)者:在開發(fā)過程中集成AI分析。不要等審計前夜。越早發(fā)現(xiàn)模式級問題,修復(fù)成本越低。但不要把AI輸出當(dāng)作安全背書——它只是一個篩選器。
如果你是安全公司:投資專用工具。通用模型很快會商品化,但針對Solidity優(yōu)化、集成你的漏洞數(shù)據(jù)庫、匹配你審計風(fēng)格的工具,是差異化來源。
最后的判斷
智能合約審計正在經(jīng)歷工具鏈的范式轉(zhuǎn)移,類似軟件測試從手動到自動化的演變。但測試自動化沒有消除QA工程師,而是改變了他們的角色。審計AI也不會消除審計師。
真正的分水嶺在于:當(dāng)所有人都有AI工具時,什么讓你脫穎而出?答案是判斷力——知道AI遺漏了什么,知道什么時候一個"通過"的結(jié)果實(shí)際上隱藏了風(fēng)險,知道如何向客戶解釋復(fù)雜的技術(shù)發(fā)現(xiàn)。
這些技能無法被自動化。但它們可以被放大。
下一個被行業(yè)記住的重大漏洞,會是由純AI系統(tǒng)發(fā)現(xiàn)的,還是由用AI擴(kuò)展自己的人類審計師發(fā)現(xiàn)的?如果歷史是指南,答案可能是后者——但前提是后者真的學(xué)會了用好工具。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.