KeyFrame內部研究專用

DeFi Security 101 2025 - Smart Contract Auditing 101

DeFi Security Summit - DSS·11月19日週三·64 min英文

三句話摘要

三位頂尖 DeFi 安全研究員在史丹佛峰會前夕,分享 101 條智能合約審計實戰心法。 智能合約審計的核心不是工具或技巧的堆疊,而是「深度理解系統後再以攻擊者視角破壞它」的思維紀律,加上持續成長的心態與不妥協的測試文化。 學習策略:深度優先,再擴廣度。 新手應集中攻一個主題(如借貸協議)數月,直到遇到瓶頸再切換,而非分散學習。AI 可加速流程但不能取代思考能力的養成,否則將失去自主分析程式碼的能力。

重點整理

重點
  • 1

    學習策略:深度優先,再擴廣度。 新手應集中攻一個主題(如借貸協議)數月,直到遇到瓶頸再切換,而非分散學習。AI 可加速流程但不能取代思考能力的養成,否則將失去自主分析程式碼的能力。

  • 2

    審計思維:切換「理解模式」與「破壞模式」。 審計員必須先理解程式碼的設計意圖,再以攻擊者視角問「如果這種情況發生會怎樣」,主動尋找缺失的檢查、邊界條件與隱含假設,而非只看到已存在的東西。

  • 3

    工具與形式驗證:善用無狀態函式庫加速驗證。 將複雜邏輯抽離為無狀態函式庫後,可用 Certora、Alma 等工具快速形式化驗證數學正確性、提取最大最小值邊界,大幅縮減需人工審查的程式碼範圍。

  • 4

    職業心態:行動力勝過智力,熱情勝過勤奮。 沒有任何 DeFi 開發者能在不測試的情況下發布安全產品;同理,審計員不能在職業生涯中停止成長。維護心理健康、避免過勞,才能在長期保持審計品質的一致性。

實用技巧與重點

乾貨
  • 推薦學習資源:War Skill 網站、Cyfrin 的 I've Drive、Black Friday News(訂閱追蹤動態)
  • 形式驗證工具:Certora Verifier、Alma、對照組(Control Group)
  • 審計平台:Cantina、Sherlock、Tora
  • 協作人數效益:3 人協作審計 > 個人審計成果之總和
  • 真實案例:Rari Capital 黑客事件—低嚴重性修復導致 8,000 萬美元被盜,教訓:充分理解的低風險漏洞 > 未測試的修復方案
  • 另一案例:Euler V1 灰塵餘額(Dust Balance)修復引入更嚴重漏洞
  • Rajiv 在 Cantina 從事協作審計,有 25 年安全研究經驗
  • 競賽反饋速度:約一週即可看到結果,是他見過最快的學習反饋循環
  • 嚴重性矩陣組成:影響(Impact)× 可能性(Likelihood)→ 低/中/高
  • 漏洞分類術語:Anomaly(異常)、Bug(一般錯誤)、Vulnerability(漏洞,直接導致資金損失)
  • Zik Tour 的 Cantina 頁面呈現了大量 $0、$100、$1,000 獎金的低谷期,才得以換來巔峰成果
  • 逐步升級工具鏈:讀程式碼 → 紙上計算 → Python 腳本建圖 → 模糊測試(Fuzzing)→ 全形式驗證

結論

結論

智能合約審計的核心不是工具或技巧的堆疊,而是「深度理解系統後再以攻擊者視角破壞它」的思維紀律,加上持續成長的心態與不妥協的測試文化。

完整解析

詳細

本次活動是 DeFi 安全峰會的前置培訓,於史丹佛大學舉行,起源四年前的小型社群,如今邀請到三位業界領導者:Jocelyn、Alex、Rajiv。活動錄像,演講者被要求重複觀眾問題以確保音質。整場分享以「101 條建議」為骨幹,三人依序各自講述親身淬煉出的審計心法。

Jocelyn 首先強調學習方法的紀律。她觀察到初學者普遍犯兩個錯誤:一是試圖同時學習所有知識,二是閱讀大量報告卻只是瀏覽而未建立思維模型。她建議應對報告分類——表面漏洞、常見漏洞、新型攻擊——並將更多時間投入新型問題的深度理解。在審計技巧上,她提出「理解模式」與「批判模式」的切換:前者問「這段程式碼做什麼」,後者問「如何破壞它」,並以「如果……會怎樣」作為觸發批判思維的提示詞。她也強調軟技能的重要性:書面報告的清晰度直接影響漏洞是否被重視,而對客戶需求的敏銳感知(例如兩天後上線的團隊只需關鍵風險,而非長期建議)則決定審計的實際價值。

