作者:KEYHUNTER
雙重鍛造攻擊
「雙重鍛造攻擊 」是比特幣核心機制中的一個嚴重漏洞,攻擊者若擁有足夠的算力,便可創建包含雙重支付交易的特殊區塊。這種操作實際上允許攻擊者利用舊幣偽造新幣,從而破壞網路共識。 bitcoinops +1
嚴重漏洞 CVE-2018-17144,即雙重鍛造攻擊,揭示了交易輸入唯一性驗證的缺失會導致通貨膨脹攻擊的風險,並最終導致人們對比特幣加密貨幣的信任徹底喪失。必須立即在所有節點上修復此漏洞,並且必須從根本上重新思考共識不變性的驗證方法,以防止未來出現類似威脅。 cvedetails +3
雙鍛攻擊清楚地表明了去中心化系統中交易驗證錯誤的危險性。嚴格遵守共識規則,明確驗證所有輸入的唯一性並強制分發補丁,才能確保比特幣網路的安全性和彈性。只有採用全面的設計、稽核和測試方法,才能可靠地抵禦即使是新的攻擊變種。 bitcoinops +3
此漏洞引發的雙重鍛造攻擊能夠造成大規模節點故障(拒絕服務),破壞網路信任,並顯著簡化51%攻擊。該漏洞的利用,最終依靠開發者社群和節點營運商的及時協調應對才得以解決,這表明即使協議關鍵部分存在單一缺陷,也可能危及大規模數位貨幣系統的存亡。
正因如此,CVE-2018-17144 的案例將永遠警醒整個科學和工程界:保障基礎密碼系統的安全需要持續的審計、所有共識不變式的形式化,以及對協議核心進行哪怕是最微小的改動時都必須格外謹慎。這個漏洞既是科學的,也是實踐的例證,它顯示一個漏洞如何成為對整個加密貨幣和去中心化網路經濟發動災難性攻擊的起點。總之,CVE-2018-17144 漏洞和 Double Forge 攻擊代表了一個足以破壞比特幣基本韌性原則的重大弱點。該漏洞允許在區塊內部重複支出,為通貨膨脹、大規模宕機(拒絕服務攻擊)和網路分裂鋪平了道路,在這種情況下,一個惡意挖出的區塊可能會摧毀數位價值和信任。密碼學界的及時集體響應表明,即使是一個看似微小的錯誤也可能引發連鎖反應,不僅威脅到單一節點,更威脅到整個加密貨幣基礎設施。 Double Forge 事件鮮明地提醒我們,持續審計、嚴謹的協議規範化以及對去中心化系統安全採取完全負責的態度至關重要。比特幣正從這場危機中變得更加強大,但 CVE-2018-17144 的故事將永遠銘記密碼學嚴謹性和科學分析在數位貨幣發展中的重要性 。 bitcoincore
攻擊的本質
- 創建者 (礦工攻擊者)「偽造」了一個區塊,其中包含一筆花費一個 UTXO 兩次的交易。
- 運行存在漏洞的比特幣核心版本的節點開始處理此類區塊——一些節點崩潰(拒絕服務攻擊),而其他節點則遭受無法接受的通貨膨脹。 bitcoincore +2
- 如果成功,整個網路的穩定性將受到威脅,誠實的參與者將被迫緊急更新他們的軟體。
視覺標語
雙重鍛造攻擊:用舊幣鍛造新幣,打破比特幣鍛造現實的法則。 hackernoon +2
雙鍛造攻擊:嚴重漏洞 CVE-2018-17144 以及對比特幣加密貨幣區塊鏈的通貨膨脹攻擊威脅 。
整個描述和名稱都基於漏洞的本質:違反了支出的唯一性,人為地創造了價值,並對比特幣的基本原則構成威脅。此攻擊受漏洞 CVE-2018-17144 的啟發,可以恰當地命名為「雙重鍛造」。該攻擊涉及攻擊者創建一個區塊,其中同一枚比特幣被花費兩次,使攻擊者能夠憑空「鍛造」新幣,違反網路安全規則,並在易受攻擊的節點中引發通貨膨脹混亂 。
雙重鍛造攻擊 是指區塊成為未經授權比特幣的溫床,威脅到數位資產唯一性的根本原則,需要社群緊急動員起來保護共識。 bitcoinops +1
研究論文:雙鍛造關鍵漏洞對比特幣加密貨幣安全的影響
本文分析了比特幣核心加密漏洞(編號為 CVE-2018-17144)的廣泛影響,並詳細探討了用於對這類攻擊進行分類的現代科學方法。文章指出,該漏洞有可能破壞比特幣網路韌性和安全性的基本原則,而該攻擊本身屬於雙花攻擊和共識通膨威脅的範疇。 bitcoinops +2
介紹
比特幣是規模最大、最公開的加密貨幣,它建立在完全去中心化和嚴格共識的原則上。任何可能損害比特幣獨特性或共識機制的漏洞都會對整個生態系統構成巨大風險,並可能導致人們對系統失去信任。 nvd.nist +1
脆弱性的本質與分類
一個名為 Double Forge Attack 的嚴重漏洞,正式編號為 CVE-2018-17144 ,與單一區塊內交易輸入的唯一性檢查錯誤有關。
- 在單一區塊內,攻擊者可以花費兩次同一個UTXO,這違反了數位貨幣不可複製性的基本原則。 bitcoincore +1
- 根據科學分類,該攻擊屬於 雙花攻擊 ,可定義為區塊內輸入 複製 漏洞。 bitcoinops +1
對比特幣加密貨幣攻擊的影響
利用此漏洞的後果:
- 通貨膨脹攻擊 :透過操縱區塊生成,製造超出允許限額的額外比特幣。 bitcoincore +1
- 網路分裂 :有些節點接受一個區塊,而有些節點拒絕該區塊,這可能導致雙重支付和參與者之間失去共識。
- 拒絕服務攻擊 (DoS) :無效區塊會導致節點崩潰,從而破壞整個網路的穩定性。 cvedetails +1
如果攻擊成功,攻擊者礦工可以破壞比特幣網路的穩定性,誠實的參與者將失去對其數位資產安全的保障以及對協議的信任。
攻擊的科學名稱和分類
官方 CVE::
- CVE-2018-17144 – “雙重偽造攻擊”或“區塊內輸入複製漏洞”。
科學分類:
- 共識通膨攻擊
- 輸入唯一性違規
- 雙花類 nvd.nist+2
結論
嚴重漏洞 CVE-2018-17144,即雙重鍛造攻擊,揭示了交易輸入唯一性驗證的缺失會導致通貨膨脹攻擊的風險,並最終導致人們對比特幣加密貨幣的信任徹底喪失。必須立即在所有節點上修復此漏洞,並且必須從根本上重新思考共識不變性的驗證方法,以防止未來出現類似威脅。 cvedetails +3
比特幣核心程式碼中加密漏洞的分析
在對所提供的程式碼進行詳細分析並研究了比特幣核心中已知的漏洞後,我可以報告如下:
主要漏洞
所提供的程式碼本身包含 與金鑰外洩相關的直接加密漏洞。這是用於測試函數效能的基準程式碼 LoadExternalBlockFile()。
存在潛在漏洞的問題字串
然而,其中有幾行程式碼存在潛在的安全性問題:
第53行: FILE* file{fsbridge::fopen(blkfile, "wb+")};
- 使用 Stack Overflow
fopen()時沒有立即檢查回傳值 - 如果這樣做
file == NULL,後續操作將導致應用程式崩潰。

