DEF CON 33 - Data Duplication Village - Fungible Threats - Mauro Edritch, Nelson Colon
三句話摘要
如何濫用IPFS、Google Calendar、Cloudflare R2與Codeex等合法去中心化技術作為命令控制伺服器分發惡意軟體。 合法去中心化技術因其抗審查與難以監管的設計初衷反而成為攻擊者理想的C2平台,使防守方陷入無解的權衡困境。 去中心化特性成為防禦漏洞:IPFS的文件分布在多個節點,刪除不是即時而是依賴垃圾回收機制(每15天或每10GB刪除)。每個節點可獨立選擇是否刪除,導致同步移除幾乎不可能,給攻擊者充足的利用時間。
重點整理
重點- 1
去中心化特性成為防禦漏洞:IPFS的文件分布在多個節點,刪除不是即時而是依賴垃圾回收機制(每15天或每10GB刪除)。每個節點可獨立選擇是否刪除,導致同步移除幾乎不可能,給攻擊者充足的利用時間。
- 2
NFT元數據的隱蔽性:攻擊者在OpenSea NFT的JSON manifest和圖片隱寫術中編碼惡意payload。OpenSea只驗證鏈上合約,不檢查IPFS上的實際內容,使得B64編碼的命令完全隱蔽且可被惡意軟體自動解碼執行。
- 3
Google Calendar的低門檻濫用:易於設置(只需Gmail帳戶)、成本極低(SMS驗證2美元以下)、無需基礎設施、Calendar流量通常不被監控。即使建立者帳戶遭刪除,事件ID仍保持持久性,payload可隱藏在多段落的事件描述中。
- 4
合法服務流量的偽裝:Cloudflare R2和Codeex的所有連線看起來都是信譽良好的服務商流量,管理員無法區分惡意與合法請求。直接封鎖會癱瘓正常業務(西班牙因版權問題直接封鎖Cloudflare導致停網),使防禦陷入困局。
實用技巧與重點
乾貨- 技術詳情:
- IPFS文件刪除週期:每15天或當刪除請求達10GB時執行
- NFT manifest編碼格式:B64 pipe後接payload字串
- Google Calendar事件描述限制:約七段落,可隱藏payload
- Google Calendar IDs:Calendar ID與Event ID共同組成持久標識
- Cloudflare R2設置:5分鐘完成、初期免費、S3相容API
- Codeex部署:Docker快速部署、本地區塊鏈、匿名Ethereum地址自動生成
- Codeex交互方式:curl POST上傳、curl GET下載檔案
- 成本與可取得性:
- 多米尼加可用SMS驗證成本:$1-2美元
- R2初期試用:無需信用卡或額外資訊
- Google帳戶建立成本:接近零(僅需SMS驗證)
- 攻擊案例指標:
- OpenSea NFT濫用編碼:B64編碼、隱寫術分析
- Google Calendar事件命名範例:「HR meet」、會議密碼與URL偽裝
- Terraform plan演示:用於展示執行計畫
- 命令執行示例:whoami、hostname、ID、IP洩露
結論
結論“合法去中心化技術因其抗審查與難以監管的設計初衷反而成為攻擊者理想的C2平台,使防守方陷入無解的權衡困境。”
完整解析
詳細演講由兩位安全研究員Mu(阿根廷籍,DEF CON第13次演講者)和Nelson(多米尼加籍,首次DEF CON演講者)共同進行。兩人都是Bits Consulting團隊成員,該團隊專研Web3威脅。他們在過去幾年已展示過濫用YouTube、Spotify、Wikipedia、Steam、World of Warcraft等服務作為C2伺服器的技術,去年進一步展示了鏈上NFT作為惡意中繼的用法。本次演講涉及四種核心技術。
首先是IPFS(星際文件系統)。IPFS被NASA、洛克希德馬丁等大型組織採用,設計用於去中心化存儲與高速檔案檢索。攻擊者利用IPFS檔案分布在全球各節點的特性。具體來說,他們在OpenSea NFT平台上上傳看似無害的圖片NFT,但將惡意payload編碼在JSON metadata和圖片隱寫術中。由於OpenSea只在鏈上驗證NFT合約而不檢查IPFS上的實際內容,這些payload完全隱蔽。更關鍵的是,IPFS的刪除機制不是即時的,而是依賴垃圾回收——要麼每15天執行一次,要麼當刪除請求累積達10GB才執行。且由於IPFS是分散的,每個節點可獨立選擇是否刪除,導致協調刪除幾乎不可能。演講者展示了一個Ruby編寫的惡意軟體,它會掃描IPFS節點,下載這些圖片,自動解碼B64編碼的payload並執行,將結果回傳到C2伺服器。所有流量看起來都來自OpenSea等合法網站。
第二個工具是Google Calendar(基於YFS概念)。Google Calendar看起來完全無害,但攻擊者利用事件描述欄可容納大量文本的特性隱藏payload。攻擊者建立一個事件(如「HR meet」),在描述中混入看似合法的會議資訊(URL、密碼等),但最後編碼一個B64 payload。由於Google Calendar流量從不被阻止(任何組織都依賴Google服務),且即使建立者帳戶被刪除,事件仍保持可訪問性,攻擊者獲得持久性C2通道。成本極低——在多米尼加等國只需$1-2的SMS驗證即可建立多個一次性帳戶。演講中展示了如何通過Calendar API取得Calendar ID和Event ID,惡意軟體可以定期查詢這些事件獲取命令,並將命令執行結果寫入新的事件或外部伺服器。
第三個工具是Cloudflare R2。R2是基於AWS S3的對象存儲服務,優勢是背後有Cloudflare這個知名CDN廠商支持、設置簡單(5分鐘內完成)、初期免費、流量廣泛被信任。攻擊者可建立名為「MF2」或按組織名稱的bucket,上傳payload檔案,所有連線看起來都是合法的Cloudflare流量。管理員無法直接阻止,因為西班牙等國家曾因版權問題直接封鎖Cloudflare,導致整個國家停網。
最後是Codeex,一個新的去中心化存儲方案。Codeex使用本地區塊鏈、Docker快速部署、完全匿名、無需識別、天生抗審查。上傳和下載只需簡單的curl命令。由於Codeex不進行內容驗證或清理,攻擊者可直接上傳隱藏payload的文本檔案或圖片,無需隱寫術也能隱蔽。
演講最終強調,問題不在這些技術本身有漏洞,而在於任何新技術發布時,善意的開發者希望分享好東西,但同時也有威脅行為者等著濫用。目前許多現成惡意軟體(如Discord/Telegram C2)已廣泛使用這類技術。對於CIS和網絡管理員來說,防禦陷入兩難:要麼容忍攻擊,要麼直接封鎖Google/Cloudflare等信譽良好服務,但後者會癱瘓正常業務。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

