
萬億美元安全項目
安全挑戰概述
以太坊是最安全、最具韌性且最值得信賴的區塊鏈生態系統。過去10年間,以太坊生態系統已發展出支撐當今數百萬用戶的技術、標準與知識體系,更匯聚了超過600百萬美元的資本。
但以太坊若要在全球普及的下一階段取得成功,仍有許多必須改進之處。為實現社群的宏圖壯志,以太坊必須發展成一個具備以下特質的生態系統:
- 數十億個體各自在區塊鏈上持有超過一千美元的資產,總計在以太坊上鎖定的資產規模達數兆美元。
- 企業、機構與政府機構樂於將超過1兆美元的價值存放於單一合約或應用程式中,並樂於進行同等規模的交易。
萬億美元安全計劃(1TS)opens in a new tab是一項旨在全面提升以太坊安全性的生態系統級行動。本報告為1TS計劃的首份成果文件。過去一個月間,我們廣泛徵集了用戶、開發者、安全專家及機構對當前最大挑戰與改進方向的意見回饋。衷心感謝數百位個人與數十個組織撥冗分享寶貴見解。
這項報告總結了我們的發現,包括6個不同的領域:
- 用戶體驗(UX)
影響使用者安全管理私鑰、與鏈上應用程式互動及簽署交易的能力之問題。
- 智慧型合約安全
以太坊應用程式中智能合約元件的安全性,以及塑造這些元件的軟體生產生命週期。
- 基礎設施與雲端安全
以太坊應用程式所依賴的基礎設施(包含加密貨幣專屬與傳統系統)所面臨的問題,例如第二層鏈、遠端程序呼叫(RPC)、雲端託管服務等。
- 共識協議
核心協議的安全特性,其能保護以太坊區塊鏈本身免受攻擊或操縱。
- 監控、事件應變與緩解措施
使用者與組織在應對安全漏洞、特別是在追回資金或處理後續影響方面時面臨的挑戰。
- 社會層面與治理
以太坊的開源治理、社群及組織生態系統。
本首份報告著重於識別並梳理現存的問題與挑戰。下一步將聚焦於篩選最高優先級議題,擬定解決方案,並與生態系統各方協力應對。
鑒於以太坊生態系統具有去中心化特性,保障以太坊安全並非單一實體所能獨力完成。從錢包到基礎設施再到開發者工具,以太坊的技術架構皆由全球各地的獨立組織共同建構與維護。儘管TS專案由以太坊基金會統籌協調,我們仍需要您的協助來守護以太坊的安全。
您可透過分享反饋意見與觀點,為 TS 安全項目做出貢獻:
- 有任何您所知道的以太坊安全問題沒有在這份報告中出現嗎?
- 您認為以下調查事項中,哪些應列為最高優先級?
- 對於如何解決這些問題,你有什麼想法或解決方案?
我們期待收到您的來信: trilliondollarsecurity@ethereum.org。
1. 用戶體驗(UX)
安全性始於人們用來與以太坊互動的介面。用戶與區塊鏈本身之間的這道邊界,始終是安全挑戰的源頭。
區塊鏈的一項核心特徵在於其交易的原子性:一旦更新被記錄至區塊鏈中,便不存在任何干預或撤銷的可能性。這雖能提供強有力的一致性保證與協議層級的安全性,卻也使使用者面臨更高的操作風險——單一失誤、密鑰遭竊或倉促批准,皆可能導致無法挽回的損失。
因此,使用者必須承擔重大的安全責任。要安全地使用以太坊,個人與組織必須妥善保管和管理密鑰,與鏈上應用程式互動,並使用密鑰簽署交易以轉移資產或更新以太坊的狀態。
這些要求各自引入了諸如密鑰遭竊或遺失、倉促或缺乏資訊的核准程序,以及使用者賴以獲取資訊並引導其與以太坊互動的錢包軟體遭入侵等風險。
1.1私鑰管理
許多使用者沒有準備好安全地管理加密貨幣密鑰。
最廣泛使用的軟體錢包依靠使用者安全儲存代表其底層加密私鑰的種子助記詞,這往往導致使用者採取不安全的權宜之計,例如將種子短語助記詞以明文形式儲存、存放於雲端服務,或直接書寫於紙張上。
硬體錢包是一種替代方案,讓使用者能透過專用實體裝置管理加密貨幣密鑰。然而硬體錢包本身存在缺陷與攻擊面:裝置可能遺失、損毀或遭竊。許多硬體錢包並非開源產品,其供應鏈可能缺乏透明度,這將提高供應鏈攻擊的風險——即遭入侵的裝置被流入市場銷售。
無論密鑰是透過軟體錢包或硬體錢包管理,許多使用者對於自主保管仍感到不安,這份擔憂不難理解——畢竟金鑰可能因實體竊盜或暴力襲擊而遭竊取。
企業與機構使用者在金鑰管理方面面臨額外挑戰。若由個別員工持有金鑰(例如作為多簽錢包的一部分),組織必須能因應人員變動而替換金鑰並創建新金鑰。不同產業與司法管轄區的合規要求,可能需要現有錢包軟體未支援的客製化工作流程或稽核軌跡。某些情況下,企業使用者會轉向第三方託管機構管理數位資產,此舉可能引入另一層需考量的安全風險。
1.2 盲簽與交易不確定性
使用者經常「盲目」批准交易,卻不理解自己正在做什麼。錢包常顯示原始十六進位數據、截斷的合約地址或其他不足以讓用戶理解特定交易後果的資訊。這使得各類用戶都容易受到惡意智能合約、釣魚攻擊、詐騙、偽造介面、前端漏洞以及基本操作失誤的威脅。
1.3 核准與授權管理
在許多以太坊應用程式中,使用者授予底層應用程式特定權限是正常使用流程的一部分。例如,使用者可能授予去中心化交易所,如Uniswap,移動其代幣的權限,以便將代幣兌換為ETH。
這些授權可能設有金額限制,但多數錢包預設會授予無上限且無到期日的授權。使用者無法透過大多數錢包管理或檢視其未結清的授權項目。
這可能使用戶暴露於惡意應用程式或遭入侵的前端介面,因為多數用戶的預設模式是授予無限批准權限,此類權限可被用於清空其資金。即使用戶授予合法智能合約批准權限,若該合約在批准權限持續有效期間遭入侵,則遭入侵的合約仍可能清空用戶資金。
這對組織用戶而言同樣構成風險。舉例而言,某組織可能基於運作便利性,選擇授予去中心化交易所路由器無限額的USDC許可權限,一旦該路由器合約進行升級,組織便會因此暴露於風險之中。
1.4 遭入侵的網頁介面
大多數使用者並非直接與智能合約互動,而是透過移動設備或網頁瀏覽器上的網頁介面。
這些前端程式可能透過常見手段遭受攻擊,例如DNS劫持、惡意JavaScript注入、不安全的託管環境,或各種第三方依賴項。遭入侵的應用程式使用者體驗可能將各類用戶重定向至惡意智能合約,或誘導他們簽署誤導性交易。
1.5 隱私
隱私可能減輕或加劇各類使用者的安全風險。
較弱的隱私保護措施使個人用戶面臨多種針對性威脅,例如網路釣魚、漏洞利用、詐騙或實體攻擊。許多常見的使用者體驗模式會暴露用戶資訊,例如地址重複使用、KYC資料及其他元數據洩漏。
對於機構與企業而言,隱私往往是基於合規要求或特定應用場景的基本商業需求。除上述考量外,隱私保護亦可能引發特定安全風險。舉例而言,以太坊供應鏈系統的使用者可能需要強大的隱私保障機制,以保護智慧財產權資產——若系統運作透明化,這些資產恐面臨洩露風險。
1.6 碎片化
不同錢包在處理核心行為時缺乏一致性,例如顯示交易、處理授權或標記合約等功能。這種使用者體驗的碎片化,不僅阻礙使用者學習安全使用錢包的能力,更增加了操作風險。
舉例而言,使用者無法仰賴一致的使用者體驗提示來防範網路釣魚與偽造攻擊,因為不同錢包間的提示方式各異。若每項工具的運作方式皆不相同,使用者便無法對以太坊的運作機制建立可靠的預期。
2. 智慧型合約安全
智能合約是以太坊應用程式的鏈上組件:這套程式碼負責保管資金、定義存取控制,並執行應用程式的商業邏輯。由於智慧合約通常具備透明性且可供任何人查閱,在考量以太坊生態系的安全性時,它們便成為關鍵的攻擊面。
在以太坊的發展歷程中,智能合約的安全性已獲得根本性提升。早期如DAO遭駭等安全事件,促使生態系統專業化發展,並在軟體生命週期各階段強化防護措施,最終實現代碼鏈上部署。關鍵進展包括:
- 安全稽核已成為標準作業程序,多家安全公司相繼進入生態系統並發展專業技術。
- 工具、測試與靜態分析系統日趨成熟,並成為標準作業流程。
- 預先審核過的通用元件庫,為開發人員提供了預設安全的組件基礎。
- 正式採用了形式驗證技術,特別針對區塊鏈橋接方案、質押系統及高價值合約。
- 生態系統的安全文化與最佳實踐獲得提升。
- 建立重大懸賞計畫,強化應用程式層的安全防護。
然而,此領域仍存在弱點與待改進之處。
2.1 合約漏洞
儘管在智能合約安全方面已取得進展,仍存在可能導致重大安全問題的漏洞,包括:
- 合約升級風險. 某些合約在設計時允許部署後進行修改,以便開發團隊能持續更新與改進應用程式。然而此舉存在風險:升級可能導致新漏洞產生,若遭遇惡意升級,甚至可能造成用戶資金全數損失。
- 重新進入, 當合約 A 在更新自身內部狀態前呼叫外部合約 B,而合約 B 在首次呼叫結束前便回呼至原始合約 A。
- 外部函式庫的不安全使用, 當合約調用外部函式庫時,該函式庫可能未經稽核、含有惡意程式碼或可被升級。
- 未經稽核的元件. 儘管標準函式庫的審計與使用已有所改善,開發人員有時仍會在應用程式中依賴未經稽核的元件。
- 存取控制失敗, 當權限設定錯誤或定義過於寬鬆時,將使攻擊者得以執行惡意行為。
- 未經授權的存取, 當惡意行為者取得能夠控制合約的私鑰時。
- 橋接與跨鏈交互. 橋接協議與跨鏈協議引入了額外的複雜性,攻擊者可利用跨鏈訊息傳遞或驗證過程中的弱點進行攻擊。
- 外部持有帳戶(EOA)的授權或簽署濫用. 惡意應用程式可能誘騙使用者將帳戶的完整授權轉移給第三方,從而造成盜用風險。此類應用程式亦可能以未被預期方式利用使用者簽署的訊息,例如發動重播攻擊。
- 人工智能程式碼生成或自動重構工具引入的新興程式漏洞風險.
2.2 開發者經驗,模組化與編程語言
漏洞最終會因開發人員的錯誤而存在於部署的程式碼中。改良的開發模組顯著降低了部署安全智能合約的難度,但問題依然存在。
- 熱門框架缺乏安全的預設值. 某些工具優先考量靈活性或速度而犧牲安全性,例如在 approve() 函式中設定不安全的預設值(如無限次代幣授權),或預設未包含存取控制模式。
- 進階操作控制的自訂程式碼. 具有複雜運作需求的機構用戶,往往必須從頭開始建構所需功能,這增加了漏洞風險。目前缺乏適用於進階安全工作流程的標準化安全元件或框架。
- 測試覆蓋率不一致 橫跨工具堆疊的問題,以及缺乏採用模糊測試或不變量檢查等成熟技術的規範。
- 形式化驗證方法的低採用率. 形式驗證技術雖強大,但其複雜性高、成本昂貴、需具備專業領域知識,且未能與標準開發人員工作流程充分整合。若能更早導入軟體開發流程,便可在規格階段驗證安全性。
- 合約驗證相關議題. 使用者與開發者難以評估已部署合約的可信度、其安全性驗證的程度(例如程式碼稽核),或潛在風險的存在。儘管現有解決方案可處理此類問題,諸多挑戰仍未解決。針對這些問題的工具尚未廣泛採用,統一方法的標準仍處於分散狀態,且部分現有服務本身即為中心化依賴項。
- 編譯器風險. 編譯器(將人類可讀程式碼如Solidity轉換為EVM自身使用的位元組碼的軟體)可能存在缺陷,導致智能合約在部署前就引入錯誤。當今以太坊生態系統主要依賴solc編譯器,這意味著單一漏洞便可能引發廣泛影響。
- 編程語言多樣性與深度. 儘管 Solidity 擁有深厚的工具生態系統,部分開發者仍期望獲得其他程式語言具備的現代化安全特性,例如記憶體安全性。
2.3 風險評估與鏈上編程
機構與企業現有流程、標準及規範,皆用於評估其依賴之技術與系統的安全性。然而,現有框架往往無法完美映射至智能合約,通常假設程式碼可變更、變更控制集中化,且具備明確的責任歸屬或法律責任界線。基於智慧合約建構的系統有時會打破這些預設,導致組織難以採用以太坊並妥善管理風險。
3. 基礎設施與雲端安全
以太坊的許多應用依賴於多種基礎設施供應商,包括加密貨幣專屬基礎設施(例如第2層鏈、RPC供應商)以及傳統雲端與網路基礎設施(例如AWS、CDN、DNS)。
這些系統既是錢包與應用層(例如錢包的RPC端點)的攻擊面,也是以太坊協議本身的攻擊面(例如許多驗證程式部署於雲端基礎設施)。即使底層區塊鏈協議保持安全,私鑰遭竊、釣魚攻擊及缺乏細粒度存取控制仍可能導致大規模中斷、盜竊或未經授權的變更。
3.1 第2層鏈
第二層鏈(L2s)作為以太坊的擴展方案,在保留以太坊主網部分特徵性安全保障的前提下(具體取決於其設計),能提供更快速且手續費更低的運作環境。然而,它們也存在自身獨特的攻擊面,包括:
- 多跳橋接資產複雜度. 當資產在 L1與多個L2s之間流動時,它們會暴露於多組合約中,而所有合約都必須具備安全性。第二層鏈中的帳務不匹配或中斷狀況,可能引入可被攻擊者利用的漏洞。
- 捲積型第二層解決方案依賴證明系統來確保狀態升級的正確性. 這些系統中的錯誤或設定失誤可能導致最終化程序停滯或無法完成,亦可能允許虛假狀態升級的最終化程序執行,進而導致用戶資金損失。
- 安全委員會是由持密鑰者組成的團體,作為升級L2軟體或應對特定緊急狀況的「備援」機制. 安全理事會本身就存在風險,因為成員之間的妥協或串通可能危及用戶資金或凍結資產。
請參閱 L2Beatopens in a new tab 以獲取詳細的架構與監控控制面板,該工具可評估並比較L2的表現與安全性。
3.2 RPC 與節點基礎架構
以太坊應用程式仰賴少數基礎設施供應商提供RPC存取、應用程式介面(APIs)及節點服務。這類供應商包含加密貨幣專用基礎設施供應商,以及常用於託管節點的傳統雲端服務 (例如 AWS、Cloudflare、Hetzner)。
如果這些基礎設施供應商離線或試圖審查、限制存取,許多用戶可能無法透過錢包或應用程式存取以太坊,直至遷移至新的RPC或其他基礎設施供應商為止。部分供應商曾暫停或關閉與區塊鏈活動相關的帳戶,引發業界對其作為去中心化應用長期可靠性的擔憂。
3.3 DNS層級漏洞
網域名稱系統 (DNS)是網際網路的基礎層,但它具有集中化特性且可能遭到入侵。許多使用者透過網頁網域存取應用程式,而這些網域容易受到以下威脅:
- DNS劫持,即攻擊者插入惡意虛假前端的情況。
- 域名扣押,即政府或註冊商可扣押域名的行為。
- 透過相似域名進行的網路釣魚攻擊,攻擊者會註冊近乎相同的域名名稱以混淆用戶。
3.4 軟體供應鏈與函式庫
以太坊開發者仰賴開源函式庫,這些函式庫通常直接取自npm、crates.io或GitHub等服務。若這些函式庫遭到入侵,便可能成為攻擊的媒介,例如:
- 惡意程式包注入, 攻擊者篡改廣為使用的程式包,或以相似名稱發布程式包
- 遭劫持的依賴項, 維護者失去對項目的控制權,而惡意行為者植入有害程式碼
- 開發者妥協方案, 其中安裝的程式包含有可讓攻擊者控制開發者電腦的程式碼。
3.5 前端遞送服務及相關風險
許多以太坊應用程式透過內容傳遞網路(CDN)或雲端託管平台(例如 Vercel、Netlify、Cloudflare)提供其前端服務。若這些服務遭到入侵,便可能成為惡意攻擊的管道,例如惡意 JavaScript 注入攻擊——攻擊者將篡改過的前端內容提供給使用者。
3.6 網路服務提供商層級審查
網路服務供應商(ISP)或國家實體可透過掌控基礎網路設施來審查以太坊的存取權限。例如,此類攻擊可能包含:
- 封鎖或限制前往常見以太坊端口的流量
- 過濾解析至以太坊相關服務的DNS請求
- 針對已知以太坊節點實施地理圍欄或IP封鎖
- 深度封包檢測以識別並審查與以太坊協議相關的流量
當今全球許多威權政府已運用這些基礎技術,用以壓制民眾獲取資訊、抗議工具或加密貨幣的管道。
4. 共識協議
以太坊的共識協議定義了網路如何更新以太坊區塊鏈的狀態並達成共識。此協議奠定了以太坊作為可信賴平台的基礎,使其能承載貨幣、金融、身份認證、治理、現實世界資產等多元應用。
以太坊的共識協議在實踐中展現出強大的韌性,自2015 年首次上線以來歷經多次升級,系統運行時間零中斷。然而,為提升系統的抗風險能力與安全性,仍存在若干需長期改進的領域。
4.1 共識脆弱性與復原風險
以太坊的分叉選擇與最終性規則具備韌性,但並非無懈可擊。在特定邊緣情境下(例如驗證程式長期意見分歧、客戶端程式錯誤或網路分區),共識機制可能陷入停滯或暫時分歧。極端情況下,這可能導致因閒置洩漏或削減機制引發驗證程式懲罰的連鎖反應,進而加劇資本從驗證程式中外流。
4.2 客戶端多元性
以太坊業界領先的客戶端多樣性,能保護網路免受任何單一客戶端漏洞的影響。然而,若能進一步推廣採用少數派客戶端,將可更有效降低此類風險,從而提升客戶端多樣性的防護效能。
4.3 質押中心化與池主導
大量驗證程式權重集中於流動質押協議、託管服務及大型節點營運商。此種集中現象可能導致以下風險:
- 治理攫取或影響力。若掌控大量權益的實體(或具備法律權力影響這些實體的機構)相互協調,便可能對區塊提案與認證過程產生超乎比例的影響力,進而可能審查用戶行為或左右協議升級方向。
- 客戶選擇與基礎架構配置的同質性,可能增加相關故障風險。
4.4 未定義的社會懲罰與協調缺口
在某些極端故障模式下,以太坊將依賴「社會性懲罰」機制來懲罰惡意攻擊網路的驗證程式(參見第6.1節)。然而,此類懲罰所需的基礎設施、規範及預期流程尚未完善。目前社群尚無既定機制可執行此類懲戒程序。
4.5 經濟與博弈理論的攻擊途徑
許多潛在的經濟攻擊途徑仍未被充分研究,包括:
- 惡意攻擊還是懲罰惡意。驗證程式可能並非因自身過失而承擔成本或遭受懲罰,而是純粹源於攻擊者意圖傷害他人的敵對行為,此舉將使攻擊者蒙受淨損失。
- 策略性退出或定時閒置。驗證者可能在關鍵時刻故意離線或退出,藉此在承受最低懲罰的前提下,最大化利潤或擾亂共識機制。
- 驗證程式或中繼節點之間的串通行為。驗證程式之間,或中繼節點與驗證程式之間的協調行為,可能削弱去中心化程度,或藉此榨取MEV利潤。
- 在MEV、提案者與建設者分離機制或流動性質押設計中,利用邊際案例激勵機制。行為者可能操縱罕見的協議條件以獲取超額報酬。
4.6 量子風險
以太坊的核心加密技術(例如 secp256k1 等橢圓曲線簽名)有朝一日可能會被量子電腦破解。雖然這不是迫在眉睫的風險,但一個可信的威脅可能會立即讓現有的錢包、合約和質押金鑰陷入脆弱境地。這項未來的挑戰削弱了以太坊對使用者的長期保障。
通往抗量子加密技術的遷移路徑(例如透過後量子簽名方案)需要在實際需求出現前數年便完成設計、測試,並可能嵌入協議之中。以太坊生態系統中的各組織,包括以太坊基金會,正積極探索這些選項並監控相關風險。
5. 監控、事件應變與緩解措施
即使是理想化的區塊鏈生態系統,仍存在風險、攻擊與漏洞。當問題發生時,必須具備有效的系統來減輕影響、偵測異常並採取應對措施。相關挑戰包括:
- 聯繫受影響的團隊. 要聯繫應用程式遭入侵的團隊可能相當困難,這可能導致數小時的延誤,進而限制應變人員追回資金的能力。
- 相關組織中日益惡化的問題. 當問題涉及平台(例如社交網絡或中心化交易所)時,若回應者缺乏預先建立的聯繫管道,便可能面臨難以將問題升級處理的困境。
- 應對協調. 通常難以釐清究竟有多少事件應變團隊正在協助受影響的應用程式,這導致溝通失誤或徒勞無功的情況發生——而團體協作本可更有效率地解決問題。
- 監測能力不足. 監控鏈上與鏈下問題可能相當困難,這能提供早期預警,並確保對威脅作出迅速反應。
- 取得保險. 保險是大多數傳統系統中減輕損失的關鍵工具,這些系統涉及金錢、金融體系、身份識別及其他重要資訊。然而,當今傳統金融服務為加密生態系提供的保險選項寥寥無幾。