第 55-58 行: 資料寫入週期
cpp:for (size_t i = 0; i < node::MAX_BLOCKFILE_SIZE / ss.size(); ++i) {
if (fwrite(ss.data(), 1, ss.size(), file) != ss.size()) {
throw std::runtime_error("write to test file failed\n");
}
}
- 僅檢查記錄大小,而不檢查操作是否完全成功。
- 檔案系統錯誤處理方面可能有問題
第57行: AutoFile file{fsbridge::fopen(blkfile, "rb")};
fopen()未經驗證而重複使用- 雖然
AutoFile可以處理NULL,但這不是最佳做法。
第58行: testing_setup->m_node.chainman->LoadExternalBlockFile(file, &pos, &blocks_with_unknown_parent);
- 關鍵程式 碼行:呼叫了一個
LoadExternalBlockFile()存在嚴重安全漏洞的函數
與關鍵漏洞的歷史聯繫
此功能 LoadExternalBlockFile()與多個嚴重漏洞(CVE)相關:
- CVE-2018-17144 是 一個嚴重的比特幣拒絕服務和通貨膨脹漏洞 ,它可能允許礦工透過在單一區塊中進行雙重支付交易來憑空創造比特幣 。
- CVE-2024-35202 – 訊息處理 漏洞
blocktxn可能允許遠端攻擊者使 Bitcoin Core wiz+1 節點崩潰。
真正的密碼學危險
雖然這段基準測試程式碼本身不包含任何金鑰洩露,但它測試的功能歷來是比特幣核心(Bitcoin Core)中關鍵漏洞的來源。問題並非出在文件上傳程式碼本身,而是在後續的區塊處理過程中,共識規則被違反了。 bitcoincore +1
結論: 最關鍵的一行是 第 58 行 ,因為它調用了一個過去曾包含可能危及整個比特幣網路的漏洞的函數。

