Electrum 钱包修复安全漏洞,此前已有黑客窃取比特币

BTC
比特币钱包安全补丁漏洞被盗资金Electrum漏洞利用RBF
3 小时前来源: crypto.news
Electrum 钱包修复安全漏洞,此前已有黑客窃取比特币

Electrum 已发布 4.8.3 版本,以修复一个高危比特币钱包漏洞,恶意服务器曾利用该漏洞重定向用户的付款,开发者确认至少有一例资金被盗。

摘要

  • Electrum 在确认恶意服务器正在利用一个高危漏洞后,发布了 4.8.3 版本。
  • 攻击者将待处理的比特币付款替换为欺诈性交易,用户可能通过提高手续费而误授权这些交易。
  • 两名用户报告了相关事件,其中一人在提高交易手续费后损失了比特币。
  • 该漏洞影响 4.8.3 之前的所有 Electrum 版本;开发者尚未披露总损失。
  • 该安全补丁会验证花费钱包所控制币的未确认交易的签名。

根据该钱包 10 月 24 日发布的安全公告,攻击者利用了 Electrum 处理未确认比特币交易的方式,将合法的对外付款替换为欺诈性交易,用户可能在提高交易手续费时意外授权这些交易。

Electrum 是一款轻量级比特币钱包,它连接外部服务器以获取交易历史、广播及其他网络信息。与完整的比特币节点不同,该软件不会独立处理区块链活动的每一个方面。

其文档解释说,Electrum 通过简单支付验证来验证已确认交易,但在显示待处理交易时历来信任其主服务器。

攻击者利用这一区别,在通过恶意服务器提交的交易到达比特币网络之前将其拦截。

在阻止合法交易被广播后,攻击者可以向钱包发送一笔替换交易,将接收地址改为攻击者控制的地址。

尽管该替换交易带有无效签名,但存在漏洞的 Electrum 版本在钱包历史记录中显示该交易之前并未检查这些签名。

当用户试图通过替换手续费(Replace-by-Fee,简称 RBF)提高交易手续费时,这种欺骗就变得危险了。RBF 是比特币的一项功能,允许用另一笔支付更高手续费的交易替换未确认的付款。

通过批准手续费调整,用户可能在不知情的情况下签署了一笔向攻击者付款的有效交易。

Electrum 确认漏洞已在现实中被利用并造成比特币损失

开发者披露了两起私下报告的事件,证实该漏洞已超出理论攻击的范围。

10 月 11 日,一位名为 dannydeezy 的用户报告称,Electrum 历史记录中显示的一笔交易与最初提交的付款不符。

根据该公告,两起事件均涉及攻击者控制的接收地址,这些地址被设计为与预期接收者比特币地址的最后四个字符相匹配。

在第二起案例中,欺诈性交易的手续费为零,开发者怀疑这是为了促使受害者发起手续费提高。

第一份报告涉及一个使用两台 Trezor 设备的 2/3 多重签名钱包。其合法交易包含 31 个输入和 1 个输出。

调查人员发现,全部 62 个签名对原始付款有效,但对被替换的交易无效。这笔虚假交易将几乎全部比特币重定向到一个相似地址,并向钱包返还了少量金额。

原始交易仍然有效,但从未到达公共比特币网络。

Electrum 承认,一些服务器在真实环境中执行了此次攻击。然而,开发者并未披露有多少服务器参与其中、被盗金额是多少,或者是否已确认更多受害者。

Electrum 4.8.3 阻止恶意手续费提升交易

该修复已于 10 月 23 日纳入 4.8.3 版本,可下载的二进制文件于 10 月 24 日发布。

通过 提交 90fe308,开发者引入了对未确认交易的签名验证,这些交易花费的是用户钱包所拥有的输入。

Electrum 现在会在将这些交易接受到其本地历史记录之前检查这些签名,从而防止公告中描述的欺诈性对外支付显示为合法交易。

该更新并不会使 Electrum 成为完整的比特币节点。开发者澄清,传入的未确认交易仍不在新的签名检查范围内,而已确认的支付则继续接受现有的验证程序。

运行 4.8.3 之前版本的用户已被敦促从 Electrum 官方网站下载更新。

对于无法立即升级的用户,开发者建议在签署交易(包括手续费替换)之前检查完整的接收地址和金额。

根据该公告,仅连接到受信任服务器(包括自己的服务器)的用户不会暴露于这一特定的恶意服务器攻击。

Electrum 此前的攻击揭示了反复出现的服务器风险

此次事件之前,曾有过利用 Electrum 对外部服务器依赖的先前尝试。

2018 年 12 月,crypto.news 报道称恶意服务器向用户显示了欺诈性的软件更新指示。当时的报道估计损失接近 100 万美元。

另一起 2019 年的恶意服务器活动利用虚假钱包更新和拒绝服务活动,将用户引导至受感染的软件。

那些攻击依赖于欺骗性下载,而新修补的漏洞则是在一个原本合法的钱包内部操纵待处理交易信息。

2020 年发表的一篇关于 Electrum 服务器的采访探讨了轻量级钱包的权衡取舍,包括它们对交易历史外部基础设施的依赖。

Electrum 自己的文档称,其客户端通常连接到大约 10 个服务器,但会选择一台主服务器来检索钱包历史并广播交易。文档指出,这台主服务器在未确认交易方面是受信任的。