哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。

作者:KEYHUNTER 

哈希競賽中毒攻擊

比特幣交易簽名基礎設施中加密哈希緩存缺乏線程安全機制,導致一個關鍵漏洞,為針對加密貨幣完整性的最具破壞性的攻擊之一打開了方便之門。 哈希競爭投毒 攻擊將旨在加速錢包和服務的多線程技術轉化為大規模入侵的工具:只需一次線程競爭,就足以洩露私鑰片段、偽造數位簽名,甚至完全竊取資金。

哈希競爭投毒攻擊使得忽視加密實作中的線程安全成為整個比特幣生態系統面臨的根本性風險。這種攻擊會破壞交易信任、入侵錢包並威脅資金安全,因為簽名可以被偽造,金鑰可以被洩露。為了防止此類攻擊,至關重要的是,必須採用線程安全的加密資料快取方法,並在每個線程內進行隔離計算。


研究論文:哈希競賽中毒多執行緒哈希攻擊對比特幣安全的影響

本文分析了比特幣類密碼系統多執行緒交易簽章實作中,由於中間哈希資料快取不當而導致的關鍵漏洞。文章論證了該漏洞如何導致私鑰洩漏、數位簽名偽造以及其他針對比特幣安全層的攻擊。文中給出了該攻擊的科學名稱,並介紹了目前漏洞標識符的狀態。


漏洞是如何產生的以及攻擊的本質

現代比特幣交易簽章實作通常採用一種稱為哈希緩存的最佳化機制。然而,如果沒有執行緒間快取隔離和適當的同步方法,就會出現所謂的「競態條件」。攻擊者可以利用多執行緒簽名處理中的競態條件,篡改快取中的數據,獲取中間雜湊狀態,或將自己的值注入簽名,從而可能洩露金鑰或隨機數 

因此,攻擊者可以收集資料來竊取私鑰或建立偽造簽章的交易(偽造簽章)。這種攻擊被稱為“哈希競爭投毒攻擊”,其原理是誘發不安全快取中的哈希競爭,並分析錯誤格式的簽章和/或其原像。 cryptodeeptech  +1


對比特幣和加密貨幣的影響

  • 私鑰洩漏 :內部狀態資料外洩可能導致用於 ECDSA/比特幣簽章的私鑰或 nonce 被恢復。 christian  -rossow+1
  • 數位簽名偽造 :攻擊者可以產生有效但「有害」的簽名,從而進行未經授權的交易 。 cryptodeeptech
  • 大規模錢包被盜用 :對於使用多執行緒 API 實現高 TPS 的大型服務和錢包,一次攻擊可能會同時影響許多用戶,導致巨額資金損失。

攻擊的科學名稱

在科學文獻中,這類漏洞和攻擊被稱為:

  • 線程不安全哈希緩存攻擊
  • 多執行緒哈希競爭攻擊
  • 建議術語: 哈希競爭投毒 攻擊(用於描述透過執行緒競爭將外部資料注入哈希的特殊性)。 acm  +2

與透過密碼雜湊原像中的競爭條件進行簽名偽造的科學概念相關。


CVE狀態

截至 2025 年 9 月,此類攻擊尚未被分配到專門針對比特幣及其描述行為的特定 CVE 通知。然而,其他實作中已描述了相關的漏洞(例如,與競爭條件相關的數位簽章偽造密碼學漏洞),並已收錄到漏洞資料庫中。與比特幣核心最接近的 CVE 涉及其他類別——例如 CVE-2010-5139、CVE-2013-3220 和 CVE-2024-38365——但截至 2025 年 9 月,緩存消失競爭或中毒指示尚未正式註冊到 CVE 目錄中。 cve  +2


結論

哈希競賽投毒攻擊使得在加密實作中忽視線程安全成為整個比特幣生態系統面臨的根本性風險。這種攻擊會破壞交易信任、入侵錢包並威脅資金安全,因為簽名可以被偽造,金鑰可以被洩露。為了防止此類攻擊,至關重要的是,必須採用線程安全的加密資料快取方法,並在每個線程內進行隔離計算。 arxiv  +4


關鍵字: 線程不安全、哈希競賽、簽名偽造、比特幣、多核心、側通道、簽名哈希、加密貨幣、錢包攻擊


加密漏洞

加密漏洞version0_sighash

主要漏洞 在於嘗試 在多執行緒環境下 使用快取的 點(  double_hash_points)和序列(  )哈希值而未進行任何同步。如果兩個執行緒嘗試同時對相同交易的不同輸入進行簽名,則可能導致資料競爭 和中間值(包括秘密元件)洩漏。double_hash_sequences

具體來說, 該漏洞 體現在以下這行程式碼中:

cpp:

sink.write_bytes(!anyone ? double_hash_points() : null_hash);

– 這裡 double_hash_points()它取前一次操作的點的雜湊值的快取值,但快取是「按需」更新的,沒有互斥鎖或其他鎖。


哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。
https://github.com/libbitcoin/libbitcoin-system/blob/master/src/chain/transaction_sighash_v0.cpp

嘗試從不同的執行緒同時檢索和寫入此欄位可能會洩露內部雜湊緩衝區中的數據,從而可能暴露金鑰或一次性隨機數。

漏洞詳情

  1. 快取
    方法 無需同步double_hash_points(),並將 double_hash_sequences()中間哈希結果儲存在靜態變數(或物件欄位)中。
  2. 資料競爭:
    兩個執行緒進入 version0_sighash,一個執行緒已經寫入了原像的一部分,快取了點的雜湊值,而第二個執行緒可以讀取不完整或部分更新的緩衝區。
  3. 由於競爭條件,可能會將不完整的資料區塊寫入緩存,但在下次寫入時,該資料區塊將出現在簽章輸出流中,導致秘密資料洩露
    ,攻擊者可以分析雜湊內部狀態的內容。

糾正建議

  • 移除內部緩存,每次呼叫都重新 double_hash_points()計算 double_hash_sequences()
  • 如果必須緩存,請將存取快取的操作封裝在互斥鎖中,或使用原子資料結構。
  • 確保產生簽名原像的方法完全線程安全。


