KeyFrame內部研究專用

DeFi security Summit 2023 - Session 12: Vulnerabilities & Exploits - Matthias Egli

DeFi Security Summit - DSS·7月16日週日·23 min英文

三句話摘要

引入部署驗證文件標準,讓區塊鏈項目能證明智能合約部署的正確性,並幫助審計師、用戶和 DAO 投票者驗證部署狀態。 部署驗證文件將區塊鏈部署從「盡力而為」轉變為「可驗證的標準」,讓審計、用戶和集成者都能以低成本、高信心確認智能合約部署符合預期。 部署驗證解決的實際問題

重點整理

重點
  • 1

    部署驗證解決的實際問題

  • 2

    審計師傳統上只審計代碼,不涵蓋部署過程。但 Tornado Cash 治理接管(自毀合約)、YFI 前身錯誤配置、多簽實為單簽等現實事件證明,部署驗證是必要的自然延伸。

  • 3

    多方受益的解決方案

  • 4

    項目驗證部署是否正確執行;審計師記錄哪些部署狀態是安全的;用戶快速檢查代碼是否被審計;DAO投票者看清升級內容;集成者確保與正確版本互動,無需重複查證。

  • 5

    無信任的開放標準

  • 6

    DVF 檔案可任何人建立,中央註冊表可選,用戶自主決定信任來源。檔案可簽名(Ledger、私鑰),審計師等信任提供者簽署以委託信任,易於檢驗且透明。

  • 7

    完整的狀態追蹤

  • 8

    將十六進制存儲槽解碼為可讀格式(如 `0x246d…` 變為 `42 * 10^18`),記錄關鍵事件(升級、權限變更),追蹤狀態變化防止升級後恢復到舊實現的隱藏攻擊。

實用技巧與重點

乾貨
  • 現實案例損害:Tornado Cash 自毀合約、YFI 錯誤 USD 代幣、多簽非多簽等
  • 文件核心內容:合約地址、字節碼哈希(bytecode verification)、關鍵儲存槽、重要事件、代理實現位置
  • 支援工具:Foundry 項目完全支持、Etherscan 集成、命令行驗證工具
  • 簽名方案:Ledger、私鑰簽名、分散式獲取
  • 解碼機制:EVM 存儲槽映射到可讀變數名、平衡值自動格式化、未知槽位告警
  • 版本控制:合約升級時支援版本追蹤
  • 聯絡方式:GitHub `chain-security/deployment-validation`
  • 未來計劃:ERP 標準格式、Hardhat 支持、社群反饋驅動開發

結論

結論

部署驗證文件將區塊鏈部署從「盡力而為」轉變為「可驗證的標準」,讓審計、用戶和集成者都能以低成本、高信心確認智能合約部署符合預期。

完整解析

詳細

部署驗證問題源於區塊鏈系統的公開性和多步驟部署的複雜性。當一個項目完成代碼審計後,常常面臨部署過程中的多個風險:配置錯誤導致參數不符、代碼不匹配、升級過程中舊狀態干擾新實現。審計師傳統上只負責代碼層面的審查,部署驗證則超出範圍。但現實發生過多起重大事件證明這是關鍵漏洞:Tornado Cash 治理被劫持是因為升級中包含自毀合約,攻擊者利用 create2 重新部署;某些項目的「多簽」實際為單簽;YFI 前身因錯誤配置 USD 代幣而被利用。

為解決此問題,Chain Security 提出部署驗證文件(DVF)標準。這是一個簡單的配置文件,描述每個合約應該部署的期望狀態。文件記錄合約地址、部署的字節碼哈希、關鍵的存儲變數狀態(如 owner、proxy 指向的實現地址)、重要事件(如管理員變更、升級記錄)。系統的巧妙之處在於它將十六進制的存儲槽解碼為人類可讀的格式—例如將複雜的映射結構 `0x246d…` 翻譯成 `42 * 10^18` 這樣的易懂形式,使技術人員和非技術人員都能理解。

DVF 的使用流程是:項目部署合約後進行配置,任何人(通常是審計師或安全審查者)基於部署完成後的快照建立 DVF 文件。用戶可在任何時間驗證該文件是否仍然有效—檢查部署是否未變、存儲槽是否如預期。系統支援無信任的分散式模型:檔案可由任何人建立,用戶自主決定信任來源(審計師、安全提供者等),檔案可用 Ledger 或私鑰簽名以增強可信度。基於 Foundry 框架,系統已支援完整驗證流程、動態生成新文件、簽名功能和分散式分發。

此標準對不同角色的價值各異。項目使用它驗證部署步驟是否正確執行、參數是否如預期;審計師用它文檔化哪些部署狀態是安全的,形成信任模型記錄;普通用戶可輕鬆檢查整合的合約是否被審計、部署是否安全、配置是否未變;DAO 投票者在簽署升級提案前可清楚看到實際變更內容;集成者可確保與正確版本互動而非重複查證。未來計劃包括 ERP 標準規範、Hardhat 支持等,並開放社群反饋以完善設計。

關鍵時刻

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