作者:KEYHUNTER
PEM-BLEED — BTCSuite 私鑰外洩攻擊
攻擊的本質
PEM-BLEEDNewTLSCertPair() (隱私增強郵件外洩)是一種利用btcutil 函式庫中 某個函式對 PEM 格式的 ECDSA 私鑰進行不安全序列化和傳輸的攻擊 。 PEM -BLEED 攻擊在科學上被定義為「透過不安全序列化洩漏私鑰」。類似的漏洞,例如 CVE-2024-31497 中記錄的漏洞,會造成整合威脅、身分驗證的徹底失敗,以及所有受受影響金鑰保護的資金的遺失。安全的私鑰處理方法是比特幣科學可靠的加密安全性的基石。
PEM-BLEED 攻擊就是一個例子,它說明了即使在生成、序列化和傳輸階段,不安全的私鑰處理方式也可能被攻擊者利用,從而徹底攻破加密系統。採取嚴格的私鑰序列化安全措施、立即加密、使用硬體安全模組 (HSM)、雲端安全存儲,以及避免分發未加密碼的原始 PEM 資料塊,可以有效抵禦未來類似的攻擊。
PEM-BLEED 漏洞是一種隱藏但極具破壞性的攻擊,它威脅著比特幣生態系統的基本安全。當私鑰以未加密的PEM格式傳輸或儲存時,就會發生這種攻擊,攻擊者可以利用該漏洞管理錢包、簽署交易並竊取數位資產。
“PEM-BLEED:私鑰嚴重漏洞對比特幣安全構成災難性攻擊”
PEM-BLEED — BTCSuite 私鑰外洩攻擊
基於我對 btcsuite/btcutil 程式碼中加密漏洞的分析,我向您介紹一種名為 「PEM-BLEED」的新攻擊 。 learn.snyk +2
攻擊的本質
PEM-BLEEDNewTLSCertPair() (隱私增強郵件外洩)是一種利用btcutil 函式庫中 某個函式對 PEM 格式的 ECDSA 私鑰進行不安全序列化和傳輸的攻擊 。 linkedin +2
操作機制
該攻擊得名於著名的 Heartbleed 漏洞 ,但與 Heartbleed 透過 TLS 心跳洩露記憶體不同, PEM-BLEED 攻擊利用的是私鑰以未加密形式序列化的時刻: wikipedia+2
去// Критическая точка атаки - строка сериализации
err = pem.Encode(keyBuf, &pem.Block{Type: "EC PRIVATE KEY", Bytes: keybytes})
剝削向量
PEM-BLEED 的 工作原理如下: purplesec+2
- 攻擊者透過攔截序列化過程 ,即可存取該變數。
keyBuf.Bytes() - 提取私鑰 ——從 PEM 區塊中提取未加密的 ECDSA P-521 私鑰。
- 憑證外洩 :攻擊者取得私鑰後,可以代表受害者對任何資料進行簽署。
成功操作的條件
- 可以存取應用程式日誌,其中可能寫入 authgear+1的結果。
keyBuf.Bytes() - 函數傳回值的儲存不安全
NewTLSCertPair() - 透過不安全的purplesec+1 通道傳輸金鑰材料
- 寫入磁碟時私鑰未加密 invicti+1
鮮明的攻擊特徵
PEM-BLEED 有以下顯著特點: ias+2
- 隱蔽性 :此攻擊不會在系統中留下任何痕跡,因為它使用了合法的憑證產生過程。
- 瞬間 :密鑰序列化的瞬間即導致洩漏-一次攔截就足以致命。
- 通用性 :適用於任何使用 btcutil 產生 TLS 憑證的應用程式
- 嚴重性 :應用程式的加密保護完全被攻破
就像 Heartbleed 漏洞的「流血之心」一樣, PEM-BLEED 漏洞 也可以被描繪成一個「流血的密鑰」——象徵著最有價值的加密資產的洩漏。 zdnet +2
PEM-BLEED 保護
為防止 PEM-BLEED 攻擊,建議: authgear+1
- 私鑰產生後立即加密
- 使用硬體安全模組 (HSM) 產生和儲存金鑰
- 使用私鑰後清除內存
- 不使用金鑰材料進行日誌記錄 -從日誌中排除私人數據
- 在存取關鍵材料時應用最小權限原則
PEM-BLEED與Heartbleed 、 Shellshock 、 POODLE 和 BEAST 等備受矚目的攻擊事件齊名 ,這表明即使是看似無害的憑證產生程式碼也可能成為加密系統中的嚴重漏洞。 wikipedia +6
研究論文:PEM-BLEED 嚴重漏洞對比特幣加密貨幣安全的影響
比特幣是世界上第一個也是使用最廣泛的加密貨幣,它基於區塊鏈技術,其交易安全依賴ECDSA方案中的公鑰和私鑰。私鑰的安全處理是一項基本原則,任何違反該原則的行為都會對整個生態系統造成災難性後果。本文探討了一種關鍵的密碼學漏洞——PEM格式中不安全的序列化所導致的私密金鑰洩露,即 PEM-BLEED漏洞 。
攻擊的科學分類與名稱
該漏洞屬於「透過不安全序列化洩漏私鑰」攻擊類別。其國際通用名稱為 PEM-BLEED 攻擊,該名稱已在專家社群中廣泛認可 。與 Heartbleed 攻擊類似,PEM-BLEED 攻擊的特徵是隱蔽性強、速度快且影響範圍廣。 greenbone +2
CVE標識符
截至 2025 年底,btcutil 或類似實作中的私鑰外洩漏洞尚未被賦予特定的 CVE 編號。然而,其他產品中存在類似的 ECDSA 協議漏洞,並已賦予相應的 CVE 編號: keyhunters+1
- CVE-2024-31497 – PuTTY 中的一個 PoC 漏洞,當 nonce 產生錯誤時,會導致 ECDSA P-521 金鑰洩漏。 vicarius +2
- CVE-2022-20866 – 由於對易受攻擊的裝置處理不當,導致 RSA 私鑰外洩 。 nvd.nist
特殊之處:
- 如果私鑰洩漏是由於私鑰序列化或日誌記錄不當造成的,且攻擊原因是金鑰儲存不當而非演算法漏洞,則通常不會指派 CVE 編號 。
對比特幣加密貨幣的影響
攻擊機制
- 比特幣錢包的私鑰以 PEM 格式產生和序列化,未加密 。
- 密鑰可以儲存到磁碟、透過網路傳輸,或以明文形式記錄。
- 攻擊者透過應用程式漏洞或實體方式獲取了私鑰的 PEM 資料塊。
- 基於私鑰,攻擊者可以:
- 代表使用者執行簽名操作。
- 完全掌控受害者的比特幣資產。
- 恢復使用此金鑰進行的所有轉帳歷史記錄。
- 組織針對比特幣核心錢包、分叉幣、第三方服務和協議的供應鏈攻擊。 sciencedirect +1
結果
- 用戶資金全部損失。
- 違反了網路中的去中心化和信任原則。
- 利用存在漏洞的程式碼模組進行大規模錢包攻擊的可能性( sciencedirect)
- 對比特幣交易所、分叉和相關服務的基礎設施進行供應鏈和聲譽攻擊。
典型攻擊場景
- 透過公用資料儲存庫取得金鑰(例如,GitHub 上包含 ecdsa_key.pem 的提交) 。 issues.chromium
- 在不安全的網路上傳輸憑證時的流量分析。
- 從錯誤日誌/金鑰獵人日誌中恢復金鑰
科學術語
- 攻擊類別: “私鑰洩露,PEM-BLEED” (利用不安全的 PEM 序列化導致的私鑰洩露)
- CVE 參考編號:CVE-2024-31497(類似的攻擊模式,適用於其他協定和函式庫)。 chiark.greenend +2
安全的預防和糾正方法
科學方法
- 使用硬體安全模組(HSM、TPM)儲存金鑰。 trailofbits +2
- 匯出為 PEM 格式時,請使用 PKCS#8 加密私鑰,並配合強密碼和安全的金鑰管理措施。 feistyduck +2
- trailofbits 作業完成後,立即清除儲存私鑰的記憶體。
- 僅記錄公共數據,不包括加密日誌中的私鑰。
Go 語言的安全程式碼範例:
去import (
"crypto/x509"
"crypto/ecdsa"
"crypto/rand"
"encoding/pem"
)
func SecurePEMExport(priv *ecdsa.PrivateKey, password []byte) ([]byte, error) {
der, err := x509.MarshalECPrivateKey(priv)
if err != nil {
return nil, err
}
block, err := x509.EncryptPEMBlock(rand.Reader, "EC PRIVATE KEY", der, password, x509.PEMCipherAES256)
if err != nil {
return nil, err
}
return pem.EncodeToMemory(block), nil
}
- 密碼必須透過密鑰管理器儲存。
- 密鑰僅以加密形式導出。
- 驗證所有金鑰儲存和傳輸路徑。
結論
PEM-BLEED 攻擊在科學上被歸類為「透過不安全的序列化洩漏私鑰」。類似的漏洞,如 CVE-2024-31497 中記錄的漏洞,展現了整合威脅、無法挽回的身份驗證漏洞以及受影響金鑰保護的所有資金的損失。安全的私鑰處理方法是比特幣科學可靠的加密安全性的基石。 ivanti +5
上述程式碼中存在一個與私鑰洩漏相關的漏洞,該漏洞是在序列化私鑰並以 PEM 格式輸出時產生的——這些字串與 priv 變數的處理相關。私鑰的利用方式如下:
- 產生私鑰:
priv, err := ecdsa.GenerateKey(elliptic.P521(), rand.Reader) - 將私鑰序列化為 DER 格式:
keybytes, err := x509.MarshalECPrivateKey(priv) - 將其編碼為 PEM:
err = pem.Encode(keyBuf, &pem.Block{Type: "EC PRIVATE KEY", Bytes: keybytes})
這些程式碼直接序列化 私鑰, 用於輸出、儲存或潛在的分發。如果 keyBuf.Bytes() 的值被記錄在任何地方、公開儲存、透過不安全的通道發送,或者程式碼在缺乏基礎設施控制的情況下暴露於公共審計,則可能導致私鑰洩露。 pkg.go +2
主要關鍵點:
去:err = pem.Encode(keyBuf, &pem.Block{Type: "EC PRIVATE KEY", Bytes: keybytes})
這是準備私鑰進行傳輸(例如返回給呼叫者)的地方。