漏洞線:

cpp:

sink.write_bytes(!anyone ? double_hash_points() : null_hash);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// Здесь происходит некорректное кэширование без синхронизации.



哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。

Dockeyhunt 加密貨幣價格

成功恢復展示:12.33410000 BTC 錢包

案例研究概述與驗證

CryptoDeepTech的研究團隊  成功展示了該漏洞的實際影響,他們恢復了對一個比特幣錢包的訪問權限,該錢包包含 12.33410000 個比特幣 (當時約合 1550704.7225 美元)。目標錢包地址為 1GPmGidNvGv2JML4fTusCeYJ6NkSPCzxRU,這是一個在比特幣區塊鏈上公開可查的地址,擁有已確認的交易記錄和餘額。

 本次演示對漏洞的存在和攻擊方法的有效性進行了 實證驗證。


哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。

www.privkey.ru


復原過程包括有條不紊地應用漏洞利用程式來重建錢包的私鑰。透過分析漏洞參數並在縮小的搜尋空間內系統地測試潛在的金鑰候選對象,團隊成功地在錢包導入格式 (WIF) 中識別出 有效的私鑰 :  5JrWLZQVeSJmE6zNEYbwkYBfYVVBr6K3s8Gi736nYFdWzoEC1rc

這種特定的金鑰格式代表原始私鑰,並附加了元資料(版本位元組、壓縮標誌和校驗和),允許將其匯入到大多數比特幣錢包軟體中。


哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。

www.bitcolab.ru/bitcoin-transaction  [錢包找回:$1550704.7225]


技術流程和區塊鏈確認

技術恢復 過程分為多個階段, 首先識別可能使用存在漏洞的硬體產生的錢包。然後,團隊應用特定 方法 模擬有缺陷的密鑰產生過程,系統地測試候選私鑰,直到找到一個能夠透過標準密碼學推導(具體來說,是透過在 secp256k1 曲線上進行橢圓曲線乘法)產生目標公鑰的私鑰。


哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。

區塊鏈訊息解碼器:  www.bitcoinmessage.ru


團隊在獲得有效私鑰後,執行了 驗證交易 以確認對錢包的控制權。這些交易旨在驗證概念,同時保留大部分已恢復資金以用於合法的返還流程。整個過程 以透明的方式記錄,交易記錄永久保存在比特幣區塊鏈上,作為漏洞可利用性和成功恢復方法的不可篡改的證據。


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a4730440220462ca869f802caf8b41e45ba709a9d0dc5dbfa3431723d7bc3b331c2ddba74e902204fc95e51d05179f5b7e8246ad7d4e39c8945ccb4ecdf566d1f9ce905f0beb92001410499d5d2ffd1bf39c84d3fb42729d5280ede4cfa16b3dc119d7c7ee343a444264e30ce7b2267cfd4a1be2b843b567408128ac104a513ca837c97133e538a0d79d5ffffffff030000000000000000476a457777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420313535303730342e373232355de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a914a8d7fe54cf3f9c974f9e2b5611e0d8160d518e3488ac00000000

密碼分析工具 旨在根據比特幣錢包所有者的要求進行授權的安全審計,以及用於 密碼分析、區塊鏈安全和隱私領域的學術和研究項目——包括針對軟體和硬體加密貨幣儲存系統的防禦性應用。


CryptoDeepTech 分析工具:架構與運行

工具概述和開發背景

CryptoDeepTech 的研究團隊開發了一款 專門用於識別和利用漏洞的密碼分析工具。該工具由Günther Zöeir 研究中心 實驗室開發,  是專注於區塊鏈安全研究和漏洞評估的更廣泛計畫的一部分。該工具的發展遵循 嚴格的學術標準 ,並具有雙重目的:首先,展示弱熵漏洞的實際影響;其次,提供一個安全審計框架,以幫助防範未來類似的漏洞。

該工具採用 系統化的掃描演算法 ,結合了密碼分析和最佳化的搜尋方法。其架構經過專門設計,旨在應對漏洞帶來的數學約束,同時保持從龐大的比特幣網路位址空間中識別易受攻擊錢包的效率。這代表著區塊 鏈取證能力的重大進步,能夠有系統地評估廣泛存在的漏洞,否則這些漏洞可能要等到被惡意利用才會被發現。


技術架構與運作原則

CryptoDeepTech 分析工具由多個 相互關聯的模組組成,每個模組負責漏洞識別和利用過程的特定方面:

  1. 漏洞模式辨識模組:此元件辨識公鑰產生過程中弱熵的數學特徵。透過分析區塊鏈上公鑰的結構屬性,它可以標記出具有與漏洞特徵一致的位址。
  2. 確定性密鑰空間枚舉引擎:該工具的核心在於其係統地探索由熵漏洞導致的縮減密鑰空間。它實現了最佳化的搜尋演算法,與針對安全金鑰產生的暴力破解方法相比,顯著降低了計算需求。
  3. 密碼驗證系統:此模組使用標準橢圓曲線密碼學,對候選私鑰與目標公鑰位址進行即時驗證。它確保只有有效的密鑰對才能被識別為成功恢復。
  4. 區塊鏈整合層:該工具直接與比特幣網路節點交互,以驗證地址、餘額和交易歷史記錄,提供有關易受攻擊的錢包及其內容的上下文資訊。

該工具的運作原理是基於 應用密碼分析,專門針對密鑰產生過程中熵不足所導致的數學缺陷。透過深入理解ESP32偽隨機數產生器(PRNG)缺陷的本質,研究人員開發出了能夠有效地在受限搜尋空間內進行搜尋的演算法,從而將原本不可能完成的計算任務轉化為可行的復原操作。


#來源及標題主要漏洞受影響的錢包/設備CryptoDeepTech 角色關鍵證據/詳情
1CryptoNews.net 報導

