硬件钱包TREZOR被发现可以在5分钟内提取密钥种子,目前该漏洞还没办法通过补丁修复

导语:在这篇文章中,我们分析了物理密钥提取攻击是可以用低成本的设置快速执行的。

硬件钱包TREZOR被发现可以在5分钟内提取密钥种子,目前该漏洞还没办法通过补丁修复

TREZOR是一个硬件钱包,属于一种高科技的数据加密存储器,该产品产自捷克。它具有高安全性,同时又不会以牺牲方便性为代价。与冷储存(cold storage)不同,TREZOR在连接到一个在线设备时是可以实现交易的。这意味着即便是在使用不安全的电脑的时候,使用比特币都是十分安全的。目前,TREZOR已是业内公认的研发最早最谨慎最安全的加密存储器,已经被全球性数字货币玩家验证过的可靠品牌。

不过,在今年的MIT比特币世博会上,硬件钱包厂商Ledger在会议现场演示了针对同行Trezor的五种攻击方式,此后,该公司还在其官网公布了具体的漏洞细节。可以预料到是,今后还会有很多TREZOR漏洞会出现。

这不,就在月初,就有研究人员人员爆料,攻击者可以在5分钟内从TREZOR中提取种子,而所需的设备算下来大约为100美元。此漏洞影响Trezor One、Trezor T、Keepkey和所有其他Trezor的相关产品。不幸的是,与在MIT比特币世博会上曝出的漏洞相比,这个漏洞目前还无法无法修补。因此,为了保护该设备不遭受更多的攻击,我们决定不提供有关攻击的技术细节。然而,SatoshiLabs(一个加密货币组织)和KeepKey (一家比特币钱包公司)建议用户要么放弃使用Trezor,要么使用密码。

:SatoshiLabs 是在行业里雄心勃勃的技术先驱,致力于为大众带去密码学。他们由创新驱动,永无止境的研究和开发使其处于领先地位。他们的目标是了解并提供安全且易于使用的解决方案,以解决加密面临的实际问题。他们已经创建TREZOR开源加密环境,全球首个冷钱包解决方案。

漏洞发现背景

比特币硬件钱包制造商Ledger的安全团队最近花了一些时间和资源来分析硬件钱包的安全性,他们的目标是提高,硬件钱包生态系统的安全标准。

Trezor诞生于2014年,是硬件比特币钱包中历史最为悠久的品牌之一,亦是目前最可靠、最安全的比特币储存方式。Trezor保持私钥远离互联网,并在设备内确认交易。同时,用户可以随时在发送比特币之前检查屏幕上的正确地址、金额和手续费用。

Trezor保护用户的私钥免受可能的在线和离线风险,支付绝对安全。获得了如Bitstamp、Cashila、Mycelium、Coinpayments、BitPay、Bitwala 多家比特币企业的信赖。

用户可以在几分钟内即可完成个性化的设置,无需注册,即可让Trezor准备就绪。即使Trezor丢失,也能及时通过密语恢复备份,快速重新获得所有的数字资产、历史交易记录、账户和电子邮件等信息。

对Trezor硬件钱包进行安全测试只是Ledger此次进行行业安全测试项目的一部分。在测试中,他们发现Trezor硬件钱包特别有趣,因为固件是开源的。而芯片本身是闭源的,底层功能隐藏在闪存中。

硬件钱包TREZOR被发现可以在5分钟内提取密钥种子,目前该漏洞还没办法通过补丁修复

Keepkey – Trezor T

Ledger在物理攻击方面经验丰富,并且基于Trezor钱包的设计,他们认为可以从设备中提取种子。虽然从理论上来说这是可行的,但实际上,要做到这点,则非常困难。在这文章中,他们只关注以下攻击场景:假如攻击者偷到了一个用户的Trezor硬件钱包,他能否提取其中的密钥种子?

所以,在此,我们要强调的是,本文所说的漏洞不是可远程利用的漏洞。以下所有演示的攻击向量,都需要在对设备进行物理访问的基础上进行。此外,攻击者需要使用专用设备,并掌握专业的攻击技术,最后还需要时间。