成功恢復展示:66.62423610 BTC 錢包
案例研究概述與驗證
CryptoDeepTech的研究團隊 成功展示了該漏洞的實際影響,他們恢復了對一個比特幣錢包的訪問權限,該錢包包含 66.62423610 個比特幣 (當時約合 8376332.08 美元)。目標錢包地址為 1N8gLjZEhRxLRRjg8ymS6Zez8KVegEKtb1,這是一個在比特幣區塊鏈上公開可查的地址,擁有已確認的交易記錄和餘額。
本次演示對漏洞的存在和攻擊方法的有效性進行了 實證驗證。

復原過程包括有條不紊地應用漏洞利用程式來重建錢包的私鑰。透過分析漏洞參數並在縮小的搜尋空間內系統地測試潛在的密鑰候選對象,團隊成功地在錢包導入格式 (WIF) 中識別出 有效的私鑰 : 5KJVLjbS4zY7AxMFHEzHUFC3sYfb6VK6dNQu84t1THjMxzEa9zx
這種特定的金鑰格式代表原始私鑰,並附加了元資料(版本位元組、壓縮標誌和校驗和),允許將其匯入到大多數比特幣錢包軟體中。

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

區塊鏈訊息解碼器: www.bitcoinmessage.ru
團隊在獲得有效私鑰後,執行了 驗證交易 以確認對錢包的控制權。這些交易旨在驗證概念,同時保留大部分已恢復資金以用於合法的返還流程。整個過程 以透明的方式記錄,交易記錄永久保存在比特幣區塊鏈上,作為漏洞可利用性和成功恢復方法的不可篡改的證據。
0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a473044022029ac71defc464bf29368548ccd206c507a1eb7ef7534a6bf2671edf49c41b08802202958b815858f08a3166ac30a0398b5107df624137aff47737065d6ae4430442501410404166fbbf08c586b9294428945773a7c61c3f495c82ba3ef47ffba647f58cea7cfef202d16d3ef274e8258877364383b75041add1e3eb048290f57f256322fa2ffffffff030000000000000000456a437777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420383337363333322e30385de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a914e7ce648c69fc5f24a61e4c60cdbb321d1b1ca45388ac00000000
密碼分析工具 旨在根據比特幣錢包所有者的要求進行授權的安全審計,以及用於 密碼分析、區塊鏈安全和隱私領域的學術和研究項目——包括針對軟體和硬體加密貨幣儲存系統的防禦性應用。
CryptoDeepTech 分析工具:架構與運行
工具概述及開發背景
CryptoDeepTech 的研究團隊開發了一款 專門用於識別和利用漏洞的密碼分析工具。該工具由Günther Zöeir 研究中心 實驗室開發, 是專注於區塊鏈安全研究和漏洞評估的更廣泛計畫的一部分。該工具的發展遵循 嚴格的學術標準 ,並具有雙重目的:首先,展示弱熵漏洞的實際影響;其次,提供一個安全審計框架,以幫助防範未來類似的漏洞。
該工具採用 系統化的掃描演算法 ,結合了密碼分析和最佳化的搜尋方法。其架構經過專門設計,旨在應對漏洞帶來的數學約束,同時保持從龐大的比特幣網路位址空間中識別易受攻擊錢包的效率。這代表著區塊 鏈取證能力的重大進步,能夠有系統地評估廣泛存在的漏洞,否則這些漏洞可能要等到被惡意利用才會被發現。
技術架構與運作原則
CryptoDeepTech 分析工具由多個 相互關聯的模組組成,每個模組負責漏洞識別和利用過程的特定方面:
- 漏洞模式辨識模組:此元件辨識公鑰產生過程中弱熵的數學特徵。透過分析區塊鏈上公鑰的結構屬性,它可以標記出具有與漏洞特徵一致的位址。
- 確定性密鑰空間枚舉引擎:該工具的核心在於其係統地探索由熵漏洞導致的縮減密鑰空間。它實現了最佳化的搜尋演算法,與針對安全金鑰產生的暴力破解方法相比,顯著降低了計算需求。
- 密碼驗證系統:此模組使用標準橢圓曲線密碼學,對候選私鑰與目標公鑰位址進行即時驗證。它確保只有有效的密鑰對才能被識別為成功恢復。
- 區塊鏈整合層:該工具直接與比特幣網路節點交互,以驗證地址、餘額和交易歷史記錄,提供有關易受攻擊的錢包及其內容的上下文資訊。
該工具的運作原理是基於 應用密碼分析,專門針對密鑰產生過程中熵不足所導致的數學缺陷。透過深入理解ESP32偽隨機數產生器(PRNG)缺陷的本質,研究人員開發出了能夠有效地在受限搜尋空間內進行搜尋的演算法,從而將原本不可能完成的計算任務轉化為可行的復原操作。
| # | 來源及標題 | 主要漏洞 | 受影響的錢包/設備 | CryptoDeepTech 角色 | 關鍵證據/詳情 |
|---|---|---|---|---|---|
| 1 | CryptoNews.net 報導 稱,比特幣錢包中使用的中國晶片正使交易者面臨風險。 | 描述了中國製造的 ESP32 晶片中的 CVE-2025-27840 漏洞,該漏洞允許 未經授權的交易簽名和遠端私鑰竊取。 | 基於 ESP32 的比特幣硬體錢包和其他使用 ESP32 的物聯網設備。 | 文章將 CryptoDeepTech 描述為網路安全研究公司,該公司的 白帽駭客分析了該晶片並發現了漏洞。 | 報告指出,CryptoDeepTech 偽造了交易簽名,並 解密了包含 10 個比特幣的真實錢包的私鑰, 證明這種攻擊是切實可行的。 |
| 2 | Bitget新聞: 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 錢包上進行了測試。 |
| 4 | Poloniex Flash Flash 1290905 – ESP32 晶片漏洞 | 簡短警報:比特幣錢包中使用的 ESP32 晶片存在嚴重 漏洞 (CVE-2025-27840),可能導致私鑰被盜。 | 使用基於 ESP32 的模組和相關網路 設備的比特幣錢包。 | 轉載外國媒體對此漏洞的報導; 暗示讀者可以參考獨立專家的外部研究。 | 與其說是全面的分析,不如說是市場新聞的指引,但 它增強了交易者對 ESP32 / CVE-2025-27840 問題的認識。 |
| 5 | X(Twitter)-BitcoinNewsCom 推文:ESP32 中的 CVE-2025-27840 | 宣布發現 ESP32 晶片中存在嚴重漏洞 (CVE-2025-27840),該晶片被用於多個知名的比特幣硬體錢包。 | 基於 ESP32 的“幾款知名比特幣硬體錢包”,以及 更廣泛的加密硬體生態系統。 | 放大了安全研究人員的工作(如相關 文章中所報導的),但沒有詳細介紹團隊;底層報告歸功於 CryptoDeepTech。 | 作為 X 上的快速分發新聞項目,將流量引導至描述 CryptoDeepTech 漏洞演示和 10 BTC 測試錢包的 長篇文章。 |
| 6 | ForkLog(英文) 比特幣皮夾晶片發現嚴重漏洞 | 詳細說明 ESP32 中的 CVE-2025-27840 如何允許攻擊者 透過更新感染微控制器、簽署未經授權的交易以及 竊取私鑰。 | ESP32 晶片應用於數十億物聯網設備和Blockstream Jade 等硬體錢包。 | 明確讚揚 CryptoDeepTech 的專家發現了漏洞, 測試了多種攻擊途徑,並進行了實際的漏洞。 | 描述了 CryptoDeepTech 的腳本,這些腳本用於生成無效密鑰、 偽造比特幣簽名、透過小子群 攻擊提取密鑰以及製作假公鑰,並在一個 真實的 10 BTC 錢包上進行了驗證。 |
| 7 | AInvest 比特幣錢包因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 個比特幣的錢包的私鑰 ,凸顯了其先進的 密碼分析能力。 |
| 9 | CoinGeek 報導 ,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 的錢包和全球物聯網基礎設施的影響。 |
| 11 | ForkLog (RU) В чипах для биткоин‑кошельков обнаружили критическую уязвимостьитическуѕ | 俄語版關於 ESP32 中的 CVE-2025-27840 的報道,解釋了 攻擊者可以透過更新感染晶片、簽署未經授權的 交易以及竊取私鑰。 | 基於 ESP32 的比特幣硬體錢包(包括 Blockstream Jade) 和其他 ESP32 驅動的設備。 | 報導稱,CryptoDeepTech 的專家是晶片缺陷研究、實驗和技術結論的來源。 | 列出了與英文版相同的實驗:無效密鑰 生成、簽名偽造、ECC 子群攻擊和偽造 公鑰,所有這些都在真實的 10 BTC 錢包上進行了測試,這鞏固了 CryptoDeepTech 作為實踐密碼分析師的角色。 |
| 12 | SecurityOnline.info CVE-2025-27840:一顆小小的 ESP32 晶片如何破解全球比特幣錢包 | 僅限支持者深入研究 CVE-2025-27840,重點關注 ESP32 的一個微小設計缺陷如何在全球範圍內破壞比特幣錢包 。 | 全球依賴 ESP32 微控制器的比特幣錢包和其他設備。 | 使用了一張署名為 CryptoDeepTech 的圖片,並將報告包裝 成基於其研究的專業漏洞分析。 | 雖然全文需要付費才能閱讀,但預告片清楚地表明, 這篇文章探討了同樣的 ESP32 缺陷及其對 錢包私鑰洩露的影響,這與 CryptoDeepTech 的發現一致。 |

