在區塊鏈產業中,人們習慣將焦點放在智能合約漏洞與鏈上攻擊,但一種更隱蔽、更難以防範的威脅正在 Web3 世界中蔓延——供應鏈攻擊(Supply Chain Attack)。2026 年 6 月,去中心化預測市場領導者 Polymarket 遭遇了一次精心策劃的前端攻擊,攻擊者透過注入惡意腳本至其前端依賴套件中,成功竊取約 290 萬美元的用戶資金。這起事件再次敲響了警鐘:即便底層智能合約固若金湯,應用層的脆弱性依然可能成為整個協議的阿基里斯之踵。Polymarket 已確認控制住漏洞、移除受影響的依賴套件,並承諾對受害用戶進行全額退款,但這起事件所揭露的結構性風險,值得整個產業深思。
攻擊手法解析:前端依賴套件的惡意注入
此次攻擊的核心並非針對 Polymarket 的 Solidity 智能合約或鏈上邏輯,而是瞄準了其 前端應用程式的第三方依賴套件。現代 Web3 應用程式的前端通常建構於 JavaScript / TypeScript 生態系之上,大量使用來自 npm 等套件管理器的開源函式庫。攻擊者的策略如下:
- 入侵第三方供應商(Vendor):攻擊者首先取得了 Polymarket 所使用的某個外部依賴套件的控制權,可能透過竊取維護者的帳號憑證、或利用套件發布流程中的漏洞。
- 注入惡意腳本:在取得控制權後,攻擊者將惡意
JavaScript腳本植入該依賴套件的更新版本中。 - 前端感染與資金竊取:當 Polymarket 的前端自動拉取或更新了受感染的依賴套件後,惡意腳本便隨之部署到用戶所瀏覽的頁面上。該腳本可能透過攔截用戶的交易簽名請求、替換交易目標地址,或**誘導用戶授予惡意合約無限額度的代幣授權(
approve)**等方式,將資金轉移至攻擊者控制的錢包。
關鍵警示:這類攻擊最令人擔憂之處在於,用戶與一個「看起來完全正常」的官方網站互動,智能合約本身也未被篡改,但資金仍然在用戶「合法簽名」的情況下被竊取。傳統的合約審計(Audit)對此類攻擊幾乎無能為力。
事件時間軸與平台回應
| 階段 | 事件描述 |
|---|---|
| 攻擊發生 | 攻擊者透過受感染的依賴套件,在 Polymarket 前端注入惡意腳本 |
| 損失規模 | 約 290 萬美元的用戶資金遭竊 |
| 漏洞控制 | Polymarket 團隊偵測到異常後,迅速控制住入侵範圍 |
| 依賴移除 | 受影響的第三方依賴套件已被識別並從程式碼庫中移除 |
| 退款承諾 | Polymarket 宣布將對所有受影響的用戶進行全額退款 |
Polymarket 的回應速度與退款承諾值得肯定,但這也引發了一個有趣的悖論:一個標榜 去中心化 的預測市場,其安全事件的善後處理方式卻高度依賴中心化團隊的決策與資金調度。這凸顯了當前多數 DeFi 應用在「去中心化程度光譜」上的真實位置——鏈上邏輯或許是去中心化的,但前端、基礎設施與營運管理仍深度仰賴中心化實體。
供應鏈攻擊:Web3 生態的系統性風險
這並非 Web3 領域首次遭遇供應鏈攻擊。近年來,類似的事件層出不窮:
- Ledger Connect Kit 事件:硬體錢包巨頭 Ledger 的前端連接函式庫曾遭入侵,影響了所有整合該函式庫的
DeFi應用。 - 惡意 npm 套件:多次被發現有攻擊者發布名稱與知名套件極為相似的惡意套件(Typosquatting),誘騙開發者安裝。
- CDN 劫持:透過入侵內容分發網路(CDN)來篡改前端資源。
這些事件共同揭示了一個結構性問題:Web3 應用的安全性不僅取決於智能合約的品質,更取決於其整個技術堆疊(Tech Stack)中最薄弱的環節。而前端依賴的開源生態系,往往就是那個最薄弱的環節。
供應鏈攻擊的防禦難度極高,原因包括:
- 依賴樹的複雜性:一個現代前端專案可能直接或間接依賴數百甚至數千個套件,全面審查幾乎不可能。
- 信任傳遞的脆弱性:開發者信任知名套件,但該套件可能依賴另一個由個人維護的小型套件,而那個維護者的帳號安全可能非常薄弱。
- 自動化更新的風險:許多專案設定了依賴套件的自動更新,使得惡意版本可以在無人審查的情況下被部署。
市場效應與生態衝擊
Polymarket 作為目前最具影響力的 Web3 預測市場平台,在政治事件預測、體育賽事與宏觀經濟走向等領域擁有龐大的用戶基礎與交易量。此次事件對其生態的影響是多面向的:
- 用戶信任動搖:即便承諾全額退款,用戶對平台前端安全性的信心已受損。對於一個需要用戶頻繁與前端互動、進行交易簽名的平台而言,信任是最核心的資產。
- 競爭對手的機會:其他預測市場協議(如基於
Gnosis或其他框架的競品)可能藉此機會強調自身的安全架構差異化。 - 監管壓力加劇:此類事件為監管機構提供了更多介入的理由,特別是在用戶保護與平台責任的議題上。預測市場本身已處於監管灰色地帶,安全事件只會使其處境更加艱難。
- 產業安全標準的推動:正面來看,每一次重大安全事件都可能推動產業建立更完善的安全標準與最佳實踐,例如前端程式碼的
Subresource Integrity (SRI)驗證、依賴套件的鎖定版本策略(lockfile)、以及更嚴格的 CI/CD 安全審查流程。
專業點評:前端安全不應是 Web3 的盲區
從技術角度來看,Polymarket 此次事件的根本原因並非 Web3 特有的問題——傳統 Web2 應用同樣面臨供應鏈攻擊的威脅。然而,Web3 應用的特殊性在於,一次成功的前端攻擊可以直接導致不可逆的鏈上資金損失,這使得其後果遠比傳統應用的數據洩露更為嚴重。
未來,Web3 專案在安全投資上需要重新分配資源。過去,絕大多數安全預算都投入在智能合約審計上,但前端安全、基礎設施安全與供應鏈安全同樣需要獲得對等的重視。具體而言,以下措施應成為行業標準:
- 依賴套件的嚴格版本鎖定:避免使用語意化版本範圍(如
^或~),改為精確鎖定版本號。 - 定期的依賴審計:使用
npm audit、Snyk等工具定期掃描已知漏洞。 - 前端程式碼的完整性驗證:部署
SRI標籤,確保瀏覽器載入的資源未被篡改。 - 多重簽名與交易模擬:在用戶端引入交易模擬預覽功能,讓用戶在簽名前能清楚看到交易的實際效果。
- 去中心化前端的探索:透過
IPFS、Arweave等去中心化儲存方案部署前端,降低單點故障風險。
290 萬美元的損失對 Polymarket 而言或許是可承受的財務打擊,但對整個
Web3產業而言,這是又一次代價高昂的提醒:去中心化的願景,不能建構在中心化的脆弱前端之上。
Polymarket 承諾退款的決定展現了負責任的態度,但長期而言,平台需要從根本上重新架構其前端安全策略,才能真正重建用戶信任。而對於整個產業來說,這起事件應該成為推動「全棧安全」思維的催化劑——安全不僅僅是合約的事,而是從用戶瀏覽器到區塊鏈底層的每一個環節的事。