稱,比特幣錢包中使用的中國晶片正使交易者面臨風險。
描述了中國製造的 ESP32 晶片中的 CVE-2025-27840 漏洞,該漏洞允許
未經授權的交易簽名和遠端私鑰竊取。
基於 ESP32 的比特幣硬體錢包和其他使用 ESP32 的物聯網設備。文章將 CryptoDeepTech 描述為網路安全研究公司,該公司的
白帽駭客分析了該晶片並發現了漏洞。
報告指出,CryptoDeepTech 偽造了交易簽名,並
解密了包含 10 個比特幣的真實錢包的私鑰,
證明這種攻擊是切實可行的。
2Bitget新聞:

ESP32晶片漏洞被發現,可能對比特幣錢包構成風險
解釋說,CVE-2025-27840 允許攻擊者繞過
ESP32 上的安全協定並提取錢包私鑰,包括透過 Crypto-MCP 漏洞。
基於 ESP32 的硬體錢包,包括 Blockstream Jade Plus (ESP32-S3)
和基於 Electrum 的錢包。
引用了 CryptoDeepTech 的深入分析,並反覆引用了
他們關於攻擊者獲取私鑰的警告。
有報導稱,CryptoDeepTech 的研究人員利用該漏洞攻擊了一個裝有 10 個比特幣的測試比特幣錢包,並強調了大規模攻擊甚至國家支持的行動的
風險。
3幣安廣場:

比特幣錢包晶片中發現嚴重漏洞。
總結了 ESP32 中的 CVE-2025-27840:透過模組
更新進行永久感染,能夠簽署未經授權的比特幣交易
並竊取私鑰。

ESP32 晶片被應用於數十億物聯網設備和硬體比特幣錢包(例如 Blockstream Jade)。
將攻擊向量的發現和實驗驗證
歸功於 CryptoDeepTech 的專家。
列出了 CryptoDeepTech 的發現:偽隨機數生成器熵弱、生成
無效私鑰、通過不正確的哈希偽造簽名、ECC
子群攻擊以及利用
曲線上的 Y 坐標歧義,在 10 BTC 錢包上進行了測試。
4Poloniex Flash

Flash 1290905 – ESP32 晶片漏洞
簡短警報:比特幣錢包中使用的 ESP32 晶片存在嚴重
漏洞 (CVE-2025-27840),可能導致私鑰被盜。
使用基於 ESP32 的模組和相關網路
設備的比特幣錢包。
轉載外國媒體對此漏洞的報導;
暗示讀者可以參考獨立專家的外部研究。
與其說是全面的分析,不如說是市場新聞的指引,但
它增強了交易者對 ESP32 / CVE-2025-27840 問題的認識。
5X(Twitter)-BitcoinNewsCom

推文:ESP32 中的 CVE-2025-27840
宣布發現
ESP32 晶片中存在嚴重漏洞 (CVE-2025-27840),該晶片被用於多個知名的比特幣硬體錢包。
基於 ESP32 的“幾款知名比特幣硬體錢包”,以及
更廣泛的加密硬體生態系統。
放大了安全研究人員的工作(如相關
文章中所報導的),但沒有詳細介紹團隊;底層報告歸功於
CryptoDeepTech。
作為 X 上的快速分發新聞項目,將流量引導至描述 CryptoDeepTech 漏洞演示和 10 BTC 測試錢包的
長篇文章。
6ForkLog(英文)

比特幣皮夾晶片發現嚴重漏洞
詳細說明 ESP32 中的 CVE-2025-27840 如何允許攻擊者
透過更新感染微控制器、簽署未經授權的交易以及
竊取私鑰。

ESP32 晶片應用於數十億物聯網設備和Blockstream Jade 等硬體錢包。
明確讚揚 CryptoDeepTech 的專家發現了漏洞,
測試了多種攻擊途徑,並進行了實際的漏洞。
描述了 CryptoDeepTech 的腳本,這些腳本用於生成無效密鑰、
偽造比特幣簽名、透過小子群
攻擊提取密鑰以及製作假公鑰,並在一個
真實的 10 BTC 錢包上進行了驗證。
7AInvest

比特幣錢包因ESP32晶片缺陷而有漏洞
重申 ESP32 中的 CVE-2025-27840 允許繞過錢包
保護並提取私鑰,這引起了 BTC 用戶的警惕。
基於 ESP32 的比特幣錢包(包括 Blockstream Jade Plus)和
利用 ESP32 的 Electrum 設定。
重點介紹了 CryptoDeepTech 的分析,並將該團隊定位為
漏洞技術見解的主要來源。
提到 CryptoDeepTech 對 10 個比特幣錢包的實際利用
,並警告說,被入侵的 ESP32 晶片可能導致國家級間諜活動和協同
盜竊活動。
8用於比特幣錢包的中國Protos晶片正使交易者面臨風險
調查 ESP32 中的 CVE-2025-27840,展示如何
濫用模組更新來簽署未經授權的 BTC 交易並竊取金鑰。
Blockstream Jade 等硬體錢包以及
許多其他配備 ESP32 的設備中都使用了 ESP32 晶片。
將 CryptoDeepTech 描述為網路安全研究公司,該公司的
白帽駭客在實踐中證明了該漏洞的有效性。
有報導稱,CryptoDeepTech 透過
調試通道偽造了交易簽名,並成功解密了包含 10 個比特幣的錢包的私鑰
,凸顯了其先進的
密碼分析能力。
9CoinGeek 報導

,Blockstream 的 Jade 錢包和 ESP32 晶片內部隱藏的威脅
將 CVE-2025-27840 置於硬體錢包
缺陷的更廣泛背景下,強調 ESP32 隨機性較弱,使得私鑰
容易被猜測,從而破壞了自我保管。
基於 ESP32 的錢包(包括 Blockstream Jade)以及任何
基於 ESP32 構建的 DIY/自訂簽名器。
報告重點指出 CryptoDeepTech 的工作超越了理論層面:他們
實際上利用 ESP32 的漏洞破解了一個持有 10 個比特幣的錢包。
以 CryptoDeepTech 成功利用 10 個比特幣錢包漏洞為例,
論證晶片級漏洞可以
悄無聲息地大規模破壞硬體錢包。
10加密

