修复隔离见证漏洞,Trezor的固件更新反而会导致用户资金被锁

硬件钱包

据Decrypt 6月5日报道,位于捷克的比特币硬件钱包Trezor在两天前发布了固件更新。这一更新是为了应对使用隔离见证(Segwit)协议的钱包的潜在威胁。隔离见证是一种使比特币交易更便宜、上链数据更少的比特币交易。

不过,尽管Trezor给钱包更新了补丁,但这一漏洞仍然给Trezor用户带来了不少问题,因为这些用户依赖硬件钱包与其他与比特币相关的软件进行交互,比如专注隐私的Wasabi钱包和BTCPay。

虽然该漏洞已被修补,但是更新Trezor并使用Wasabi或BTCPay的Trezor用户将被锁定资金。Wasabi和BTCPay敦促用户在Trezor的此次固件更新和钱包软件间的兼容性问题得到解决之前暂时不要更新。

隔离见证漏洞

大约在三个月前,独立黑客Saleem Rashid发现了这个漏洞,并向包括Trezor和Ledger在内的主要硬件钱包制造商披露了这个漏洞。有了可下载的固件更新,Trezor就彻底解决了这个漏洞。

虽然开发者告诉Decrypt这个漏洞很难被利用,但是人们仍然很关注Trezor的动态,这是因为Trezor在第三方钱包的集成功能中很受欢迎,例如,硬件钱包可以连接到流行的隐私钱包Wasabi和比特币支付门户BTCPay Server。

根据硬件钱包和软件钱包开发人员的说法,这一漏洞是否被利用取决与用户是否打开了以下攻击向量:

运行隔离见证的比特币用户从攻击者那里下载特定的恶意软件。随后受害者执行一次带有两个“输入”的交易:一次输入为10枚比特币,另一次输入5.0001比特币,所以交易总共是15枚比特币,费用为0.0001枚比特币。在确认交易后,用户会遇到一条错误消息,要求他们再次签名。这时,攻击者就可以切换交易输入,一个输入是15枚BTC,另一个输入是0.0001枚比特币。

有了这个切换设置,交易费用就变成了15枚比特币,而交易金额却变成了0.0001枚比特币。但是,要想获得成功,攻击者必须要有矿机,而且矿机还能碰巧挖出包含这笔交易的区块。此外,受害者还必须执行一次至少有两个输入的花费交易,并下载矿工的恶意软件。换句话说,这一漏洞被利用并不容易。

没有被告知该漏洞的硬件钱包制造商NVK提到,针对漏洞发起的攻击“并不是很严重”,但是更新硬件钱包可能会“破坏硬件钱包与其他钱包软件之间的交互”。

Trezor表示它对这一漏洞进行了简单修复。Trezor的首席执行官Pavol Rusnak在一份声明中解释道:

解决办法很简单,我们需要用处理隔离见证交易和非隔离见证交易同样的方式来处理这些交易。这包括钱包在发送新的交易前检查并重新验证之前的所有交易。

修复漏洞会带来哪些问题

尽管如此,虽然Trezor很容易就能解决这个问题,但这并不意味着它完全解决了依赖Trezor钱包与其他软件交互的问题。

例如,这个补丁(让隔离见证钱包检查并重新验证旧交易)在一些“第三方工具”上不起作用。

Trezor将不能使用这些第三方工具对交易进行签名,直到它们完成更新。由于需要对披露过程负责,我们无法提前通知相关维护者。

受影响的第三方工具包括了关注隐私的Wasabi钱包,该钱包在去年与Trezor进行了整合。它的创始人Adam Fiscor在Twitter上宣布,Wasabi的用户在钱包解决“兼容性问题”之前不应该更新固件。

Fiscor通过电子邮件告诉Decrypt,在他看来,“固件更新导致Trezor用户的资金被Wasab钱包锁住的后果要比攻击本身更严重”,虽然他同意NVK的观点,但他也能理解Trezor为什么“过于谨慎的”处理这一漏洞。

开源的BTCPay Server的创始人和负责人Nicolas Dorier告诉Decrypt,他希望Trezor提供“一到两个月的过渡期,这样用户就有时间转移他们的资金。”

BTCPay Server是一个去中心化的比特币支付处理器,它包括一些附加功能,比如闪电网络,它在去年与Trezor的硬件钱包进行了集成。

Dorier说,他的服务可能需要取消对Trezor和硬件钱包的支持,因为BTCPay Server的用户不会存储区块链上的所有数据;他们运行所谓的“轻”节点,只存储比特币网络使用BTCPay Server所需的数据,这使得下载和运行BTCPay更加快捷和容易。

因此,和Wasabi一样,BTCPay也在敦促用户不要进行更新,以免他们的资金被锁定。只要用户运行的是较老版本的Trezor就不会有太大问题。此外,用户还可以拿另一个未进行更新的硬件钱包,通过助记词(在钱包损坏或丢失时充当钱包私钥的备份短语)恢复钱包。

目前, Wasabi和BTCPay告知使用其服务的Trezor用户不要着急,并提醒他们在钱包更新之前转移资金。



发表评论