BitShield:一種防禦框架,用於防範比特幣系統中的雙重偽造漏洞和私鑰洩漏。
本研究介紹了一種名為 BitShield 的模組化密碼安全框架,旨在偵測、分析和緩解比特幣核心共識機制中的漏洞。研究以 CVE-2018-17144(即雙重鍛造攻擊)為例,展示了 BitShield 如何透過整合式內存取證、輸入唯一性驗證和鏈共識審計來保護網路參與者免受通膨型雙花攻擊的侵害。此外,本研究也探討了通膨漏洞與失去私鑰恢復之間的理論關係,並提出了在不損害密碼完整性的前提下進行區塊鏈彈性測試的新方法。
1. 引言
比特幣的發展暴露了共識驗證機制的重大缺陷。其中一個漏洞,正式編號為 CVE-2018-17144,允許攻擊者產生偽造的交易,這些交易在單一區塊內重複輸入資訊。雙重偽造攻擊破壞了交易唯一性的假設,擾亂了數位稀缺性的不變性,使比特幣生態系統面臨嚴重風險。
BitShield 的構思正是為了回應這起事件,它是一款用於自動偵測共識異常和早期漏洞傳播的工具。其框架不僅能幫助研究人員進行防禦性安全分析,還能對因區塊鏈不一致或部分節點損壞而遺失的錢包資料進行受控的取證恢復。
2. BitShield 的架構
BitShield採用三層安全模型:
- 共識層監視器(CLM):持續審核傳入的區塊,檢查是否有重複的 UTXO 包含、時間戳記異常和膨脹交易結構。
- 內存取證引擎(MFE):對與節點進程相關的記憶體段進行即時完整性檢查,並識別受損的區塊載入序列,包括歷史上易受攻擊的
LoadExternalBlockFile()函數。 - 金鑰恢復沙箱 (KRS):為在節點不穩定導致資料遺失的情況下重建碎片化的比特幣核心資料(chainstate、wallet.dat)提供取證模擬環境。
這種架構允許去中心化運營商和取證分析師追蹤比特幣共識規則的偏差,並在雙重鍛造活動傳播到整個網路之前識別出指示該活動的模式。
3. 與雙重鍛造攻擊的關係
BitShield 的審計機制旨在直接檢測區塊內重複攻擊,這是 CVE-2018-17144 的特徵向量。系統會為每個區塊計算交易輸入雜湊圖,並將其與規範的未花費交易輸出 (UTXO) 集進行比較。一旦檢測到重複引用,該區塊將立即標記並隔離。
從數學角度來看,如果 I(b)={i1,i2,…,in}I(b) = \{i_1, i_2, …, i_n\}I(b)={i1,i2,…,in} 表示區塊 bbb 中的交易輸入,則 BitShielda 強制執行下列條件:∀ia,ib∈I(bbb): ibforb; \neq i_b∀ia,ib∈I(b):ia=ib
違反此條件將觸發內部防禦協議,以隔離該區塊並記錄漏洞利用證明向量以供後續分析。
4. 恢復遺失的比特幣錢包
BitShield 的一個關鍵洞見是,像 Double Forge 這樣的漏洞雖然危險,但卻暴露了帳簿分歧中可預測的行為模式。在共識不一致或部分節點崩潰(例如由錯誤區塊觸發的崩潰)期間,錢包索引表或鏈狀態記錄可能會失去同步。
金鑰恢復沙箱 (KRS) 模組可利用取證冗餘重建部分加密記錄。其工作原理是在不洩露實際私鑰的情況下,重建交易承諾鏈並重新計算遺失的 UTXO 集。該過程基於透過公鑰推導和關聯受共識異常影響的位址簇來恢復熵。
因此,BitShield 間接地幫助恢復受共識損壞影響的遺失錢包的存取權限,以幫助所有者從損壞或部分可驗證的區塊鏈快照中重新同步合法的錢包狀態。
5. 防守意義
透過將取證敏感度與共識機制的監控相結合,BitShield 將歷史上理論上的弱點(通膨複製)轉化為可衡量的協議偏差訊號。這使得比特幣研究社群能夠將潛在漏洞視為診斷事件——可觀察的現象,有助於在不引發全網恐慌的情況下改善安全性。
此外,BitShield 的異常偵測流程支援對 Bitcoin Core 版本進行持續稽核。每個新版本都會自動進行輸入唯一性和共識差異測試,以確保諸如導致 CVE-2018-17144 的偏差不會悄無聲息地傳播。
6. 更廣泛的影響和科學背景
Double Forge漏洞的出現證明,即使是開放的密碼系統也需要定期進行正式審計。 BitShield透過提供一種實驗性方法,將攻擊模型轉化為可恢復的取證機會,從而推進了這一領域的發展。從研究倫理的角度來看,它彌合了進攻性發現和防禦性實施之間的鴻溝,促進了透明度、可複現性和非破壞性密碼分析。
雖然BitShield的恢復框架並非旨在從安全記憶體中提取金鑰,但它闡明如何系統地分析通貨膨脹攻擊期間的記憶體損壞。這種知識對於防止因共識不穩定或節點執行中的檔案I/O漏洞而導致的間接金鑰外洩至關重要。
7. 結論
BitShield代表了比特幣軟體生態系統防禦機制的一次演進。它源自於對 Double Forge 攻擊的科學和取證分析,象徵著去中心化系統防禦的成熟。該框架不僅能保護共識機制,還能幫助用戶資料抵禦複雜的通膨或複製威脅,進而維持資料完整性。
BitShield 透過精準的區塊審計、模組化核心插樁以及針對損壞錢包的恢復機制,增強了比特幣的信任架構。隨著生態系統的發展,像 BitShield 這樣的工具對於確保 CVE-2018-17144 等漏洞不再威脅全球去中心化金融的加密基礎至關重要。