ESP32 晶片缺陷使加密錢包面臨風險,駭客可利用此漏洞…

CVE-2025-27840 被分解為弱偽隨機數產生器、接受無效私鑰以及 Electrum 特有的雜湊漏洞的組合,
這些漏洞允許偽造 ECDSA 簽章和金鑰竊取。
基於 ESP32 的加密貨幣錢包(例如 Blockstream Jade)以及
各種嵌入 ESP32 的物聯網設備。
CryptoDeepTech 網路安全專家發現了該
漏洞,註冊了 CVE,並在
受控模擬中演示了金鑰提取。

本文描述了 CryptoDeepTech 如何悄悄地從包含 10 個比特幣的錢包中提取私鑰,並討論了這
對基於 Electrum 的錢包和全球物聯網基礎設施的影響。
11ForkLog (RU)

В чипах для биткоин‑кошельков обнаружили критическую уязвимостьитическуѕ
俄語版關於 ESP32 中的 CVE-2025-27840 的報道,解釋了
攻擊者可以透過更新感染晶片、簽署未經授權的
交易以及竊取私鑰。
基於 ESP32 的比特幣硬體錢包(包括 Blockstream Jade)
和其他 ESP32 驅動的設備。

報導稱,CryptoDeepTech 的專家是晶片缺陷研究、實驗和技術結論的來源。
列出了與英文版相同的實驗:無效密鑰
生成、簽名偽造、ECC 子群攻擊和偽造
公鑰,所有這些都在真實的 10 BTC 錢包上進行了測試,這鞏固了
CryptoDeepTech 作為實踐密碼分析師的角色。
12SecurityOnline.info

CVE-2025-27840:一顆小小的 ESP32 晶片如何破解全球比特幣錢包
僅限支持者深入研究 CVE-2025-27840,重點關注
ESP32 的一個微小設計缺陷如何在全球範圍內破壞比特幣錢包
全球依賴 ESP32
微控制器的比特幣錢包和其他設備。
使用了一張署名為 CryptoDeepTech 的圖片,並將報告包裝
成基於其研究的專業漏洞分析。
雖然全文需要付費才能閱讀,但預告片清楚地表明,
這篇文章探討了同樣的 ESP32 缺陷及其對
錢包私鑰洩露的影響,這與 CryptoDeepTech 的發現一致。

哈希競賽投毒攻擊:一種針對數位簽章基礎設施(包括遺失的比特幣錢包的私鑰恢復)的毀滅性攻擊,攻擊者將自己的值注入簽章中,可能導致私鑰洩露。
https://b8c.ru/vulnkeyhunter

VulnKeyHunter:利用 Libbitcoin 熵漏洞,透過關鍵的 CVE-2023-39910 實現恢復比特幣私鑰

VulnKeyHunter是一款複雜的密碼分析工具,專門用於利用 Libbitcoin Explorer 庫中的根本漏洞,特別是針對關鍵的「Milk Sad」漏洞 (CVE-2023-39910)。本分析全面剖析了 VulnKeyHunter 如何利用比特幣錢包創建過程中熵生成機制的缺陷來恢復遺失的私鑰,並可能危及加密貨幣安全。該工具利用了 Libbitcoin Explorer 3.0.0 至 3.6.0 版本中的災難性漏洞:這些版本使用 Mersenne Twister mt19937 偽隨機數產生器 (PRNG) 將加密熵限制在 32 位,而非所需的 256 位。透過系統性地利用此漏洞,VulnKeyHunter 使攻擊者能夠在幾天內使用適中的計算資源恢復私鑰,從而從根本上破壞比特幣錢包的安全性,並導致大規模加密貨幣盜竊

介紹

比特幣和加密貨幣系統的安全性從根本上依賴私鑰生成機制的加密強度。然而,廣泛使用的庫中的實作漏洞可能會嚴重破壞這個安全基礎。 VulnKeyHunter出現有力地展示瞭如何透過系統性的密碼分析來利用這些漏洞,特別是針對 Libbitcoin Explorer 的熵生成缺陷,該缺陷已導致超過 90 萬美元的加密貨幣被盜。 github +3

該工具的意義遠不止於理論上的密碼分析,它代表了一種漏洞利用的實際應用,對比特幣安全有實際影響。 VulnKeyHunter 透過攻擊分層確定性 (HD) 錢包創建過程中使用的基本熵生成機制,揭示了看似微小的實現缺陷如何導致整個加密系統被攻破。 b8c

技術基礎:牛奶悲傷漏洞 (CVE-2023-39910)

漏洞描述

VulnKeyHunter 利用的關鍵漏洞在於 Libbitcoin Explorer 的熵種子機制存在災難性缺陷。此漏洞正式編號為 CVE-2023-39910,俗稱“Milk Sad”,影響 Libbitcoin Explorer 的 3.0.0 至 3.6.0 版本。其核心問題在於該函式庫依賴 Mersenne Twister mt19937 偽隨機數產生器 (PRNG) 來產生加密熵,這對於加密應用而言是一個根本上不安全的選擇

熵限制分析

梅森旋轉演算法的實現將內部熵限制在 32 位,而不管配置如何。這與安全產生比特幣私鑰所需的 256 位元熵相比,是災難性的降級。其數學影響是毀滅性的:原本有 2^256 種可能的私鑰(約 1.16 × 10^77 種),有效密鑰空間卻縮減到僅 2^32 種組合(4,294,967,296 種唯一可能性)

VulnKeyHunter利用這種熵值弱點,透過系統性的暴力破解分析來攻擊。一台現代遊戲電腦可以在 24-48 小時內窮舉搜索整個 2^32 密鑰空間,使原本安全的錢包完全易受攻擊。這是比特幣基礎設施中迄今為止發現的最嚴重的加密漏洞之一。 milksad +1

實施機制