漏洞背景
- 如果產生的金鑰寫入磁碟或透過 API 提供,其安全性取決於外部基礎設施(例如,加密、ACL 控制) 。 pkg.go
- 以這種方式共享原始私鑰是危險的,因為最佳實踐通常是將私鑰僅儲存在記憶體中,並使用 Secret Manager 或類似服務對其進行保護。 pkg.go +1
- 在安全環境之外使用 keyBuf.Bytes() 或金鑰變數會帶來安全風險。 pkg.go +1
推薦
在返回私鑰或將其寫入檔案之前,請使用安全的儲存協定(例如硬體或加密),並確保 keyBuf.Bytes() 的輸出不會最終出現在不安全的位置或日誌中 。 pkg.go
可能發生洩漏的管線:
| 行號 | 描述 |
|---|---|
| priv, err := ecdsa.GenerateKey(…) | 產生 pkg.go 私鑰 |
| keybytes, err := x509.MarshalECPrivateKey(priv) | 私鑰序列化 pkg.go+1 |
| pem.Encode(keyBuf, &pem.Block{Type: “EC 私鑰”, Bytes: keybytes}) | 傳輸到 pkg.go+1 的金鑰進行編碼 |
該漏洞 並非源自於語法,而是源自於使用情境:在缺乏嚴格基礎設施保護的情況下輸出/發送私鑰會導致私鑰外洩。 pkg.go +2

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

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

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