在讲解具体的安全测试之前,请先阅读本文,里面详细介绍了一个漏洞,该漏洞使用侧通道分析从被盗的设备中检索PIN值。目前,这个漏洞已经被修补。

在这篇文章中,我们分析了物理密钥提取攻击是可以用低成本的设置快速执行的。

提取种子

硬件钱包的主要用途,始终是保护资金免受恶意软件攻击、计算机病毒和各种其他远程威胁(如通过秘密更改地址从账本中窃取所有资金)的侵害。虽然实现完美的物理安全是所有硬件钱包制造商的梦想,但在实践中总会出现各种各种各样的攻击场景。

在大多数硬件钱包的安全模型中,物理攻击通常被认为是不切实际和超出普通能力范围的。这意味着,大多数硬件钱包保护用户可以不用担心远程软件攻击。不过发生以下攻击场景可就不好说了,比如:

1.用户的硬件钱包意外被窃,且破解者拥有攻破它们的装备,则情况就很麻烦了。

2.遭受来自供应链的攻击,最近两年,供应链攻击已经成为最大网络威胁,供应链攻击形式多样且难以被预防。就拿Trezor硬件钱包来说吧,一旦和Trezor合作的某个厂商的安全性出了问题,则攻击者可能就通过该攻击点,间接对Trezor发起攻击。如果做得好的话,供应链攻击是很难被检测出来的,有时候甚至是完全不可能被发现的。网络监视能检测出异常或可疑行为,但依然难以确定安全漏洞是有意引入的(可能是作为后门),还是来自开发人员或制造商的无意疏忽,或者其实是为了证明有潜在的访问凭证被利用了。

3. 邪恶女仆攻击(evil maid attack):邪恶女仆攻击指的是针对无人看管的设备的攻击,只要直接拿到设备,攻击者就可以访问且更改设备上的数据。

可以看出,以上的3个攻击场景都是在对设备进行物理访问的基础上进行。

什么是硬件钱包的种子?

到了今天,比特币钱包都以一种确定的方式生成地址。获得初始输入(密码学家称之为seed,即种子)之后,其能够从中衍生出大量的地址。

2011年底,第一款确定性钱包(deterministic wallet)Electrum诞生了。用户终于从频繁的备份中解放出来,只需要使用一串种子了。

第一款确定性钱包相对来说比较基础,一个主秘钥可以创建多个地址,但无法触及到更复杂的层级:如一个主秘钥包含多个子秘钥。到了2012年,BIP 32为我们带来了硬件钱包,HD钱包的优势更加突出:钱包结构可以表现出更高的组织化程度。试想一下,一个钱包可以包含多个币种,每个币种都有不限数量且用于不同目的(存储、商业、购物)的子账户,每个账户都有(几乎)不限数量的独立地址,而这些地址均来自同一串种子。

2012年,第一款商用硬件钱包Trezor的原型就出现了。Trezor部署的一些重要功能直到今天仍得到了广泛的应用,比如,遗失后可简单恢复的种子。

具体攻击过程

Ledger研究人员最近发现Trezor One硬件钱包受到了物理攻击,目前该漏洞已经被报告给了Trezor。如果用户未设置强密码,则已识别的漏洞允许具有物理访问权限的攻击者获取硬件钱包的种子。

在对这个漏洞进行深入的评估后,可以发现,如果不对硬件钱包进行完整的硬件重新设计,则无法修补此漏洞。说实话,这是研究人员首次发现这种攻击,可见这种攻击过于专业化,一般人很难复制。初步分析时,研究人员发现,要复制此攻击过程,不但需要昂贵的设备(价值超过10万美元),还要相关专家花费大量的时间来进行操作。

硬件钱包TREZOR被发现可以在5分钟内提取密钥种子,目前该漏洞还没办法通过补丁修复

Trezor One设备