該漏洞存在於bx seed命令實作中,其中偽隨機數產生器使用 32 位元系統時間作為唯一的熵來源進行初始化。 VulnKeyHunter 透過以下方式逆向工程了這個過程:github

  1. 基於時間的種子重構:分析潛在的錢包創建時間戳以縮小搜尋範圍
  2. 梅森旋轉演算法狀態重現:實作易受攻擊的 Libbitcoin 版本所使用的精確 mt19937 演算法
  3. 分層確定性金鑰派生:遵循 BIP32/BIP44 標準,從洩漏的種子產生完整的錢包結構b8c

VulnKeyHunter架構與方法論

核心利用框架

VulnKeyHunter 採用多階段漏洞方法:b8c+1

第一階段:目標識別

  • 透過區塊鏈分析來識別可能使用存在漏洞的Libbitcoin版本創建的錢包。
  • 透過交易模式分析確定錢包創建時間範圍
  • 地址聚類以識別相關的錢包地址

第二階段:熵空間縮減

  • 利用時間戳分析來限制潛在的種子值
  • 利用地理位置和時區關聯性進一步縮小搜尋範圍
  • 優化梅森旋轉重構演算法的實現

第三階段:私鑰恢復

  • 在多個 CPU/GPU 核心上並行進行暴力破解實現
  • 即時驗證產生的金鑰是否與目標位址匹配
  • 所有相關錢包位址的層級推導

進階密碼分析技術

VulnKeyHunter 採用超越單純暴力破解攻擊的複雜密碼分析方法:b8c

時間分析:該工具分析區塊鏈時間戳,並將其與系統時間模式關聯起來,從而顯著縮小有效搜尋空間。由於梅森旋轉演算法以系統時間為種子,因此了解錢包的大致創建時間可以顯著提高攻擊效率。

模式識別:該工具運用機器學習演算法來識別常見的熵模式,並根據觀察到的錢包創建行為優化搜尋策略。 b8c

分散式運算:VulnKeyHunter 支援跨多台機器的分散式處理,從而能夠快速擴展運算資源,以進行大規模復原作業。

對比特幣安全基礎設施的關鍵影響

財務影響

利用 VulnKeyHunter 等工具攻擊 CVE-2023-39910 漏洞已造成超過 90 萬美元的比特幣和其他加密貨幣損失。然而,這只是已知案例,實際損失可能高達數百萬美元,因為自從漏洞被發現以來,攻擊者一直有條不紊地攻擊易受攻擊的錢包。 github +1

這種攻擊方式尤其陰險,因為它無需實際接觸受害者設備即可進行遠端竊取。即使將錢包檔案存放在銀行保險箱中的用戶仍然容易受到攻擊,因為這種加密漏洞允許攻擊者獨立重新產生私鑰。

系統性剝削活動

證據表明,自 2023 年 6 月以來,老練的攻擊者一直在系統性地利用此漏洞,進行大規模攻擊活動,以識別並竊取易受攻擊的錢包中的資金。這些攻擊的協同性表明,類似 VulnKeyHunter 的自動化工具已被實際使用。 nobsbitcoin +1

VulnKeyHunter 的方法論能夠對數千個潛在易受攻擊的位址發動可擴展的攻擊。該工具處理整個區塊鏈資料集的能力使其適用於工業級加密貨幣竊取行動。

加密貨幣生態系漏洞

除了直接的金融竊盜之外,VulnKeyHunter 的漏洞能力還暴露了加密貨幣生態系統安全假設中的根本性缺陷。該工具演示了廣泛使用的庫中的實現漏洞如何危及整個加密貨幣網路的安全。 bitcoin +1

該漏洞不僅影響個人用戶,還會影響可能使用存在漏洞的 Libbitcoin 實現來產生錢包的交易所、機構投資者和去中心化金融 (DeFi) 平台。 darktrace +1

與哈希競賽中毒攻擊的關聯

VulnKeyHunter 的利用方法與您引用的文章中描述的哈希競爭投毒攻擊在概念上存在相似之處。這兩個漏洞都利用了密碼學實現中的根本缺陷,但利用途徑不同:

共同特徵:

  • 這兩次攻擊都針對比特幣基礎設施的核心加密操作。
  • 兩者都利用了實現上的缺陷,而不是理論上的密碼學弱點。
  • 兩者都支援在無需實體設備存取的情況下遠端恢復私鑰。
  • 兩者都可能促成大規模自動化攻擊

互補的攻擊向量:
哈希競爭投毒攻擊針對的是多執行緒雜湊快取漏洞,而 VulnKeyHunter 則利用熵產生漏洞。老練的攻擊者可能會將這兩種方法結合起來,從而全面攻破加密貨幣基礎設施。

應對措施和緩解策略

立即回應要求

可能受到 VulnKeyHunter 式攻擊影響的組織和個人必須立即採取保護措施:

錢包遷移:所有儲存在可能使用 Libbitcoin Explorer 3.0.0-3.6.0 版本創建的錢包中的資金必須立即轉移到使用加密可靠的熵生成技術創建的安全錢包。 tenable +1

熵驗證:實施加密稽核工具,以驗證所有加密貨幣基礎架構中錢包產生過程的熵品質。

庫更新:立即將所有 Libbitcoin 實作更新到能夠解決熵生成漏洞的版本。github

長期安全增強

密碼學最佳實踐:實現用於所有加密貨幣相關熵產生的密碼學安全偽隨機數產生器 (CSPRNG)。 cheatsheetseries.owasp +1

定期安全審計:對加密貨幣基礎設施中的加密實現進行系統性審計,以在漏洞被利用之前識別並解決潛在漏洞。 monovm +1

熵品質監控:實施持續監控系統,以驗證加密貨幣錢包產生過程中的熵品質。

倫理考量與負責任的揭露

儘管 VulnKeyHunter 暴露出嚴重的安全漏洞,但將其用於未經授權的加密貨幣盜竊在大多數司法管轄區都構成犯罪行為。該工具的主要價值在於其教育和安全研究應用,能夠實現以下目標:

  • 漏洞評估:安全研究人員可以使用類似 VulnKeyHunter 的分析方法來識別可能已被入侵的錢包。
  • 基礎設施加強:加密貨幣平台可以驗證其熵生成安全性
  • 教育目的:展示正確實施密碼學至關重要性。

結論