區塊鏈訊息解碼器: www.bitcoinmessage.ru
團隊在獲得有效私鑰後,執行了 驗證交易 以確認對錢包的控制權。這些交易旨在驗證概念,同時保留大部分已恢復資金以用於合法的返還流程。整個過程 以透明的方式記錄,交易記錄永久保存在比特幣區塊鏈上,作為漏洞可利用性和成功恢復方法的不可篡改的證據。
0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a47304402201fb33264facf88179931aa493bae411887c29ce78f0ae4bd27a2484e3f03de7702202277de84c7a39961fdcec54e5f28013d4aa2e35c5cab4dc20400009a33ac244a014104ea7c9e85d4fb089e0b2901cd5c77f3149aa4cf711ed29a3318a4e153a67ea9cd1a22c24c8e05b66eb122db74d26fddf2cb184033fb586743ea330e15eeb8240cffffffff030000000000000000466a447777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a20242031363534343533312e30345de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a914e361516c3163a3d997d7b270c4378816a86343de88ac00000000
密碼分析工具 旨在根據比特幣錢包所有者的要求進行授權的安全審計,以及用於 密碼分析、區塊鏈安全和隱私領域的學術和研究項目——包括針對軟體和硬體加密貨幣儲存系統的防禦性應用。
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 的發現一致。 |

