Ledger 供應鏈攻擊:經 CryptoBilis 渠道竊取用戶助記詞

作者:Gu Yu,ChainCatcher 有人把 80 枚比特幣轉入一台剛購入的 Ledger 裝置,購自官方授權經銷商。助記詞手寫抄下,鎖在保險箱。幣在 9 月 29 日到帳,買入成本約 520 萬美元,帳面盈利一度高達 138 萬美元。10 月 9 日 05:54(UTC),這 80 枚 BTC 在一筆交易中被全部轉出。他每一步都照足教科書做。 同一個早上,X 和 Reddit 上陸續出現同類報告:一名用戶的 Ledger Stax 被清空近 10 萬枚 USDT,助記詞同樣手寫、同樣鎖在保險箱。這些用戶唯一的共通點,是裝置都購自東南亞經銷商 CryptoBilis。 10 月 9 日 13:32(UTC),Ledger 確認正在調查,並要求 CryptoBilis 暫停所有 Ledger 裝置的銷售與出貨;過去 90 天內經該渠道購買裝置的用戶,未初始化者不要初始化,已初始化者應立即把資產轉移到以全新助記詞生成的新裝置。 一、損失或超 9000 萬美元 損失規模目前只能靠鏈上估算。鏈上調查員 Specter 最早在 12:24 公布十個歸集地址,涵蓋比特幣、以太坊與 TRON,估算損失超過 8600 萬美元;另一名調查員 tanuki42 列出其中八個地址,估算損失逾 7200 萬美元;SlowMist 旗下的 MistTrack 給出的數字是「接近 9000 萬美元」;Bitquery 覆蓋 311 個錢包,估算損失約 9290 萬美元,其中以太坊約 4200 萬美元、比特幣約 1760 萬美元、USDT 約 1650 萬美元。Arkham 已把這些地址標記為「Ledger Theft」;截至周五下午,被標記地址仍留有約 7150 萬美元,最大持倉包括約 2940 萬美元 ETH、1750 萬美元 BTC、1360 萬美元 USDD 及 1080 萬美元 USDT。 比總額更能說明問題的,是受害者的輪廓。Lookonchain 監測到一個地址在買入設備三周後存入 700 萬枚 USDT,資金在報告前約十小時被全部轉走,可能是本次事件中最大的一筆單筆交易。另外三個被標記的比特幣地址在 13:44(UTC)合計持有約 211 枚 BTC,當時尚未有轉出。據 Chain INK,本次事件涉及約 98 個錢包,平均每個約 89 萬美元。這不是散戶損失幾百美元,而是有人把身家放進去的錢包。 把今年另一宗事件並排看,分布差異比總額更值得玩味。7 月 Coldcard 因固件隨機數缺陷、助記詞可被猜出,損失約 1.11 億美元,但分散在 5200 多個錢包,平均每個約 2.1 萬美元;CryptoBilis 這宗在不足一天內已升上第二位(約 8700 萬美元),只涉及約 98 個錢包,平均每個接近 89 萬美元。前一宗是廣撒網,這一宗是精準收割。分布本身支持「被改裝模組」的推斷:攻擊者掌握每台被動過手腳的裝置所生成的助記詞,可以慢慢等——等資金進帳才動手,而且專挑值得下手的目標。Lookonchain 監測到的那 80 枚 BTC,在裝置裡靜靜躺了十天才被一次性轉走。 二、拆機之後:屏幕排線上的微控制器 Ledger 尚未公布攻擊機制,但已有人拆了機。最詳細的記錄來自 Mt. Gox 前 CEO Mark Karpelès。他描述收到一台由馬來西亞寄出的裝置——在亞馬遜標價半價,且由馬來西亞而非他下單的日本出貨,這是第一個警號。打開後,他發現屏幕墊片的位置被換成一個隱藏模組:一縷天線導線、被縮短或拆走以騰出空間的電池、帶 eSIM 的 LTE 模組,以及一個接上裝置 SPI 匯流排的微控制器。他的評估是:這個微控制器能識別 Ledger 在 128×64 屏幕上使用的字體,鎖住助記詞設定介面,逐字捕捉用戶抄寫時屏幕上顯示的助記詞,再經 LTE 傳出。 SlowMist 首席信息安全官 23pds 描述了技術路徑:攻擊者在裝置內裝入微控制器,接到屏幕的 SPI 數據線;助記詞在安全元件內生成、顯示在屏幕上供用戶抄寫時,惡意模組同步記錄屏幕上的每個字元,再經內建 LTE 或 eSIM 傳出。他強調,安全元件的用途是防止私鑰被直接讀取或導出,卻管不了屏幕顯示什麼。助記詞出現在屏幕上的那幾秒,就是攻擊窗口。 這也解釋了整件事最反直覺的一點:這些裝置能通過 Ledger 的真偽驗證。安全元件是真的,助記詞正確生成,交易正常簽名——只是有人在旁邊看著。固件同樣偵測不到,因為植入的模組只在屏幕刷新時監聽。換言之,唯一能發現它的方法,是把裝置拆開。 另外兩種可能也存在:一是預先載入助記詞——攻擊者事先開機、設定、抄下、重新封裝,用戶以為自己在「設定新裝置」,實際上用的是一組攻擊者已知的詞;二是釣魚。開發者 0xQuit 認為部分受害者可能栽在釣魚手上,並指簡單一句「Ledger 被駭了」是不負責任的說法。 三、「官方授權」背書的是銷售權,不是供應鏈 CryptoBilis 不是街邊攤販。它 2020 年創立於吉隆坡,是列在 Ledger 官方經銷商頁面上的授權經銷商,服務馬來西亞、印尼與菲律賓,除 Ledger 外亦銷售 Trezor、OneKey、Tangem 和 SafePal。 問題正出在這裡。用戶遵循行業教的安全準則:無法在官網直購,就找「官方授權經銷商」。但授權只認證公司的分銷權,不保證倉庫裡每台裝置都完好,也不保證經手、分揀的每個員工都可信。從工廠、物流、倉儲、分揀、經銷商,到你家門口——這條鏈上任何一環都可能被截取、拆開、重新封裝。Karpelès 手上那台裝置的收縮膜完好無損。裝置一旦離開 Ledger 的掌控,「授權」二字不提供任何物理保護。 更耐人尋味的是時間線。新披露的公司記錄顯示,CryptoBilis 於今年 3 月被收購,一名登記地址在中國黑龍江省、名為「Jiaming」的個人自 8 月 3 日起持有公司 100% 股權。前聯合創辦人確認了 3 月的收購,稱原股東其後已退出所有營運、管理及行政職務,交接後對公司實際運作已無從得知,並促請現任管理層公開透明。據 DeepChain TechFlow,收購方與前高管簽署的保密協議限制他們披露交易細節,有效期至 10 月 19 日——10 月 9 日事件爆發時,前高管在法律上仍被禁止透露收購細節。目前沒有確鑿證據把股權變動與設備失竊連上,Ledger 亦只暫停銷售,未作出任何指控。 10 月 10 日,CryptoBilis 宣布暫停馬來西亞、菲律賓及印尼所有實體店與線上渠道各品牌硬件錢包的銷售和出貨,並提醒用戶:助記詞必須由裝置在初始化時生成、由用戶親手抄寫;任何附有預先印好或寫好的助記詞卡的裝置,都應視為不安全。 CryptoBilis 並非今年唯一出問題的渠道。9 月 Trezor 承認其物流供應商 ShipMonk 遭入侵,約 8.1 萬名美國客戶的真實姓名、電話號碼及住址外洩;1 月 Ledger 披露其支付處理商 Globale 洩露了部分官網買家的姓名與聯絡資料。這些事件沒有直接造成資金損失,卻一次又一次把「誰在何時收到硬件錢包」的名單送到攻擊者手上。過去三個月,冷錢包最脆弱的一環,已由代碼轉向物流。 四、追回、自救與最便宜的建議 追回的窗口正在收窄。據 MistTrack,Tether 已在相關地址凍結大量 USDT;攻擊者隨即把 USDT 換成 Tether 無法凍結的 TRON 穩定幣 USDD。據 Onchain Lens,已有 430.2 枚 ETH(約 107 萬美元)經四個錢包進入 Tornado Cash。比特幣和以太坊沒有凍結開關——資金一旦離開,交易所就是最後一道關卡。SlowMist 與 Security Alliance 已開通協助渠道,後者呼籲資金被轉到相關地址的用戶聯絡其 SEAL 911 應急小組。 行業內最實用的建議來自 CZ。他在判定這是「限於單一經銷商的供應鏈攻擊」的同時,給出一個具體、可執行的做法:買入硬件錢包(或下載新軟件錢包)後,先等幾星期再轉入大額資金。這段時間留意相關新聞……硬件可能被動過手腳,軟件官網也可能被入侵。自託管意味著額外責任。 這個「隔離期」的邏輯不在技術,而在資訊:如果一批裝置交到經銷商手上時已被動過手腳,鏈上分析師需要時間發現第一批被盜裝置並發出警報——那兩星期,就是為自己買來的緩衝。 但這宗事件真正重新定義的,是「自託管」這個詞的邊界。過去十年,行業幾乎把整套自託管安全敘事建立在密碼學與硬件之上:安全元件、EAL5+、PIN 擦除、開源審計。這些統統沒有被攻破。被攻破的是從工廠到你家門口的那段旅程——由物流商、倉庫、經銷商、快遞員組成,用戶無法驗證其中任何一步。硬件錢包承諾「私鑰永不離開裝置」。諷刺的是,私鑰確實從未離開裝置——只是它在屏幕上顯示給用戶的那幾秒裡,被別人看得太近了。當安全邊界從晶片延伸到你家門口的包裹,用戶真正擁有的最後一道防線也許是:別急著把錢放進去。