最近,研究人员正在测试,看是否能用价格低廉的设备已经更短的时间,来完成这样的攻击。经过不断测试,研究人员终于发现了一个成本约为100美元,并在5分钟内从Trezor One设备中提取种子的可行性办法。该设备是一个集成电子板,可以通过USB接口连接到任何一台电脑。另外,在测试过程中,研究人员还对攻击流程进行了重新设计。根据他们的说法,这种电子电路板的成本可能还会进一步降低。

种子提取设置

目前,种子提取攻击可以在多个开源硬件钱包上运行:B Wallet,Keepkey,Trezor One和Trezor T,并且固件更新永远无法修补此攻击。如果要修复,则需要制造商对设备进行彻底的重新设计。由于种子提取攻击所需的设备价格低廉且过程简单,研究人员决定对攻击过程和所需的集成电子版配置进行保密。

然而,出于对漏洞的披露责任,研究人员还是决定对这个攻击进行一些的粗略描述:

1.物理访问是基础;

2.所需设备:Extraktor 工具外加一台笔记本电脑;

3.攻击成本低: 100美元左右;

4. 攻击速度快:3分钟准备,2分钟种子提取,总共5分钟;

5.适用于所有固件版本:在加密固件(Keepkey&Trezor> = 1.8)上,PIN必须强制执行。对于长PIN(9位数),可能需要在高速计算机上运行几分钟;

3.攻击非常可靠:研究人员在20个设备上进行了测试,成功率为100% ;

点此,你可以看到Extraktor电路板(黑匣子)连接到笔记本电脑的场景。

总结

通过此次研究,Ledger研究人员总结了以下几点:

1.安全意识要时刻保持:不要低估硬件攻击的可行性。许多硬件钱包都容易受到这些攻击,研究人员已经在不同供应商的许多不同产品上证明了这一点。

2.虽然没有办法对该漏洞进行修补,但有一种缓解方法,即使用长密码。在这种情况下,由于种子本身可以看作是公共的,所以密码应该足够长,才能防止暴力攻击或字典攻击。

3.整个硬件钱包的安全依赖于密码,助记密码的推导遵循BIP39标准,BIP39利用PBKDF2函数,可以推导出种子的助记密码。尽管Electrum早就开始使用助记词了,但BIP 39的到来真正为助记词定下了标准。BIP 39包含2048个英文单词,让比特币钱包可以轻松地在不同的设备上进行切换和恢复,前提是这些钱包均遵循BIP 39制定的标准。在创建钱包的时候,不管出自哪家公司,他们都会为你提供一串由12到24个单词组成的助记词,并且要求你把这些词记在一张纸上。如果直接记在电脑上,很容易被黑客或者病毒入侵。

4.PBKDF2是一个有用的函数,它允许将一个低熵密码导出为一个更大的加密密钥,熵的缺乏由防止暴力的CPU密集型派生函数来平衡。

5.BIP39的主要问题是迭代次数被设置为只有2048次,这远远低于NIST在2016年建议的10000次。

6.当助记词生成良好并且可以保密时,它们表示256位,因此,仅仅2048次迭代不是问题。

不过在这次研究中,24个单词可以被认为是公共的,仅仅2048次迭代就变成了一个问题,然后就可能出现暴力破解的情景

综上所述,由于这些原因,需要大约37个随机字符的密码来保证与24个单词种子相同的安全级别。

那么,我们是否就可以说,Trezor是不安全的,而Ledger就是更好的选择呢?

当然不能如此简单下定论。Ledger所提到的漏洞,均需物理访问,其中有部分已被Trezor解决,部分属于所有硬件设备都存在的问题。

通过这起事件,我们可以了解到,没有任何一个硬件钱包是可以做到100%安全的,重要的是用户要提高安全意识。

*文章为作者独立观点,不代表BSCEC立场

转载此文章须经作者同意,并请附上出处(嘶吼)及本页链接。原文链接 https://www.4hou.com/vulnerable/19060.html

白帽汇安全研究院转载2019-07-15 19:49:03 嘶吼 1982