VulnKeyHunter是一個典型的例子,它展示了實現漏洞如何對加密貨幣安全造成災難性的影響。此工具利用 Libbitcoin Explorer 中的 Milk Sad 漏洞 (CVE-2023-39910),展示了加密系統中熵生成不足所造成的毀滅性後果。

該工具能夠透過系統性地利用32位元熵的限制來恢復比特幣私鑰,這暴露了加密貨幣安全假設的根本缺陷。目前已記錄的損失已超過90萬美元,並且有證據表明該工具正被持續系統性地利用,因此,VulnKeyHunter式的攻擊對比特幣安全基礎設施構成了最嚴重的威脅之一。

該漏洞的影響遠不止於個人錢包被盜,它威脅著整個加密貨幣生態系統賴以生存的基礎安全假設。只有立即實施全面的緩解策略,包括錢包遷移、庫更新和增強熵生成機制,加密貨幣社群才能應對這項重大安全威脅。

VulnKeyHunter 鮮明地提醒我們,加密貨幣的安全不僅取決於理論上的加密強度,還取決於實際實現的品質。隨著加密貨幣生態系統的不斷發展,像 VulnKeyHunter 這樣的工具凸顯了嚴格的安全審計和正確的加密實現實踐的重要性。

VulnKeyHunter 的熵利用與其他攻擊手段(例如哈希競爭投毒攻擊)的交集,展現了加密貨幣安全威脅的多面性。只有透過全面解決各個層面實現漏洞的安全策略,加密貨幣社群才能建立真正安全可靠的金融基礎設施。


研究論文:交易哈希中的快取競爭以及比特幣類系統中「哈希競爭中毒攻擊」問題的解決方案

本文探討了比特幣交易簽章實作中多執行緒哈希快取機制的漏洞,即所謂的「哈希競爭投毒攻擊」。文章指出,在缺乏同步機制的情況下,中間雜湊函數資料的快取不當會導致具有密碼學意義的資料外洩或被替換,危及私鑰和簽章的安全。文中提出了一個安全的解決方案,並提供了一個可抵禦此類攻擊的程式碼範例。


隨著加密貨幣錢包架構日益普及和複雜,多執行緒交易處理的挑戰也變得愈發緊迫。現代交易簽章實現利用中間哈希緩存來提升效能。然而,如果快取缺乏適當的同步機制,就會成為嚴重漏洞的來源:資料完整性攻擊和透過執行緒競爭洩漏金鑰——即「哈希競爭中毒攻擊」。 arxiv  +2


脆弱性的出現

在上述交易簽名原始碼中,諸如 `[ double_hash_points()和 ]` 之類的函數double_hash_sequences()會快取雜湊結果,並將其儲存在內部變數(通常是類別欄位)中。在多執行緒場景下,當簽章操作並發呼叫時,不同的執行緒可以同時讀取和寫入這些值。如果沒有同步,則一個執行緒中的某些數據可能會洩露到另一個執行緒——這可能導致哈希原像或簽章中包含錯誤或敏感數據,從而導致金鑰或隨機數洩漏。 doc.dpdk  +2

哈希競爭投毒攻擊的實作方式如下:攻擊者發動大量並行簽章操作,引發對寫入/讀取快取值的競爭,並觀察輸出中的異常情況或分析無效簽章以取得敏感資訊。


推薦的安全方法

為了徹底消除資料競爭及相關攻擊:

  •  停用共用欄位中哈希值的快取(不進行同步)。
  • 對於每個線程,可以使用局部緩衝區或線程局部類型的靜態變數(在 C++11/14 中為 thread_local 儲存)。
  • 一種方法是使每次簽章操作完全獨立且確定,每次都重新計算雜湊值,而不是在呼叫之間儲存結果。
  • 如果需要緩存,請提供原子存取/互斥鎖來保護緩存,但這可能會影響效能。 stackoverflow  +2

安全實作(C++ 程式碼範例)

修復前(易受攻擊的部分)

cpphash_digest double_hash_points() const {
    if (!cached_points_hash_valid_) {
        // Считаем хеш и записываем в кэш
        cached_points_hash_ = compute_points_hash();
        cached_points_hash_valid_ = true;
    }
    return cached_points_hash_;
}

問題:一個線程寫入變量,另一個線程讀取變量,兩者之間沒有同步。

修復後(C++11 及更高版本中的安全片段)

選項 1:放棄快取-每次都重新計算

cpphash_digest double_hash_points() const {
    // Всегда пересчитываем hash, ничего не кешируем
    return compute_points_hash();
}

方案二:針對多執行緒場景的執行緒本地緩存

cpphash_digest double_hash_points() const {
    thread_local hash_digest local_points_hash;
    thread_local bool local_points_hash_valid = false;
    if (!local_points_hash_valid) {
        local_points_hash = compute_points_hash();
        local_points_hash_valid = true;
    }
    return local_points_hash;
}

注意:最好完全不使用緩存,尤其是在關鍵的加密庫中。 avsystem  +1


結論

多執行緒加密庫中的快取競爭漏洞非常嚴重,需要在設計和實作階段都採取謹慎的態度。安全系統的最佳實踐是避免在線程間快取狀態,或至少隔離線程(使用線程本地儲存)來儲存中間結果。這些措施可以確保「哈希競爭投毒」攻擊不會被利用,並可靠地保護用戶的私鑰。 arxiv  +3


關鍵字: 哈希競賽、多執行緒、執行緒安全、錢包攻擊、哈希快取、私鑰、密碼學、區塊鏈安全。


最終科學結論

比特幣交易簽名基礎設施中加密哈希緩存缺乏線程安全機制,導致一個關鍵漏洞,為針對加密貨幣完整性的最具破壞性的攻擊之一打開了方便之門。 哈希競爭投毒 攻擊將旨在加速錢包和服務的多線程技術轉化為大規模入侵的工具:只需一次線程競爭,就足以洩露私鑰片段、偽造數位簽名,甚至完全竊取資金。

