DeFi security Summit 2023 - Session 17: Focused Talks 3 - Marc Weiss
三句話摘要
DeFi協議開發全週期中,審計員與安全研究員的核心角色及其對防止駭客攻擊的關鍵價值。 將審計員與安全研究員融入DeFi協議的全生命週期——從架構設計、部署腳本到事件應急——比事後應對駭客攻擊更經濟、更有效,是降低DeFi系統性風險的核心策略。 審計員具備跨百數個程式碼庫的經驗,能在設計階段就指導最佳架構選擇(如利率模型、代理模式、升級方案),避免後期修復成本高昂。
重點整理
重點- 1
審計員具備跨百數個程式碼庫的經驗,能在設計階段就指導最佳架構選擇(如利率模型、代理模式、升級方案),避免後期修復成本高昂。
- 2
DeFi駭客的六大根本原因中,部署腳本問題最常被忽視——缺少初始化調用(如set_operator)會導致權限控制失效,任何人都能竊取合約資金。
- 3
審計員在事件應對中具有獨特價值:經驗豐富的研究員曾參與多次「戰爭室」應急,熟悉快速構建概念驗證、分析漏洞報告品質,能加速問題定位與修復。
- 4
雇用兩名審計員的成本通常遠低於支付單一嚴重漏洞的賠償(可能達50萬美元級),這是一項高ROI的安全投資。
實用技巧與重點
乾貨- 開發階段決策:
- 動態利率 vs 固定利率模型選擇
- 可升級 vs 非可升級合約架構
- 代理模式(Proxy/UPS)vs 基於註冊表的架構
- 審計條件前置:
- 測試覆蓋率達100%
- 已使用 fuzzing 或 Echidna 工具
- 內部已做安全審查
- 六大駭客根本原因:
- 知識缺乏(如re-entrance、overflow、EIP-150、EIP-2929理解不足)
- 外部向量(如私鑰洩露)
- 合約維護(升級邏輯、狀態變數部署)
- 架構錯誤(外部合約調用、預言機fallback、利率模型設計)
- 邏輯錯誤(狀態不一致、不變量破裂、DoS陷阱)
- 部署腳本(權限初始化遺漏、Constructor缺陷)
- 審計員的優勢:
- 戰爭室應急經驗(週期性發生)
- 漏洞報告分解與概念驗證構建(週頻率)
- 低品質報告識別與修復指導
- 安全設計思維融入協議架構
結論
結論“將審計員與安全研究員融入DeFi協議的全生命週期——從架構設計、部署腳本到事件應急——比事後應對駭客攻擊更經濟、更有效,是降低DeFi系統性風險的核心策略。”
完整解析
詳細DeFi協議的安全性需要在多個週期內持續投入。講者Mark Weiss從自身經驗出發,指出審計員和安全研究員應當貫穿協議的完整生命週期,而非只在上線前才介入。
開發階段是防禦的第一道防線。經驗豐富的審計員已審視數百個程式碼庫,對不同協議類型的最佳實踐瞭若指掌。例如在借貸協議設計時,需要決定採用動態或固定利率模型、選擇可升級還是不可升級的合約架構、確定是否使用代理模式(如UUPS)或基於註冊表的設計。這些架構選擇直接影響後續的維護成本與安全邊界,早期介入審計員能避免之後的大規模重構。
DeFi駭客事件的根本原因可歸納為六大類。首先是知識缺乏——開發者對re-entrance、整數溢出或EIP標準(如EIP-150的gas轉發機制、EIP-2929的gas成本計算規則)理解不深。其次是外部向量威脅,如私鑰洩露。第三是合約維護不當,升級邏輯或狀態變數部署出錯。第四類是架構層面的錯誤,涉及外部合約調用、預言機fallback設計或利率模型選擇。第五類是邏輯錯誤,如狀態不一致或無法恢復的DoS狀態。最後,也最容易被忽視的,是部署腳本的問題。
部署腳本的典型漏洞是權限初始化缺失。講者舉例:某合約有owner和operator兩級權限,withdraw_funds()函式應只允許operator調用。若部署腳本遺漏了set_operator調用(因為它不在Constructor中),那麼operator地址將保持為零。當程式碼執行ecrecover驗簽時,非法簽名會返回零地址,從而通過權限檢查,導致任何人都能竊取全部資金。這類隱患在主網上線後往往造成毀滅性損失。
審計員的價值還體現在協議上線後的運維階段。當協議遭遇漏洞時,團隊通常進入高壓的「戰爭室」狀態。經驗豐富的審計員已參與多次類似應急,能迅速構建概念驗證、評估漏洞報告品質、指導修復方向。此外,漏洞賞金報告質量參差不齊,審計員能識別低品質報告並協助開發團隊快速判斷。這些能力在時間緊迫、利益相關的危機中尤為珍貴。
從經濟角度看,雇用兩名審計員的成本遠低於應對一次嚴重漏洞的賠償(後者可能達到50萬美元級別)。更重要的是,安全研究員能將安全思維融入設計階段,幫助協議從根本上降低被攻擊的可能性,而非只在發現問題後被動修補。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