6. 社會層面與治理
以太坊的「社會層」指的是影響以太坊生態系統運作方式的一系列人、組織、企業、治理流程及文化規範。此社會層本身易受特定攻擊或風險影響,進而可能危及以太坊的安全性與可靠性。
這些風險往往更具長期性,且關乎以太坊整體體系,而非個別用戶或應用程式的安全性。
6.1 質押中心化
若控制大量質押資產的實體決定合謀,這種質押資產的集中化現象將對以太坊整體構成風險。
此種經濟中心化狀態可能催生社會治理遭操控的潛在風險。倘若少數驗證程式控制了絕大多數質押,他們便能:
倘若此極端情境發生,以太坊社群提出「社會性懲罰」可能是解決之道。所謂社會性懲罰,即透過鏈下社會共識決定削減違規驗證程式的權力,藉此制衡其影響力。然而目前尚無明確規範、程序或工具來實施此類措施(詳見第4.4節)。
6.2 鏈下資產中心化
以太坊承載著大量現實世界資產,這些資產實際存放於銀行帳戶或其他離鏈存款中,再透過代表離鏈資產權益的代幣在鏈上進行交易。例如,許多大型穩定幣正是以此方式運作。
持有鏈下存款的機構可能對以太坊生態系統產生影響。例如在極端情境下——當發生爭議性分叉或網路升級時——大型存款者僅需選擇承認其中一條鏈上的代幣,便能左右哪條鏈獲得廣泛認可。
6.3 監管攻擊或壓力
政府與監管機構可能施壓於掌控以太坊技術堆疊關鍵組件的各類實體,要求其審查或干預以太坊協議運作。以太坊的機構使用者亦可能受此壓力波及,進而對其使用者產生連鎖影響(例如銀行因監管禁令而無法繼續提供特定加密貨幣產品)。
6.4 管理體系的組織俘獲
以太坊的開源治理與開發流程,由一群多元且遍佈全球的團隊與企業所推動,這些團隊與企業負責維護核心客戶端軟體、基礎設施及相關工具。
各種形式的影響力(企業併購、資金依賴、關鍵貢獻者的僱用、現有組織內的利益衝突)可能逐步改變以太坊治理的文化與優先事項。這可能導致治理方向與特定商業或外部利益趨於一致,進而偏離社群主導的精神與既定開發藍圖,長期而言恐削弱以太坊的中立性與韌性。