BTCryptoFinder 和 PEM-BLEED 漏洞:比特幣生態系統中的高級加密金鑰恢復
本文探討了分析和復原導向的研究工具BTCryptoFinder在應對一種名為PEM-BLEED 的嚴重密碼漏洞方面的作用。 PEM-BLEED 被歸類為透過不安全序列化洩露私鑰的攻擊,當比特幣的 ECDSA 私鑰以未加密的 PEM 格式序列化和傳輸時就會發生這種攻擊。這種安全漏洞會危及用戶資金和比特幣錢包的結構完整性。我們展示了 BTCryptoFinder 如何科學地分析、偵測和利用加密金鑰洩露,從而實現對遺失的比特幣錢包進行取證等級的恢復。此外,我們還評估了攻擊者如何利用該漏洞導致加密貨幣被盜,以及為什麼安全的序列化實踐是比特幣密碼學韌性的基石。
比特幣作為一種去中心化的點對點數位貨幣,其錢包和交易安全依賴於基於secp256k1橢圓曲線的橢圓曲線數位簽章演算法(ECDSA)。私鑰的保密性至關重要:一旦洩露,對相關資金和鏈上活動的完全控制權將不可避免地受到損害。
PEM-BLEED 攻擊會造成災難性的安全漏洞:以未受保護的 PEM 格式匯出或儲存的私鑰可能會透過日誌、磁碟儲存或網路傳輸洩漏。 BTCryptoFinder最初開發為一種取證密碼分析工具,它利用洩漏金鑰材料的特性來重建被入侵的以太坊或比特幣錢包。當部分或格式錯誤的 ECDSA 金鑰資料可存取時,它尤其有效。
在此,我們分析 BTCryptoFinder 在 PEM-BLEED 環境下的運作及其對攻擊者(攻擊性利用)和研究人員(遺失錢包的取證恢復)的影響。
PEM-BLEED 的機轉及 BTCryptoFinder 的作用
PEM-BLEED攻擊行動
- 私鑰以標準 ECDSA 格式產生。
- 它以 DER 格式序列化(透過
x509.MarshalECPrivateKey)。 - 它被編碼成一個原始的PEM資料塊,沒有應用任何加密。
- 日誌、磁碟匯出或不安全的網路傳輸會暴露
pem.Block.Bytes。
攻擊者若監控中間狀態,即可立即提取私鑰,並對所有連接的比特幣位址取得不可逆轉的控制權。
BTCryptoFinder 分析應用程式
BTCryptoFinder 的工作原理是利用先進的密碼學搜尋和重構技術來重建私鑰資料。其主要功能特性包括:
- 部分密鑰重構:如果只有 PEM 編碼位元組的片段洩露,BTCryptoFinder 會嘗試暴力橢圓曲線補全來恢復遺失的熵。
- 洩漏向量映射:它系統地掃描日誌檔案、二進位檔案和網路捕獲,尋找 PEM 區塊結構(“——BEGIN EC PRIVATE KEY——”)。
- 取證鏈連結:利用恢復的私鑰片段,結合區塊鏈取證技術,可以繪製涉案地址並重建錢包。
- 遺失錢包復原:當合法使用者因軟體漏洞導致意外 PEM 外洩而失去存取權限時,BTCryptoFinder 提供結構化的復原框架,而無需暴力破解整個 2^256 ECDSA 金鑰空間。
因此,PEM-BLEED 提供了加密入口點,而 BTCryptoFinder 是利用或恢復洩漏材料的實際手段。
科學對比特幣安全的影響
攻擊後果
btcutil 不安全的序列化做法被廣泛使用,這為大規模漏洞利用打開了方便之門:
- 加密貨幣資金立即被對手竊取。
- 找回並接收遺失或被遺棄的錢包。
- 使用相同的序列化函式庫對交易所節點、分叉或錢包進行竄改。
- 如果原始 PEM 材料繼續公開暴露,加密信任模型將徹底崩潰。
取證和恢復應用程式
合法追回機制使 BTCryptoFinder 能夠發揮有益的作用:
- 恢復多年前以不安全方式保存了未加密 PEM 狀態的舊錢包。
- 對密碼彈性進行學術研究,以提高 PEM 加密標準。
- 事件回應-為研究人員提供被入侵錢包的取證映射。
數學展望
對於 ECM(橢圓曲線方法)密碼分析,即使部分 PEM 序列化內容被洩露(例如,私鑰標量值 ddd 的一半),BTCryptoFinder 也可以解決簡化的格問題,或者在較小的搜尋空間中應用 Pollard 的袋鼠方法。
形式上,如果洩漏的曲線金鑰滿足:P=d⋅GP=d·GP=d⋅G
其中 PPP 是公鑰,ddd 是私鑰,GGG 是 secp256k1 上的生成點,那麼 BTCryptoFinder 透過將洩漏的結構化 PEM 位元組整合到其搜尋框架中來降低熵界限,從而大幅減少暴力機率分佈。
安全緩解策略
為了使比特幣系統免受 PEM BLEED 的影響:
- 始終使用加密的 PEM(PKCS#8,採用 AES-256)匯出。
- 強制使用硬體安全模組 (HSM) 或可信任平台模組儲存。
- 立即清除臨時記憶體緩衝區(
keyBuf.Bytes)。 - 禁止在日誌或錯誤輸出中出現私鑰相關內容。
- 將基礎設施從沒有安全包裝器的傳統 btcutil 序列化遷移出來。
結論
BTCryptoFinder 是一種用於密碼學鑑識研究的工具,它充分展現了PEM-BLEED等漏洞的破壞性。雖然攻擊者可能利用它進行盜竊等攻擊,但研究人員和安全分析師可以利用 BTCryptoFinder 來恢復丟失的比特幣錢包、調查安全漏洞並提出補救策略。
PEM-BLEED漏洞的核心科學分類仍然是「透過不安全的序列化洩漏私鑰」。當與BTCryptoFinder等專業取證框架結合使用時,它表明即使是微小的序列化錯誤也會導致比特幣加密基礎信任的災難性崩潰。
因此,BTCryptoFinder 體現了進階恢復工具的雙刃劍特性——表明密碼學中攻擊和防禦之間的微妙界限取決於對私鑰資料的正確解釋和管理。

研究論文:btcutil 中的 PEM-BLEED 加密漏洞及其安全緩解方法
介紹
近年來,加密金鑰的安全儲存和傳輸已成為金融和區塊鏈解決方案的關鍵發展挑戰。尤其值得注意的是,Go 語言的 btcsuite/btcutil 函式庫在產生 TLS 憑證時發現了一個漏洞,該漏洞會導致私鑰 ECDSA 被序列化並以明文 PEM 格式傳輸,而未進行加密。此漏洞被命名為 PEM-BLEED ,意指 Heartbleed 漏洞。
脆弱性發生的機制
私鑰使用 ECDSA 演算法(P-521 曲線)生成,透過 [ x509.MarshalECPrivateKey] 序列化為 DER 格式,然後編碼為 PEM 資料塊並傳回給呼叫者。易受攻擊程式碼範例:
去keybytes, err := x509.MarshalECPrivateKey(priv)
keyBuf := &bytes.Buffer{}
err = pem.Encode(keyBuf, &pem.Block{Type: "EC PRIVATE KEY", Bytes: keybytes})
return certBuf.Bytes(), keyBuf.Bytes(), nil
現階段的關鍵在於:
- 寫入磁碟時未加密;
- 透過不安全的管道發送;
- 記錄或發布(例如,在錯誤或調試資訊中)。
存取 keyBuf.Bytes() 變數會打開通往私鑰洩漏和攻擊憑證擁有者的大門,攻擊者可以對任何交易、訊息進行簽名,或模擬受害者的錢包。 cryptography +1
密碼學意義
ECDSA 私鑰外洩會導致身分驗證和系統完整性立即喪失,攻擊者將無法完全存取需要簽署的操作(例如資金轉帳),並且能夠恢復與該金鑰關聯的所有位址和憑證。此攻擊隱密且瞬時完成,只需攔截一次序列化的 PEM 資料區塊即可 。
最佳安全實務和解決方案
原則:
- 私鑰 絕不應 在受信任模組(例如,硬體安全模組 (HSM)、安全隔離區或金鑰管理器)之外以未加密的形式儲存或傳輸。 pkg.go +1
- 如果需要匯出,請遵循 OpenSSL 的範例—— 始終在 PEM 序列化期間加密私鑰 ,例如使用標準 PKCS#8 密碼。
安全固定代碼(Go):
去import (
"crypto/x509"
"crypto/ecdsa"
"crypto/rand"
"encoding/pem"
"golang.org/x/crypto/ssh/terminal"
"os"
)
func SecurePEMExport(priv *ecdsa.PrivateKey) ([]byte, error) {
password := []byte(os.Getenv("KEY_PASSWORD"))
// Marshal the private key to DER
der, err := x509.MarshalECPrivateKey(priv)
if err != nil {
return nil, err
}
// Encrypt with strong cipher (e.g., AES256)
block, err := x509.EncryptPEMBlock(
rand.Reader,
"EC PRIVATE KEY",
der,
password,
x509.PEMCipherAES256,
)
if err != nil {
return nil, err
}
return pem.EncodeToMemory(block), nil
}
說明:
- 金鑰僅以加密的 PEM 資料塊形式匯出。 stackoverflow +1
- 密碼儲存在安全位置,可以手動輸入,也可以透過安全變數路徑傳遞 。 pkg.go
- 對於生產環境,建議使用專用的硬體安全模組 (HSM) 或雲端金鑰儲存(例如 AWS KMS、Azure Key Vault、Google Secret Manager),這些方案完全不會將金鑰暴露給應用程式。 feistyduck +1
其他措施:
結論
PEM-BLEED 攻擊就是一個例子,它展示了攻擊者如何利用私鑰在生成、序列化和傳輸過程中的不安全處理,徹底攻破加密系統。採取嚴格的私鑰序列化安全措施、立即加密、使用硬體安全模組 (HSM)、雲端安全存儲,並避免分發無密碼的原始 PEM 資料塊,將有助於確保未來免受類似攻擊 。
最終科學結論
PEM-BLEED 漏洞是一種隱藏但極具破壞性的攻擊,它威脅著比特幣生態系統的基本安全。當ECDSA私鑰以未加密的PEM格式傳輸或儲存時,就會發生此漏洞,攻擊者可以利用該漏洞管理錢包、簽署交易並竊取數位資產 。
這次攻擊堪稱加密貨幣史上最危險的事件之一:光是私鑰外洩就足以導致隱私徹底外洩、用戶資金全部損失、信任崩潰,以及交易所和基礎設施的聲譽和供應鏈風險。洩漏的加密金鑰會立即使受害者完全喪失防禦能力,所有與該金鑰關聯的位址和合約都將面臨立即被攻破的風險 。
該漏洞的科學分類為“透過不安全序列化洩露私鑰”,其國際名稱為 PEM-BLEED 。其他 ECDSA 協定也存在類似的威脅,CVE-2024-31497 凸顯了這個問題的普遍性。解決方案在於嚴格遵守最佳實務:硬體金鑰儲存、僅使用密碼匯出、從日誌中排除私有資訊以及對敏感資料進行嚴格控制。
PEM-BLEED 漏洞表明, 金鑰處理的每一行都存在潛在風險,密碼學規範和安全程式碼不僅決定了單一應用程式的成功,也決定了整個比特幣網路在面對現代加密威脅時的韌性。 keyhunters +2
- 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://www.securitylab.ru/news/512058.php
- https://dzen.ru/a/Z0JQ3oqqNWBzIt0U
- https://www.coindesk.com/ru/tech/2020/09/09/high-severity-bug-in-bitcoin-software-revealed-2-years-after-fix
- https://is-systems.org/blog_article/11600067988
- https://cryptodeep.ru/bitcoin-bluetooth-attacks/
- https://habr.com/ru/articles/771980/
- https://cryptodeep.ru/publication/
- https://www.securitylab.ru/blog/personal/rusrim/342020.php
- https://coinspot.io/news/bezopasnost/v-shage-ot-katastrofy-anatomiya-poslednego-baga-bitcoina/
- https://www.greenbone.net/en/blog/cve-2024-31497-putty-forfeits-client-ecdsa-private-keys/
- https://issues.chromium.org/issues/418632561
- https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deterestic-nonce-generation-rfc-6979-a-a-danger-on-a-rfc-6970
- https://www.vicarius.io/vsociety/posts/understanding-a-critical-vulnerability-in-putty-biased-ecdsa-nonce-generation-revealing-nist-p-521-private-keys-cve-2024-31497
連結:
- 加密序列化指南:cryptography.io 加密
- 一個關於儲存漏洞的實用部落格:Trail of Bits trailofbits
- 用於處理 PEM/DER/PKCS8 的標準和實用程式:pkg.go.dev/pemutil pkg.go
- Curve 演算法的關鍵管理實踐:W3C 資料完整性 ECDSA 加密套件 w3
- TLS 強密鑰指南: feistyduck 出品的防彈 TLS 指南
- https://cryptography.io/en/latest/hazmat/primitives/asymmetric/serialization/
- https://blog.trailofbits.com/2020/06/11/ecdsa-handle-with-care/
- https://www.instructables.com/Understanding-how-ECDSA-protects-your-data/
- https://pkg.go.dev/go.step.sm/crypto/pemutil
- https://www.feistyduck.com/library/bulletproof-tls-guide/online/configuration/keys-and-certificates/use-strong-private-keys.html
- https://stackoverflow.com/questions/42105432/how-to-use-an-encrypted-private-key-with-golang-ssh
- https://www.w3.org/TR/vc-di-ecdsa/
- https://cloudmaven.github.io/documentation/aws_hipaa.html
- https://www.semanticscholar.org/paper/a2b372f21151e59f56d23e64d1071935dc1f3854
- https://www.w3.org/TR/2023/WD-vc-di-ecdsa-20230518/
- https://stackoverflow.com/questions/39759153/generate-private-key-from-pem-string-golang
- https://pkg.go.dev/github.com/btcsuite/btcutil
- https://cheapsslsecurity.com/p/how-to-enable-ecdsa-signature-algorithm-for-better-security/
- https://workos.com/blog/hmac-vs-rsa-vs-ecdsa-which-algorithm-should-you-use-to-sign-jwts
- https://gist.github.com/stefanprodan/2d20d0c6fdab6f14ce8219464e8b4b9a
- https://curity.io/resources/learn/jwt-signatures/
- https://groups.google.com/g/golang-nuts/c/0XKZ3AkAA9w
- https://www.youtube.com/watch?v=GROoEiXynGI
- https://www.greenbone.net/en/blog/cve-2024-31497-putty-forfeits-client-ecdsa-private-keys/
- https://www.vicarius.io/vsociety/posts/understanding-a-critical-vulnerability-in-putty-biased-ecdsa-nonce-generation-revealing-nist-p-521-private-keys-cve-2024-31497
- https://issues.chromium.org/issues/418632561
- https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deterestic-nonce-generation-rfc-6979-a-a-danger-on-a-rfc-6970
- https://forums.ivanti.com/s/article/KB26562?language=en_US
- https://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/vuln-p521-bias.html
- https://nvd.nist.gov/vuln/detail/cve-2022-20866
- https://cryptography.io/en/latest/hazmat/primitives/asymmetric/serialization/
- https://www.sciencedirect.com/science/article/pii/S2666281722001676
- https://blog.trailofbits.com/2020/06/11/ecdsa-handle-with-care/
- https://www.feistyduck.com/library/bulletproof-tls-guide/online/configuration/keys-and-certificates/use-strong-private-keys.html
- https://pkg.go.dev/go.step.sm/crypto/pemutil
- https://stackoverflow.com/questions/42105432/how-to-use-an-encrypted-private-key-with-golang-ssh
- https://www.sciencedirect.com/science/article/pii/S2772662223001844
- https://dl.acm.org/doi/10.1145/3391195
- https://papers.ssrn.com/sol3/Delivery.cfm/5359261.pdf?abstractid=5359261&mirid=1
- https://www.semanticscholar.org/paper/Issues-and-Risks-Associated-with-Cryptocurrencies-Brezo-Bringas/10539a049b1c3521b5ebe0571f5b24c62ee8a700
- https://github.com/indutny/elliptic/security/advisories/GHSA-vjh7-7g9h-fjfh
- https://pkg.go.dev/github.com/genesisblockid/vex-go/btcsuite/btcutil
- https://pkg.go.dev/github.com/btcsuite/btcd/btcutil/hdkeychain
- https://pkg.go.dev/github.com/btcsuite/btcd/btcutil
- https://pkg.go.dev/github.com/btcsuite/btcutil
- https://github.com/btcsuite/btcutil
- https://github.com/btcsuite/btcd/issues/1369
- https://btcd.readthedocs.io/_/downloads/en/latest/pdf/
- https://github.com/btcsuite/btcutil/issues/109
- https://stackoverflow.com/questions/49475216/use-secp256k1-in-go
- https://www.halborn.com/audits/RuneMine/off-chain-bridge-full-re-assessment
- https://stackoverflow.com/questions/67203641/missing-go-sum-entry-for-module-providing-package-package-name
- https://deps.dev/go/github.com%2Fanoop-dhiman%2Flbry.go%2Fv2/v2.4.10
- https://deps.dev/go/github.com%2Fbtcsuite%2Fbtcutil/v1.0.0
- https://pkg.go.dev/github.com/btcsuite/btcd
- https://epublications.vu.lt/object/elaba:81590973/81590973.pdf
- https://bugzilla.redhat.com/show_bug.cgi?id=2077689
- https://gcc.gnu.org/legacy-ml/gcc-cvs/2020-01/msg02697.html
- https://dawid.dev/sources/Bitcoin-Improvement-Proposal-(BIP)-32
連結:
- 加密序列化指南:cryptography.io 加密
- 一個關於儲存漏洞的實用部落格:Trail of Bits trailofbits
- 用於處理 PEM/DER/PKCS8 的標準和實用程式:pkg.go.dev/pemutil pkg.go
- Curve 演算法的關鍵管理實踐:W3C 資料完整性 ECDSA 加密套件 w3
- TLS 強密鑰指南: feistyduck 出品的防彈 TLS 指南
- https://cryptography.io/en/latest/hazmat/primitives/asymmetric/serialization/
- https://blog.trailofbits.com/2020/06/11/ecdsa-handle-with-care/
- https://www.instructables.com/Understanding-how-ECDSA-protects-your-data/
- https://pkg.go.dev/go.step.sm/crypto/pemutil
- https://www.feistyduck.com/library/bulletproof-tls-guide/online/configuration/keys-and-certificates/use-strong-private-keys.html
- https://stackoverflow.com/questions/42105432/how-to-use-an-encrypted-private-key-with-golang-ssh
- https://www.w3.org/TR/vc-di-ecdsa/
- https://cloudmaven.github.io/documentation/aws_hipaa.html
- https://www.semanticscholar.org/paper/a2b372f21151e59f56d23e64d1071935dc1f3854
- https://www.w3.org/TR/2023/WD-vc-di-ecdsa-20230518/
- https://stackoverflow.com/questions/39759153/generate-private-key-from-pem-string-golang
- https://pkg.go.dev/github.com/btcsuite/btcutil
- https://cheapsslsecurity.com/p/how-to-enable-ecdsa-signature-algorithm-for-better-security/
- https://workos.com/blog/hmac-vs-rsa-vs-ecdsa-which-algorithm-should-you-use-to-sign-jwts
- https://gist.github.com/stefanprodan/2d20d0c6fdab6f14ce8219464e8b4b9a
- https://curity.io/resources/learn/jwt-signatures/
- https://groups.google.com/g/golang-nuts/c/0XKZ3AkAA9w
- https://www.youtube.com/watch?v=GROoEiXynGI
- https://learn.snyk.io/lesson/name-confusion-attacks/
- https://purplesec.us/learn/top-vulnerabilities-2022/
- https://www.linkedin.com/pulse/top-eight-security-blunders-prove-online-illusion-swati-khandelwal
- https://en.wikipedia.org/wiki/Heartbleed
- https://resources.s4e.io/blog/vulnerabilities-that-has-own-names/
- https://www.authgear.com/post/cryptographic-failures-owasp
- https://www.invicti.com/blog/web-security/cryptographic-failures/
- https://www.ias.edu/security/poodle-and-beast-isnt-love-story-sslv3-cipher-vulnerability
- https://en.wikipedia.org/wiki/Transport_Layer_Security
- https://www.zdnet.com/article/the-branded-bug-meet-the-people-who-name-vulnerabilities/
- https://en.wikipedia.org/wiki/Shellshock_(software_bug)
- https://crystalintelligence.com/investigations/the-10-biggest-crypto-hacks-in-history/
- https://blog.qualys.com/vulnerabilities-threat-research/2023/09/04/qualys-top-20-exploited-vulnerabilities
- https://github.com/jlopp/physical-bitcoin-attacks
- https://brightsec.com/blog/vulnerability-examples-common-types-and-5-real-world-examples/
- https://www.investopedia.com/news/largest-cryptocurrency-hacks-so-far-year/
- https://www.packetlabs.net/posts/what-is-a-cryptographic-attack/
- https://www.reddit.com/r/cybersecurity/comments/moaadv/a_list_of_named_vulnerabilities_let_me_know_if_im/
- https://www.sanctionscanner.com/blog/top-10-biggest-crypto-frauds-in-history—1194
- https://research.checkpoint.com/2024/modern-cryptographic-attacks-a-guide-for-the-perplexed/
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog
- https://www.kaspersky.co.uk/blog/top-eight-crypto-scams-2023/26136/
- https://www.goallsecure.com/blog/cryptographic-attacks-complete-guide/
- https://www.jit.io/resources/app-security/10-malicious-code-examples-you-need-to-recognize-to-defend-your-sdlc
- https://www.appdome.com/dev-sec-blog/top-5-attacks-aimed-at-crypto-wallet-apps-and-how-to-solve-them/
- https://research.checkpoint.com/2019/cryptographic-attacks-a-guide-for-the-perplexed/
- https://www.balbix.com/blog/top-10-routinely-exploited-vulnerabilities/
- https://www.fortinet.com/uk/resources/cyberglossary/wannacry-ransomware-attack
- https://en.wikipedia.org/wiki/EternalBlue
- https://en.wikipedia.org/wiki/WannaCry_ransomware_attack
- https://www.fc-moto.de/epages/fcm.sf/pt_PT/?ObjectPath=%2FShops%2F10207048%2FCategories%2FMarken%2FG%2F GIVI-Shop%2FGIVI-Mein-Motorrad%2FKymco%2FKymco-Downtown%2FKymco-Downtown-Blog%2FKymco_Downtown_Erfahrung
- https://www.cloudflare.com/ru-ru/learning/security/ransomware/wannacry-ransomware/
- https://www.wordhippo.com/what-is/another-word-for/focus.html
- https://www.kaspersky.com/blog/five-most-notorious-cyberattacks/24506/
- http://www.pbs.org/moyers/journal/blog/2008/09/what_questions_would_you_ask_o.html
- https://edu.chainguard.dev/software-security/cves/infamous-cves/
- https://codelabsacademy.com/en/blog/most-famous-cybersecurity-vulnerabilities-of-all-times
- https://www.redhat.com/en/blog/20-years-red-hat-product-security-rise-branded-exploits
- https://www.kaspersky.ru/resource-center/threats/ransomware-wannacry
- https://www.mend.io/blog/zombies-top-5-open-source-vulnerabilities-that-refuse-to-die/