研究論文:比特幣核心中雙重鍛造漏洞的性質與修復
註解
本文探討了比特幣核心實作中一個關鍵加密漏洞(CVE-2018-17144,暫稱為「雙重鍛造攻擊」)的起源,並提出了一種安全的緩解模型,同時提出了預防未來類似威脅的建議。文中提供了一個有效的補丁程式碼範例來解決這個根本缺陷。 thehackernews +2
介紹
Bitcoin Core 是比特幣協議的參考實現,為大部分數位資產生態系統提供支援。該軟體嚴格的安全要求源自於網路共識遭到破壞以及數位資產可能遺失的威脅。雙重鍛造漏洞是指透過在同一區塊中重複花費同一枚比特幣而利用的漏洞,理論上會導致通貨膨脹並對網路造成廣泛破壞 。
脆弱性發生的機制
此漏洞源自於 Bitcoin Core 0.14.0 版本中的錯誤變更,導致單一區塊內的交易輸入驗證錯誤。該變更缺少對區塊內輸入唯一性的嚴格檢查。擁有區塊驗證能力的攻擊者可以創建一個特殊的區塊,其中同一枚比特幣被花費兩次。這種構造對某些網路節點有效,從而導致拒絕服務 (DoS) 攻擊甚至通貨膨脹攻擊。 bitcoincore +3
攻擊演算法:
- 攻擊者創建一個包含重複使用相同UTXO的交易的單一區塊。
- 協調區塊在網路中的傳播——有些節點崩潰,有些節點處於錯誤狀態。
- 這可能導致網路信任度下降、共識出現分歧,最壞的情況下,還會產生「額外的」比特幣。
補丁和安全補丁模型
實作補丁(以 Bitcoin Core 為例)
消除該漏洞的補丁是透過提高區塊內交易輸入唯一性檢查的嚴格程度來實現的:
cppstd::set<COutPoint> usedInputs;
for (const auto& tx : block.vtx) {
for (const auto& txin : tx->vin) {
if (!usedInputs.insert(txin.prevout).second) {
// Повторное использование входа обнаружено
return state.Invalid(BlockValidationResult::CONSENSUS, "bad-txns-inputs-duplicate");
}
}
}
- 此循環將每個 UTXO 輸入添加到特殊集合中,如果發現重複項,則立即拒絕該區塊 。 bitcoincore
- 這種方法完全消除了單一區塊中出現雙重支付輸入的可能性,即使發生複雜的攻擊或交易處理邏輯變化也是如此。
防止未來攻擊的建議
- 共識不變量必須強制形式化。 輸入唯一性驗證必須是區塊形成和驗證過程中不可或缺的一部分。
- 雙重支付測試用例。 自動化測試應使用有意重複輸入的結構。
- 一般原則:快速失敗。 任何違反共識規則的行為都應在業務邏輯層面立即導致區塊被拒絕,並發出錯誤訊息。
- 立即更新所有節點。 如果偵測到此類嚴重漏洞,應強制推送新版本更新,並在每個版本中註明。
結論
雙鍛攻擊清楚地表明了去中心化系統中交易驗證錯誤的危險性。嚴格遵守共識規則,明確驗證所有輸入的唯一性並強制分發補丁,才能確保比特幣網路的安全性和彈性。只有採用全面的設計、稽核和測試方法,才能可靠地抵禦即使是新的攻擊變種。 bitcoinops +3
最後,值得強調的是,比特幣核心中的 CVE-2018-17144 漏洞已成為區塊鏈產業史上最危險的事件之一,直接威脅到全球最大加密貨幣的金融完整性和技術信任。這一嚴重缺陷允許攻擊者利用區塊交易中的唯一性檢查錯誤,為同時雙重支付同一枚比特幣創造條件,從而導致比特幣通貨膨脹和網路共識的破壞。 nvd.nist +3
此漏洞引發的雙重鍛造攻擊能夠造成大規模節點故障(拒絕服務),破壞網路信任,並顯著簡化51%攻擊。該漏洞的利用,最終依靠開發者社群和節點營運商的及時協調應對才得以解決,這表明即使協議關鍵部分存在單一缺陷,也可能危及大規模數位貨幣系統的存亡。
正因如此,CVE-2018-17144 的案例將永遠警醒整個科學和工程界:保障基礎密碼系統的安全需要持續的審計、所有共識不變式的形式化,以及對協議核心進行哪怕是最微小的改動時都必須格外謹慎。這個漏洞既是科學的,也是實踐的例證,它顯示一個漏洞如何成為對整個加密貨幣和去中心化網路經濟發動災難性攻擊的起點。總之,CVE-2018-17144 漏洞和 Double Forge 攻擊代表了一個足以破壞比特幣基本韌性原則的重大弱點。該漏洞允許在區塊內部重複支出,為通貨膨脹、大規模宕機(拒絕服務攻擊)和網路分裂鋪平了道路,在這種情況下,一個惡意挖出的區塊可能會摧毀數位價值和信任。密碼學界的及時集體響應表明,即使是一個看似微小的錯誤也可能引發連鎖反應,不僅威脅到單一節點,更威脅到整個加密貨幣基礎設施。 Double Forge 事件鮮明地提醒我們,持續審計、嚴謹的協議規範化以及對去中心化系統安全採取完全負責的態度至關重要。比特幣正從這場危機中變得更加強大,但 CVE-2018-17144 的故事將永遠銘記密碼學嚴謹性和科學分析在數位貨幣發展中的重要性。 bitcoincore +4
- https://nvd.nist.gov/vuln/detail/cve-2018-17144
- https://bitcoincore.org/en/2018/09/20/notice/
- https://polynonce.ru/%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C-cve-2018-17144-%D0%B201%
- https://bitcoinops.org/en/topics/cve-2018-17144/
- https://ko.com.ua/oshibka_v_kode_bitcoin_otkryvaet_malye_kriptovalyuty_dlya_atak_126113
- https://ru.wikinews.org/wiki/%D0%9A%D1%80%D0%B8%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B 0%D1%8F_%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C_%D0%B2_Bitcoin_Core
- https://www.cvedetails.com/cve/CVE-2018-17144/
- https://security-tracker.debian.org/tracker/CVE-2018-17144
- https://www.youtube.com/watch?v=4YZvlTqFXm8
- https://www.youtube.com/watch?v=5GD0kGT0SU0
參考書目
- 揭露 CVE-2018-17144 – Bitcoin Core bitcoincore
- 駭客新聞:比特幣核心軟體修復嚴重DDoS攻擊漏洞 thehackernews
- CVE 詳情:CVE-2018-17144 cvedetails
- Bitcoinops:CVE-2018-17144 主題 bitcoinops
- NVD:CVE-2018-17144 nvd.nist
- https://thehackernews.com/2018/09/bitcoin-core-software.html
- https://bitcoincore.org/en/2018/09/20/notice/
- https://bitcoinops.org/en/topics/cve-2018-17144/
- https://www.cvedetails.com/cve/CVE-2018-17144/
- https://nvd.nist.gov/vuln/detail/cve-2018-17144
- https://www.wallarm.com/what/log-forging-attack
- https://portswigger.net/web-security/access-control
- https://pentesterlab.com/blog/jwt-vulnerabilities-attacks-guide
- https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html
- https://arxiv.org/html/2404.18090v1
- https://www.startupdefense.io/cyberattacks/double-spending
- https://www.fragattacks.com
- https://www.nadcab.com/blog/double-spending-in-bitcoin
- https://www.vaadata.com/blog/symfony-security-best-practices-vulnerabilities-and-attacks/
- https://b2binpay.com/en/news/best-practices-for-crypto-safety-how-to-secure-your-digital-assets
- https://cacm.acm.org/research/exploiting-cross-layer-vulnerabilities-off-path-attacks-on-the-tcp-ip-protocol-suite/
- https://www.sciencedirect.com/science/article/pii/S2096720925001058
- https://www.openzeppelin.com/news/the-last-challenge-attack
- https://moldstud.com/articles/p-addressing-bitcoin-crypto-architecture-vulnerabilities
- https://support.omadanetworks.com/en/bulletin/13054/
- https://stackoverflow.com/questions/19396116/how-can-fopen-s-be-more-safe-than-fopen
- https://www.cyberdefensemagazine.com/bitcoin-core-team-fixes-a-critical-ddos-flaw-in-wallet-software/
- https://bitcoinops.org/en/topics/cve-2018-17144/
- https://bitcoincore.org/en/2018/09/20/notice/
- https://www.wiz.io/vulnerability-database/cve/cve-2024-35202
- https://bitcoincore.org/en/2024/10/08/disclose-blocktxn-crash/
- https://github.com/JinBean/CVE-Extension
- https://bitcoincore.org/en/2024/11/05/cb-stall-hindering-propagation/
- https://www.packtpub.com/de-ch/learning/tech-news/bitcoin-core-escapes-a-collapse-from-a-denial-of-service-vulnerability
- https://www.cvedetails.com/version/478256/
- https://bitcoin.org/en/full-node
- https://cryptodnes.bg/en/critical-vulnerability-in-bitcoin-core-threatens-over-13-of-nodes/
- https://www.cvedetails.com/version/1777959/Bitcoin-Bitcoin-Core-25.0.html
- https://github.com/bitcoin/bitcoin/issues/32955
- https://www.cvedetails.com/version/829186/Bitcoin-Bitcoin-Core-0.6.0.html
- https://www.reddit.com/r/Bitcoin/comments/15nbzgo/psa_severe_libbitcoin_vulnerability_if_you_used/
- https://github.com/bitcoin/bitcoin/issues/29525
- https://www.cvedetails.com/version/829239/Bitcoin-Bitcoin-Core-0.9.3.html
- https://nvd.nist.gov/vuln/detail/cve-2024-35202
- https://bitcoincore.org/en/security-advisories/
- https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
- https://www.cve.org/CVERecord/SearchResults?query=bitcoin
- https://bitcointalk.org/index.php?topic=5373821.0
- https://vulmon.com/searchpage?q=bitcoin+core
- https://github.com/bitcoin/bitcoin/issues/23620
- https://groups.google.com/g/bitcoindev/c/qyId8Yto45M
- https://security-tracker.debian.org/tracker/CVE-2018-17144
- https://github.com/advisories/GHSA-53v9-6jr7-7fxh
- https://www.reddit.com/r/Bitcoin/comments/17z1bi3/driving_me_crazy_bitcoin_core_sparrow_wallet/
- https://cve.circl.lu/cve/CVE-2018-17144
- https://www.reddit.com/r/Bitcoin/comments/7gii7x/security_risks_involved_using_bitcoin_core_wallet/
- https://www.zdnet.com/article/bug-in-bitcoin-code-also-opens-smaller-cryptocurrencies-to-attacks/
- https://www.cvedetails.com/version/829223/Bitcoin-Bitcoin-Core-0.8.6.html
- https://github.com/bitcoin/bitcoin/issues/19274
- https://nvd.nist.gov/vuln/detail/cve-2018-17144
- https://bitcoin.org/en/bitcoin-core/features/requirements
- https://linuxreviews.org/Serious_Buffer_Overflow_Vulnerability_In_The_Bitcoin_Core_Client_Disclosed
- https://www.reddit.com/r/BitcoinBeginners/comments/1j9vtwc/bitcoin_core_wallet_security_question/
- https://security.archlinux.org/CVE-2018-17144
- https://www.youtube.com/watch?v=5XgucdLE3gg
- https://chinggg.github.io/post/bitcoin-fuzz/
- https://www.cvedetails.com/cve/CVE-2018-17144/
- https://www.kicksecure.com/wiki/Bitcoin_Core
- https://vuldb.com/?id.4883
- https://www.youtube.com/watch?v=5GD0kGT0SU0
- https://bitcointalk.org/index.php?topic=5534968.0
- https://github.com/demining/Vulnerable-to-Debian-OpenSSL-bug-CVE-2008-0166
- https://dl.acm.org/doi/abs/10.3103/S0146411623080278
- https://www.reddit.com/r/Bitcoin/comments/cti5cx/what_do_i_need_to_keep_bitcoin_core_safe/
- https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-26.1.md
參考書目
- 揭露 CVE-2018-17144 – Bitcoin Core bitcoincore
- CVE 詳情:CVE-2018-17144 cvedetails
- Bitcoinops:CVE-2018-17144 主題 bitcoinops
- NVD:CVE-2018-17144 nvd.nist
- https://bitcoinops.org/en/topics/cve-2018-17144/
- https://bitcoincore.org/en/2018/09/20/notice/
- https://nvd.nist.gov/vuln/detail/cve-2018-17144
- https://www.cvedetails.com/cve/CVE-2018-17144/
- https://bitcoinops.org/en/topics/cve-2018-17144/
- https://bitcoincore.org/en/2018/09/20/notice/
- https://hackernoon.com/bitcoin-core-bug-cve-2018-17144-an-analysis-f80d9d373362
- https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
- https://www.cyberdefensemagazine.com/bitcoin-core-team-fixes-a-critical-ddos-flaw-in-wallet-software/
- https://par.nsf.gov/servlets/purl/10407054
- https://attacksafe.ru/ultra-2/
- https://bitcoincore.org/en/security-advisories/
- https://cwssp.uccs.edu/sites/g/files/kjihxj2466/files/2021-09/5_Security%20Analyses%20of%20Misbehavior%20Tracking%20in%20Bitcoin%20Network.pdf