Alex 則從認知策略切入。他提出「蝙蝠思維」——對程式碼建立信心地圖,知道哪些部分已充分理解、哪些仍存疑,從而有效分配注意力,而非試圖覆蓋所有可能性。他特別指出,市場上大多數人會在同一批競賽中扎堆,真正的機會往往在人跡罕至之處。他也主張先深入理解系統再嘗試破壞,並將工具(如快速撰寫 Python 腳本畫出函數行為圖)定位為「思考的延伸」而非替代品。關於 AI,他的立場是:AI 適合在審計思路耗盡後作為腦力激盪工具,而非一開始的主力,因為它產出的結果缺乏可操作性。他以 Rari Capital 事件為例,說明「一個被充分理解的低嚴重性錯誤永遠優於未測試的修復方案」,並強調沒有測試的程式碼幾乎必然出問題——他從未見過例外。

Rajiv 從審計的本質與協作維度收尾。他將審計簡化為三個核心:資產(Assets)、行為者(Actors)、行動(Actions),並對應計算機科學中的存取控制矩陣。他強調審計員要學會「看見缺失的東西」——缺失的檢查、缺失的條件——而非只看到存在的程式碼。他對術語的嚴謹性提出批評:業界過度混用 Anomaly、Bug、Vulnerability,導致對風險的認知扭曲;真正的 Vulnerability 是直接造成資金損失的問題,不應與一般 Bug 混為一談。在協作方面,他指出責任分散(Diffusion of Responsibility)是多人審計的隱患,每個成員必須保有個人責任感。他也強調審計絕非萬能,即便是五次、十次審計過的協議仍可能被攻破,因此一致性與嚴謹性才是真正的護城河。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「Web3 安全」的內容

IF YOU OWN XRP YOU NEED TO SEE THIS PRICE MANIPULATION! ⚠️
8 min
Web3 安全英文8月14日

IF YOU OWN XRP YOU NEED TO SEE THIS PRICE MANIPULATION! ⚠️

Zach Humphries

  • 機構支撐的積極意義:價格操縱常被視為負面,但Ripple掌握大量XRP供應與escrow,在熊市期間提高價格下限,實際上替零售投資者鎖定了低風險的積累區間,這不是剝削而是市場穩定機制。
  • 歷史模式驗證:2024年7月至11月XRP在50美分附近橫盤整理,低點觸及42美分(wick),高點65美分;隨後11月5日至12月5日單月上漲456%,年底到2025年初累計漲幅534%,這個歷史周期正在1美元價位重演。
  • 比特幣聯動邏輯:講者在4-5月就預測「如果比特幣跌至60k以下,XRP會跌至1美元或更低」,此預測精準應驗,反映出熊市中兩者的明確連動關係。
Minimmit, Multimmit and the New Consensus Frontier with Patrick O'Grady
72 min
Web3 安全英文PODCAST8月5日

Minimmit, Multimmit and the New Consensus Frontier with Patrick O'Grady

Zero Knowledge

  • 反向 Linux 架構:Commonware 刻意暴露棧各層級控制,讓開發者自訂執行環境、共識機制、密碼學實現,而非像 Cosmos SDK 只允許應用層以上定制。2-3 個月能組裝一條定製鏈,代價是額外深度但回報是長期維護成本降低及效能優化彈性。
  • 容錯假設的典範轉移:Alpine Glow(Solana 2025)實現單輪投票定終的關鍵是將容錯預算分離為獨立的 Byzantine 和 Crash 容限。傳統系統把 33% 當一個整體預算;新模型允許 20% 惡意加 20% 崩潰,打破了 PBFT 理論界線,釋放單輪設計空間。
  • Minimet 與 Multimet 的遞進:Minimet 是 5F+1 設定下的乾淨構造,實現更短視圖延遲;Multimet(剛發布)進一步允許並行 mini-commits 且驗證者可推翻領導者審查,使用者交易在全球分布式網路達到 200-300 毫秒端到端定終。
Private Information Retrieval (PIR) with Alex Hoover
64 min
Web3 安全英文PODCAST7月29日

Private Information Retrieval (PIR) with Alex Hoover

Zero Knowledge

  • PIR 保護的是訪問模式,不是資料本身
  • PIR 與加密不同,它關注的是隱藏「客戶端查詢了什麼」,而非「資料是否加密」。在公開資料庫(如區塊鏈)上,客戶端可以在不洩露查詢對象給伺服器的情況下檢索特定條目,解決了輕量級客戶端的隱私和防審查問題。
  • 客戶端預處理方案是突破瓶頸的關鍵