硬件钱包制造商兼OneKey应用开发者OneKey公司的创始人王一石于2026年8月27日在社交平台X上表示,OneKey Anzen团队在实验室条件下成功对Ledger版本1.22.1的以太坊应用进行了交易替换攻击。Ledger的子公司Donjon于2026年8月27日在同一社交平台回应称,没有硬件钱包用户因此受到影响,所述情况是对一个已修复漏洞的实验室演示。
据王一石称,发现的问题存在于设备屏幕交易显示逻辑与交易缓冲区之间的竞态条件。攻击者能够在用户查看屏幕上合法操作的同时,覆写等待签名的交易。最终导致屏幕上显示交易A,用户确认的也是它,但设备实际签名的却是用户未曾看到的完全不同的交易B。为了验证攻击,OneKey团队自行编译了版本1.22.1的ELF文件。王一石指出,Ledger已在应用程序版本1.22.3中修复了该漏洞,并建议持有旧版本的用户进行更新。
在其帖子的社区评论中澄清,发现的错误与研究员TestMachine于2026年8月22日公开披露的漏洞相符,并且Ledger实际上在版本1.22.2而非1.22.3中就已修复了它。
TestMachine的披露
研究员TestMachine于2026年8月22日报告称,该漏洞是其离线扫描工具Azimuth在检查Ledger以太坊应用时发现的。该错误在Flex设备上得到确认,受影响的是一段通用的APDU命令处理和接口代码,该代码也用于Nano X、Nano S Plus、Stax和Apex型号。在发布时,修复后的版本1.22.2尚未发布。两天后,即8月24日,TestMachine注意到GitHub上出现了标记为「安全修复」的1.22.2版本,并建议用户通过Ledger Live更新应用。
Ledger Donjon的立场
据Donjon声明,没有记录到真实用户被攻击的案例。该问题是在内部安全流程中发现的,并在2026年8月13日发布的1.22.2版本中已修复,即在OneKey发帖之前。公司未找到该漏洞在现实中被利用的证据。建议用户将应用程序更新至最新版本,以太坊应用至少更新至1.22.3版本,并通过Ledger Wallet更新,并务必在设备本身上核对应用程序的确切版本。
官方安全公告LSB 023
在2026年8月27日发布的官方Ledger安全公告LSB 023中描述了此类漏洞:当用户在屏幕上查看操作时,主机设备可能在未处理完前一条命令的情况下发送新的APDU命令,从而允许在参数已显示给用户之后、但在实际签名之前更改签名参数。该缺陷存在于Ledger Secure SDK的输入输出处理中,而非设备的操作系统或固件中。
修复分两个阶段进行:
- 在单个应用层面——以太坊版本1.22.2最先更新,于2026年8月13日发布;
- 在SDK层面——版本v26.6.1于2026年8月21日发布,之后应用程序基于更新后的框架重新构建。
公司强调,仅更新固件是不够的——用户需要通过Ledger Live更新应用程序。Ledger重申,未发现针对用户利用此漏洞的证据。
GitHub发布的时间线
在GitHub的LedgerHQ/app-ethereum仓库中显示,版本1.22.2的发布日期为2026年8月24日,备注为「安全修复」;版本1.22.3的发布日期为2026年8月26日,包含一系列与明文签名机制及其他交易处理路径相关的额外修复。
OneKey与Ledger Donjon之间的评估差异主要在于修复漏洞的版本是1.22.2还是1.22.3。双方均认同用户应通过Ledger Live将以太坊应用更新至最新版本。
AI观点
从机器数据分析的角度看,关于版本1.22.2与1.22.3的争论不如所发现错误本身的类型重要——即屏幕显示与实际交易签名之间的竞态条件。此类逻辑漏洞不仅存在于Ledger应用中:类似的信任链问题也曾出现在其他硬件钱包中,例如Coldcard钱包中随机数生成器级别的缺陷导致了可预测的密钥和数亿美元的损失。这种情况说明了一个普遍原则:硬件钱包的安全性并非依赖于单一环节——固件、SDK或应用程序——而是依赖于所有组件构成的整个链条,任何一环的断裂都会使其他保护措施失效。
讨论中未提及的一个技术细节是:像以太坊应用和Ledger Secure SDK这样分离的应用程序与SDK更新周期,会形成一个窗口期,此时生态系统的一部分已受到保护,而另一部分尚未保护。如果此类窗口期被发现的速度快于制造商修复的速度,将会发生什么?
end-content