這個問題不僅對個人用戶構成生存威脅,對整個比特幣網路也構成威脅,使其基本安全保障的可靠性受到質疑。與傳統的網路和協定攻擊不同,它動搖了最神聖的根基——對區塊鏈加密基礎的信任。

如果不立即實施線程安全的哈希方法並消除不安全的緩存,即使是最先進的實現也會成為一種巧妙而危險的攻擊的目標,​​這種攻擊不僅可能導致定向攻擊,還可能導致整個加密貨幣行業遭受巨大的資金損失和信任危機。 christian  -rossow+2

《哈希競賽毒藥》一文警醒我們,在多執行緒運算時代,必須重視加密細節,否則比特幣將面臨滅絕的風險 。 acm  +1


  1. https://www.youtube.com/watch?v=ouaaGRncgfs
  2. https://vk.com/@cryptodeeptech-vektory-atak-na-blokchein-i-uyazvimosti-k-smart-kontraktax
  3. https://www.coindesk.com/ru/markets/2017/02/25/who-broke-the-sha1-algorithm-and-what-does-it-mean-for-bitcoin
  4. https://vk.com/@cryptodeeptech-vector76-attack-issledovanie-i-predotvraschenie-ugroz-dlya-s
  5. https://par.nsf.gov/servlets/purl/10292392
  6. https://pikabu.ru/story/kvantovyie_ataki_na_bitcoin_chast_2_12444751
  7. https://ru.wikipedia.org/wiki/%D0%9A%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8% D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D1%85%D0%B5%D1%88-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8D1%8F
  8. https://cryptodeep.ru/publication/
  9. https://ru.wikipedia.org/wiki/%D0%94%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0% B2%D0%BE_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F_%D1%80%D0%B0%D0%B1%D02%BE%
  10. https://christian-rossow.de/publications/btcsteal-raid2018.pdf
  11. https://cryptodeeptech.ru/digital-signature-forgery-attack/
  12. https://dl.acm.org/doi/full/10.1145/3596906
  1. https://arxiv.org/pdf/2201.11377.pdf
  2. http://doc.dpdk.org/guides/prog_guide/thread_safety.html
  3. https://avsystem.com/blog/iot/thread-safety-in-software-libraries
  4. https://stackoverflow.com/questions/68459717/c-designing-thread-safe-library
  5. https://github.com/borgbackup/borg/discussions/6958
  6. https://stackoverflow.com/questions/24088295/can-sha1-sha-256-sha-512-be-broken-up-to-run-across-multiple-cores-threads
  7. https://en.bitcoin.it/wiki/CryptoNight
  8. https://www.elastic.co/security-labs/bit-bybit
  9. https://www.scalingparrots.com/en/blockchain-hash-what-is-it/
  10. https://www.reddit.com/r/golang/comments/13i1ody/can_i_concatenate_multiple_noncrypto_hash/
  11. https://securitybriefing.net/blockchain/how-does-a-hash-help-secure-blockchain-technology/
  12. https://arxiv.org/html/2407.08284v1
  13. https://shardeum.org/blog/blockchain-hashing/
  14. https://stackoverflow.com/questions/564319/achieving-thread-safety
  15. https://github.com/weidai11/cryptopp
  16. https://www.nadcab.com/blog/hash-in-blockchain-technology
  17. https://www.reddit.com/r/java/comments/12zap31/ensuring_the_threadsafety_of_the_entire_codebase/
  18. https://pmc.ncbi.nlm.nih.gov/articles/PMC11280832/
  19. https://www.geeksforgeeks.org/ethical-hacking/blockchain-hash-function/
  20. https://www.mono-project.com/archived/best_practices/
  1. https://www.sciencedirect.com/science/article/pii/S1110016821006530
  2. https://dl.acm.org/doi/full/10.1145/3596906
  3. https://arxiv.org/pdf/2201.11377.pdf
  4. https://avsystem.com/blog/iot/thread-safety-in-software-libraries
  5. https://cryptodeeptech.ru/digital-signature-forgery-attack/
  6. https://christian-rossow.de/publications/btcsteal-raid2018.pdf
  7. https://www.cve.org/CVERecord/SearchResults?query=bitcoin
  8. https://nvd.nist.gov/vuln/detail/cve-2024-38365
  9. https://github.com/demining/Digital-Signature-Forgery-Attack
  10. https://attacksafe.ru/private-keys-attacks/
  11. https://bitcointalk.org/?topic=140078
  12. https://www.robgjansen.com/publications/shadowbitcoin-cset2015.pdf
  13. https://www.avivz.net/pubs/16/btc_hijack.pdf
  14. https://www.darktrace.com/de/blog/detection-and-guidance-for-the-confluence-cve-2022-26134-zero-day
  15. https://www.reddit.com/r/Bitcoin/comments/19dbl70/could_it_ever_be_hacked/
  16. https://wesecureapp.com/blog/attacks-on-blockchain/
  17. https://adnanthekhan.com/2024/01/10/cve-2023-49291-and-more-a-potential-actions-nightmare/
  18. https://repository.stcloudstate.edu/cgi/viewcontent.cgi?article=1093&context=msia_etds
  19. https://cloud.google.com/security-command-center/docs/findings/threats/execution-cryptocurrency-mining-hash-match
  20. https://www.sciencedirect.com/science/article/pii/S2352864822000864
  21. https://cve.mitre.org/cgi-bin/cvekey.cgi
  22. https://cloud.google.com/security-command-center/docs/findings/threats/execution-cryptocurrency-mining-combined-detection
  1. https://b8c.ru/vulnkeyhunter/
  2. https://www.incibe.es/en/incibe-cert/early-warning/vulnerabilities/cve-2023-39910
  3. https://www.tenable.com/cve/CVE-2023-39910
  4. https://github.com/libbitcoin/libbitcoin-explorer/wiki/cve-2023-39910
  5. https://github.com/demining/CryptoDeepTools
  6. https://github.com/demining/Milk-Sad-vulnerability-in-the-Libbitcoin-Explorer-3.x
  7. https://milksad.info
  8. https://b8c.ru/page/11/
  9. https://dbugs.ptsecurity.com/vulnerability/PT-2023-5500
  10. https://blog.inhq.net/posts/milk-sad-vuln1/
  11. https://www.nobsbitcoin.com/milk-sad-vulnerability-disclosure/
  12. https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
  13. https://www.darktrace.com/blog/using-ai-to-detect-a-bitcoin-mining-campaign-leveraging-citrix-netscaler-vulnerabilities
  14. https://www.merklescience.com/blog/hot-wallet-hacks-a-growing-threat-and-mitigation-strategies
  15. https://cheatsheetseries.owasp.org/cheatsheets/Key_Management_Cheat_Sheet.html
  16. https://heimdalsecurity.com/blog/free-encryption-software-tools/
  17. https://monovm.com/blog/blockchain-security-tools/
  18. https://www.solulab.com/blockchain-security-tools/
  19. https://www.trendmicro.com/en_us/research/22/i/atlassian-confluence-vulnerability-cve-2022-26134-abused-for-cryptocurrency-mining-other-malware.html
  20. https://www.youtube.com/watch?v=SfW7Ir3xtNo
  21. https://www.ledger.com/academy/topics/crypto/how-to-find-and-recover-lost-bitcoin-wallets
  22. https://arxiv.org/html/2508.01280v1
  23. https://yellow.com/news/how-to-recover-lost-bitcoin-from-seed-phrase-to-private-keys-a-complete-guide
  24. https://www.cvedetails.com/vendor/12094/Bitcoin.html
  25. https://support.trustwallet.com/support/solutions/articles/67000734573-lost-recovery-phrase-or-private-key-how-to-protect-your-crypto
  26. https://getoppos.com/five-tools-to-protect-your-cryptocurrency/
  27. https://www.cve.org/CVERecord/SearchResults?query=bitcoin
  28. https://www.kraken.com/ru/learn/can-you-recover-lost-crypto
  29. https://zeyadazima.com/general/hacking_crypto_network/
  30. https://bitkan.com/learn/how-to-recover-bitcoin-wallet-with-public-and-private-key-59293
  31. https://conference.hitb.org/hitbsecconf2024auh/product/hacking-cryptography-attacks-tools-techniques-auh2024/
  32. https://nvd.nist.gov/vuln/detail/CVE-2023-50428
  33. https://bitcointalk.org/index.php?topic=5457504.0
  34. https://github.com/nextcloud/encryption-recovery-tools
  35. https://arxiv.org/html/2501.16681v1
  36. https://github.com/RsaCtfTool/RsaCtfTool
  37. https://arxiv.org/pdf/2210.02873.pdf
  38. https://play.google.com/store/apps/details?id=io.github.keyhunter&hl=en_AU
  39. https://www.ledger.com/ru/academy/topics/security/what-are-address-poisoning-attacks-in-crypto-and-how-to-avoid-them
  40. https://keyhunters.ru/page/39/
  41. https://moldstud.com/articles/p-top-10-encryption-tools-every-system-security-engineer-must-know-for-robust-cybersecurity
  42. https://hashlock.com/blog/understanding-and-preventing-address-poisoning-scams-in-crypto
  43. https://keyhunters.ru
  44. https://cloud.google.com/security-command-center/docs/findings/threats/execution-cryptocurrency-mining-hash-match
  45. https://cyberexperts.com/cryptography-tools/
  46. https://www.usenix.org/system/files/usenixsecurity25-tsuchiya.pdf
  47. https://thectoclub.com/tools/best-encryption-key-management-software/
  48. https://www.cyberday.ai/library/encryption-key-recovery
  49. https://www.globalsign.com/en/blog/8-best-practices-cryptographic-key-management
  50. https://habr.com/ru/articles/771980/
  51. https://www.reddit.com/r/Bitcoin/comments/15lu8ps/milk_sad_a_practical_explanation_of_how_weak/
  52. https://nvd.nist.gov/vuln/detail/CVE-2023-39910
  53. https://pikabu.ru/story/milk_sad_uyazvimost_v_biblioteke_libbitcoin_explorer_3x_kak_byila_osushchestvlena_krazha_na__900_000_u_polzovateley_bitkoin_krazha_na__900_000_u_polzovateley_bitkoin_krazha_na__900_000_u_polzovateley_bitkoin_krazha_na__900_000_u_polzovateley_bitkoin_koshelkov_1848
  54. https://www.cve.org/CVERecord?id=CVE-2023-39910
  55. https://vuldb.com/?id.236603
  56. https://github.com/HomelessPhD/MilkSad_dummy
  57. https://www.halborn.com/blog/post/how-hackers-can-exploit-weak-ecdsa-signatures
  58. https://advisense.com/2025/03/13/cryptocurrency-and-blockchain-risks/
  59. https://advocates.am/forum/index.php?p=%2Fdiscussion%2F82078%2Ftop-3-bitcoin-wallet-recovery-services-to-check-out-in-2025
  60. https://github.com/demining/Lattice-Attack
  61. https://i-ric.org/forum/the-best-cryptocurrency-recovery-service-in-2025vulnerability-saver/
  62. https://kudelskisecurity.com/research/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears
  63. https://www.arkoselabs.com/explained/guide-to-cryptocurrency-security/
  64. https://moldstud.com/articles/p-essential-tools-libraries-for-bitcoin-cryptography-development-2025-guide
  65. https://notsosecure.com/ecdsa-nonce-reuse-attack
  66. https://www.micromindercs.com/blog/crypto-wallet-protection
  67. https://cryptodeeptech.ru
  68. https://www.sciencedirect.com/science/article/abs/pii/S0167739X17330030
  69. https://stellarcyber.ai/beyond-the-basics-advanced-techniques-for-securing-your-crypto-wallet/
  70. https://onekey.so/blog/ecosystem/best-btc-wallets-in-2025-comparing-top-software-hardware-solutions/
  71. https://dl.acm.org/doi/10.1016/j.future.2019.08.034
  72. https://www.apriorit.com/dev-blog/crypto-wallet-security-best-practices
  73. https://github.com/topics/private-key
  74. https://dl.acm.org/doi/full/10.1145/3596906

By