Ledger 缩小了以太坊应用程序中的一个差距:当显示屏显示的内容与您签名的内容不同时
核心要点
- 任何拥有 Ledger 并使用它来管理 Ether 或 ERC-20 代币的人都应该打开 Ledger Live 并检查设备上安装了哪个版本的以太坊应用程序。
- 任何早于 1.22.2 的版本都缺少安全修复程序。
- 我们在有关钱包耗尽和签名批准的文章中阐述了攻击者在实践中如何收集这些批准。
- 将以太坊应用程序更新到1.22.2:通过Ledger Live版本1.22.2的路由关闭了用两个锁描述的路由。

任何拥有 Ledger 并使用它来管理 Ether 或 ERC-20 代币的人都应该打开 Ledger Live 并检查设备上安装了哪个版本的以太坊应用程序。任何早于 1.22.2 的版本都缺少安全修复程序。该修复解决了一个缺陷,该缺陷破坏了购买硬件钱包的承诺:屏幕显示设备将要签名的内容。该案件于 2026 年 8 月 24 日公开,当时安全公司 TestMachine 发布了其分析。到那时,修复程序本身已经存在。在这两个日期之间存在着关于谁首先发现该缺陷以及莱杰何时发布该缺陷的争议。对于作为业主的您来说,争议是次要的。重要的是您设备上的版本号以及您过去授予的批准问题。以太坊应用程序中的账本安全漏洞:实际发生了什么设备固件和私钥的保管都没有受到影响。问题出在以太坊应用程序上:您另外安装在设备上的小软件,用于以太坊和 ERC-20 代币。它会准备一笔交易,将其显示给您并收集您的确认。在有缺陷的版本中,该序列可能会被打乱。当第一个交易仍在屏幕上等待审核时,有权访问连接设备的恶意 Web 应用程序可能会发送第二个签名命令。然后,该应用程序交换内存中的数据,而不会弹出新的查看屏幕。您刚刚检查过的无害传输仍保留在显示屏上。但是,您的确认适用于交换的数据。据安全研究人员称,该模式已在 Ledger Flex 上得到明显重现。由于这些设备在很大程度上共享以太坊应用程序的程序代码,因此 Nano X、Nano S Plus、Stax 和 Apex 也被认为存在潜在漏洞。 Ledger 尚未透露该应用程序的哪个版本首先包含该错误;研究人员的比较从 1.22.1 开始,即 2026 年 5 月 27 日之前标记的版本。 清晰签名解释:为什么显示是真正的安全承诺 清晰签名是指在确认之前在硬件钱包的显示屏上以纯文本形式显示完整的交易数据:接收者地址、金额,以及在合约调用的情况下,合约要执行的操作。这就是这种设备首先有意义的原因。您的计算机可能会受到损害,您的浏览器可能会呈现受操纵的界面,该网站可能是假的。只要您手中的设备有自己的屏幕,独立于计算机,并显示真实数据,那么在按下按钮之前,任何操作都会变得可见。私钥永远不会离开设备;它不需要,因为设备自己签名。这个缺陷正好击中了这条链条的最薄弱点。密钥保持安全,固件未受影响,但最终可能会给出与您所读到的不同的同意。在这一点上,显示屏不再被读取为绑定的设备并不比受感染机器上的软件钱包更好。如果您想重新审视两种设计之间的差异,您可以在我们的软件钱包比较和硬件钱包比较中找到它。竞争条件和 APDU 命令:缺陷的技术核心 竞争条件是一种错误,其中结果取决于两个大致同时发生的命令中的哪一个首先得到处理。此类错误是危险的,因为程序代码本身看起来是正确的,并且在绝大多数情况下序列运行干净。只有当有人故意设计订单时,它们才会浮出水面。 APDU 是智能卡和硬件钱包与连接的计算机通信的命令格式。签名的每个步骤都由多个这样的命令组成。以太坊应用程序附带一个状态,记录当前正在审核的交易。当审查仍在进行时,该状态可能会被覆盖。同时执行两个命令,没有明确的状态:这就是竞争条件的工作原理。浏览器中的 WebHID:网站为何与您的设备通信 WebHID 是一个浏览器界面,一旦您明确授予许可,网站就可以让网站直接与连接的 USB 设备通信。没有它,硬件钱包就无法在去中心化应用程序中方便地使用;有了它,网站比许多用户意识到的更接近设备。所描述的攻击要求您已经授予对受操纵或劫持站点的访问权限,并在那里启动事务。它无法对抽屉中的设备进行远程操作。这极大地限制了受影响者的范围,尽管它并没有削弱这一发现:任何经常使用去中心化交易所、桥梁或质押接口的人都始终授予这种访问权限。
硬件钱包比较
代币批准而不是转让:为什么无限制的批准如此危险这种交换的损害很少来自转让本身。它来自于可以插入以取代它的东西。代币批准是授予智能合约的许可,允许您将来处置一定数量的代币,而无需您再次确认每笔借记。为了方便起见,许多应用程序无限制地请求此权限。批准一旦授予就不会过期,并且在您明确撤销之前一直有效。转账和批准之间的区别 转账的费用与您确认的金额完全相同。在最坏的情况下,无限制的批准会让您在接收者选择的时刻花费相关代币的全部余额。这就是为什么用小额转会换取影响深远的认可是签约之路上最有价值的攻击。我们在有关钱包耗尽和签名批准的文章中阐述了攻击者在实践中如何收集这些批准。将以太坊应用程序更新到1.22.2:通过Ledger Live版本1.22.2的路由关闭了用两个锁描述的路由。当审核正在进行时,应用程序会拒绝新的签名会话,如果状态不再与显示的状态匹配,它会拒绝传入的确认。版本条目位于 Ledger 的以太坊应用程序的发布概述中;该注释仅列出了已修复的安全问题作为其内容,而没有描述该缺陷。更新本身并不引人注目。您连接设备,打开 Ledger Live 中已安装应用程序的管理器,并在那里更新以太坊应用程序。现有余额不受影响,因为密钥源自您的恢复短语并且不驻留在应用程序中。删除并重新安装该应用程序也不花费您任何硬币。如何识别已安装的版本 Ledger Live 在设备管理器中显示每个应用程序的版本号。如果显示为 1.22.2 或更高版本,则修复已到位。如果它显示为 1.22.1 或更早版本,则它已丢失。仅仅看一眼 Ledger Live 本身的版本号是不够的。这也是实践中最容易出错的地方。固件、Ledger Live 和各个硬币应用程序单独维护和更新。更新设备固件并放心地离开的人可能仍然在设备上安装过时的以太坊应用程序。同样的分离解释了为什么有关钱包安全的报告经常互相说三道四。在 Coldcard 案例中,错误在于种子的生成,就在地基上,这就是为什么那里需要新种子的原因。 BitBox 漏洞涉及固件。在可替换的应用程序中,错误位于该错误的上一级,因此应用程序更新就足够了。在这种情况下,不需要重新生成您的恢复短语。旧的代币审批可以单独删除:这正是更新后的第二步。此更新可保护未来的签名。它没有明确过去授予的内容。如果您最近几个月一直在使用去中心化应用程序,那么值得查看您地址上的公开批准。区块浏览器和专用接口列出了给定地址的哪些合约可以处置哪些代币。您不再使用的合同的批准可以一一撤销。撤销是一项普通交易,会产生网络费用,这就是为什么清理工作最好在安静时期以较低的费用进行。如果您想在此过程中关注以太币价格,您可以在以太坊价格预测中找到我们的评估。几乎没有人想到的一个副作用是:每次撤销都会出现在您的交易历史记录中并产生费用。那些清楚地记录自己的行动轨迹的人在下一次纳税申报时会更容易;常见的税务和投资组合工具会自动读取此类事件。
软件钱包比较
