KeyFrame內部研究專用

The CPIMP Backdoor: Anatomy of a Multi-Chain Proxy Attack

DeFi Security Summit - DSS·11月23日週日·20 min英文

三句話摘要

攻擊者在智能合約代理模式中植入隱藏惡意代理(CPIMP),潛伏數月等待大額資金聚集後準備發動攻擊,被安全研究人員發現並協調緊急救援。 代理合約未初始化的視窗期即是高價值攻擊面,搭配雙委託調用、雙升級事件等特徵可作為 CPIMP 感染的主動檢測依據,智能合約部署流程必須將初始化的原子性與事件驗證納入標準安全程序。 1. 未初始化代理的搶跑攻擊是核心手法

重點整理

重點
  • 1

    1. 未初始化代理的搶跑攻擊是核心手法

  • 2

    攻擊者透過 frontrun(搶先交易)在部署者之前初始化代理合約,將自己控制的秘密代理設為中間層。受害者的初始化交易表面上成功並發出正確的升級事件,但實際上整個代理已受攻擊者掌控,連 Etherscan 的讀寫介面都會顯示合法的實現地址,幾乎無從察覺。

  • 3

    2. CPIMP 具備複雜的自保與偽裝邏輯

  • 4

    惡意代理不是簡單的後門,而是一個功能完整的中間層:封鎖單筆超過 90% 資產的提款、在升級操作時自動重新安裝自身、支援 ERC 轉帳搭配鏈下簽名許可(繞過黑名單限制),且大多數正常交易仍會轉發至合法實現,行為幾乎與正常合約無異。

  • 5

    3. 協調救援的複雜度遠超技術層面

  • 6

    由於每個受感染協議的 CPIMP 都有客製化邏輯,救援策略不能統一套用;且若某協議搶先行動,可能驚動攻擊者危及其他協議。作戰室必須同時協調約 10 個協議,在確認嚴重程度的同時制定各自的定制化提取方案。

  • 7

    4. Etherscan 被舊版代理標準欺騙是關鍵掩護

  • 8

    攻擊者刻意在一個舊版 OpenZeppelin 代理標準的存儲槽中放入合法實現地址,利用 Etherscan 支援多種代理標準的識別政策,讓 Etherscan 誤讀為正確實現,形成天然的視覺掩護。

實用技巧與重點

乾貨
  • 數字與規模
  • 攻擊者潛伏時間:數個月
  • 觸發攔截閾值:單筆提款超過合約資產 90%
  • 發現時間:David Benimol 於 7 月 8 日發出警告
  • 作戰室協議數量:約 10 個同時受影響協議
  • 攻擊者疑似身份:中國駭客組織(非北韓)
  • 受影響協議
  • Pendle(大型,在收到警告前幾天已自行升級,但不清楚原因)
  • Origin(影響相對較小,涉及未使用的次要鏈合約)
  • 多條鏈上多個未具名協議
  • 攻擊特徵(檢測指標)
  • 初始化交易為 frontrun 執行
  • 初始化時發出兩個升級事件(一個惡意、一個合法偽裝)
  • 受感染合約上的每筆交易包含兩次 delegatecall
  • 反編譯代碼中存在特定函數簽名(CPIMP 存在標誌)
  • 工具與技術
  • 工具:Etherscan 讀寫合約介面、鏈上事件監聽、區塊掃描器、反編譯技術
  • 攻擊模式:Proxy frontrun + delegatecall 中間代理
  • 標準被利用:舊版 OpenZeppelin 代理存儲槽標準
  • 跨鏈通訊:Zero Layer(LayerZero)跨鏈消息傳遞
  • 參與人員
  • David Benimol:最初發現者與調查主力
  • Seal 911 / PC Versaceio:作戰室指揮、Etherscan 欺騙技術調查
  • DDOB / Neville:受影響協議查詢、惡意代理逆向工程
  • Rashelon Casaparov:最初指出問題,未參與後續調查

結論

結論

代理合約未初始化的視窗期即是高價值攻擊面,搭配雙委託調用、雙升級事件等特徵可作為 CPIMP 感染的主動檢測依據,智能合約部署流程必須將初始化的原子性與事件驗證納入標準安全程序。

完整解析

詳細

今年夏天,安全研究員 David Benimol 在調查同事 Rashelon Casaparov 指出的異常時,發現了一批疑似被攻擊者控制的代理合約。他於 7 月 8 日向安全社群發出警告,表示問題規模可能遠超以往。這個漏洞的核心在於智能合約代理模式的一個古老弱點:若代理合約在部署後尚未初始化,任何人都可以搶先初始化並植入自己想要的實現。傳統上這不是大問題,因為部署者只要再部署一個新代理即可。但這次攻擊的恐怖之處在於,受害者根本無從察覺自己的代理已被入侵。

攻擊者的手法被命名為 CPIMP(Clandestine Proxy Implanted in the Middle Pattern,秘密中間代理植入模式)。攻擊流程是:攻擊者 frontrun 部署者的初始化交易,先將一個自己控制的惡意代理設為中間層,隨後讓部署者的初始化交易「正常」執行,並發出包含合法實現地址的升級事件。如果你查詢代理的實現,它回傳的是合法地址;如果你去 Etherscan 讀寫合約,顯示的也是合法實現。受感染的代理在中間靜默轉發幾乎所有正常調用,大多數交易行為完全正常,使其可以潛伏數個月而不被發現。

CPIMP 的複雜性遠超一般後門。它內建攔截邏輯:阻止單筆超過合約資產 90% 的大額提款,允許小額資金流動以維持表象;若有人嘗試升級合約,它會在實現槽中自動重新安裝自身;它還實現了帶有鏈下簽名許可的 ERC 轉帳邏輯,即使攻擊者地址被列入黑名單,仍可透過鏈下簽名完成資金轉移。此外,攻擊者刻意利用舊版 OpenZeppelin 代理標準的存儲槽放入合法實現地址,讓 Etherscan 誤讀並顯示合法實現,形成完美的視覺掩護——這顯然是攻擊者透過大量實驗才找到的欺騙方法。

接獲警告後,Seal 911 立即召開作戰指挥中心會議,面對的是一個異常艱難的局面:約 10 個協議同時受感染,每個協議的 CPIMP 都有客製化邏輯,無法套用統一救援方案。更棘手的是,若某協議搶先行動,可能驚動攻擊者觸發針對其他協議的攻擊。評估嚴重程度也充滿不確定性,例如其中一個受感染合約擁有透過 LayerZero 發送跨鏈訊息的權限,救援團隊當時無法確定這會對其他鏈造成何種即時影響。儘管如此,整體緩解行動最終相當成功,在攻擊者發動大規模攻擊前完成了救援。攻擊者疑為中國駭客組織,潛伏策略顯示其目標是等待大型協議在受感染合約中積累充足流動性後再一次性收割。

關鍵時刻

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