Charts
DataOn-chain
VIP
Market Cap
API
Rankings
CoinOSNew
CoinClaw🦞
Language
  • 简体中文
  • 繁体中文
  • English
Leader in global market data applications, committed to providing valuable information more efficiently.

Features

  • Real-time Data
  • Special Features
  • AI Grid

Services

  • News
  • Open Data(API)
  • Institutional Services

Downloads

  • Desktop
  • Android
  • iOS

Contact Us

  • Chat Room
  • Business Email
  • Official Email
  • Official Verification

Join Community

  • Telegram
  • Twitter
  • Discord

© Copyright 2013-2026. All rights reserved.

简体繁體English
|Legacy

一种全新的攻击方式——费用超付攻击

CN
Cobo钱包
Follow
5 years ago
AI summarizes in 5 seconds.

—

撰文 | Cobo金库大掌柜


上周(2020年6月3日),海外比特币社区爆出了一个波及所有硬件钱包的新型攻击形式——费用超付攻击(Fee Attacks),这种攻击仅限于隔离见证(SegWit)地址。发现这个攻击的是来自英国的一位少年黑客Saleem Rashid,他也是第一个找到 Ledger 的严重漏洞并攻击成功的黑客。


大掌柜和Cobo金库产品技术团队在攻击爆出的当天就及时作出了反应,并提出了我们的解决方案。该解决方案将会在6月17日发布的最新固件升级包V1.2.0中覆盖。

这篇文章会详细说明费用超付攻击的原理,以及Cobo金库的对应解决方案。国内其他硬件钱包厂商可以参考我们的解决方案,尽快修复漏洞。


阐述具体的攻击原理之前,先强调两个点:

1. 这个攻击会波及所有硬件钱包的原因,不是硬件钱包本身的设计缺陷,而是由隔离见证(SegWit)的天然特性所决定的。

2. 这个攻击在理论上是可行的,但是实操中黑客大概率不会实施这个攻击手段(敲重点,只是大概率不会实施,不代表不会实施)。因为攻击成功后的BTC,很难直接落进黑客的口袋。


大家知道,硬件钱包是一个脱网设备,它依赖配套App构建交易(比如Ledger的Ledger Live,以及Trezor的网页App),并且把待签名交易通过USB/蓝牙/二维码发送到硬件钱包,然后用硬件钱包脱网保存的私钥进行签名。所有硬件钱包的基本运作原理都是如此。

▲ 硬件钱包的基本运作原理

如果你使用的是一个隔离见证(SegWit)地址,当你把待签名交易从配套App发往硬件钱包进行签名时,会有两个由隔离见证(SegWit)的天然特性所决定的特点:

1. 待签名交易包含的所有UTXO不会带上其前一笔交易的完整信息。也就是说,所有UTXO的真实余额数据,硬件钱包是没有能力做检查的。

2. 签名过程中,会对每一个UTXO分别进行签名。


基于这两个隔离见证(SegWit)的特点,费用超付攻击的具体攻击路径如下:

1. 被攻击者的某一隔离见证地址有两个UTXO,UTXO A的余额是15 BTC,UTXO B的余额是20 BTC。

2. 被攻击者要发送一笔20 BTC的交易,手续费是0.000001 BTC。正常情况下的交易信息如下所示:

3. 攻击者篡改了配套App,发送了第一笔篡改交易给硬件钱包签名。这笔交易中,input 1来自于UTXO A,15 BTC,input 2来自于UTXO B,但不是20 BTC而是5.000001 BTC。此时由于隔离见证(SegWit)的天然特性,硬件钱包无法识别input 2是不合法的input(因为没有UTXO B的前一笔交易的所有信息,从而无法判断UTXO B的真实余额),并完成了对input 1和input 2的分别签名,并传到被篡改的配套App。交易信息如下:

4. 被篡改的配套App弹出一个消息——签名有误,请重新用硬件钱包进行签名。此时,被篡改配套App向硬件钱包发送了第二笔篡改交易。这笔交易中,input 3来自于UTXO A,0.000001 BTC,input 4来自于UTXO B,20 BTC。此时,input 3是一笔不合法的input,但是硬件钱包依旧无法识别,并分别对input 3和input 4进行了签名,并传到被篡改的配套App。(为方便叙述和区分,这里把第二笔篡改交易的input序号顺位为3,4)交易信息如下:

5. 被篡改的配套App将input 1和input 4这两个合法的签名合并,作为一笔新的交易发送了出去。交易信息如下:

6. 此时,用户花费了UTXO A的15 BTC和UTXO B的20 BTC,向目标地址发送了20 BTC,消耗了15 BTC的手续费。


我们从攻击路径中可总结出,攻击者实施费用超付攻击的必要条件:两笔篡改交易的output必须与攻击者最终广播交易的output保持一致,合法的两笔input才能被合并成一笔合法交易,以此来实现费用超付攻击。


但是,黑客要从这个攻击中获利,就变得非常困难。因为正常情况下,这多出来的15 BTC的手续费,会通过矿池分发到矿工的手里。如果黑客要通过成功挖出一个块来独吞这15 BTC,需要进行以下操作:

1. 黑客拿到签完名的交易,不发送给mempool,自己掌握这个交易并尝试挖出一个区块。

2. 假设黑客使用的是蚂蚁 S19 Pro矿机,每台矿机的算力是 110 TH/s,当前全网算力是105 EH/s。

3. 由于受害者可能会察觉问题,所以假定黑客要在24小时内挖出这个区块并将手续费15 BTC的这个交易打包进去。那么,黑客需要购买约6600台蚂蚁 S19 Pro矿机(官方售价是20770元/台)。

4. 大家可以自行计算这里的攻击成本。

5. 如果考虑黑客和大矿工甚至矿池合谋,攻击成本会有所降低,但依旧非常高。何况24小时是个非常非常保守的估计,可能大部分用户几个小时甚至一个小时内就会发现问题。


海外大神级的硬件黑客LazyNinja(也是Cobo金库的内测用户之一),提出了另一种攻击路径。简单来说就是黑客握着高手续费的交易不进mempool,然后向受害者勒索(转为Ransom Attack)。同时,黑客会监控mempool,一旦发现受害者自己用同样的UTXO再发一笔交易的话,就立即把自己手里的交易发到mempool,矿工会优先选择巨额手续费的交易,从而让用户遭受损失。这样的攻击路径会降低一定的成本,但依旧会比较难以实施。


针对这个攻击,Trezor在三个月前就已开始调研,直至最近发布了新固件,其解决方案是:所有隔离见证(SegWit)地址的交易,全部附带上对应UTXO的前一笔交易的所有信息。但这样的方案又引出两个问题:

1. 隔离见证(SegWit)的优势被削弱了。

2. Trezor硬件钱包现在几乎与所有第三方钱包的适配都出了问题(这也是Trezor在这次事件中广受诟病的一点)。


针对这个攻击的特性,Cobo金库使用了另一种解决方案:


前面提到,黑客的攻击路径中,必须要向硬件钱包发送两笔output完全相同的交易。在Cobo金库硬件钱包端,可以记录用户的签名记录,然后直接禁止用户签第二笔output完全相同的交易并给出相关提醒。如果用户由于种种原因,的确是想重新签名一笔交易,这种情况下,input和output和前一笔交易应是完全一致的,说明未发生手续费攻击,Cobo金库则会放行这笔签名。

这个解决方案最大的优势在于,各个第三方钱包的兼容性不会有任何问题。当然,如果第三方钱包(比如Electrum)未来采用Trezor的解决方案,Cobo金库也会采用完全一样的方案。


从一个更高的维度来看这个解决方案,一定程度上,Cobo金库扮演了一个交易签名风控的角色,这也可能是硬件钱包未来的一个重要发展方向。


参考链接:

[1]https://medium.com/cobo-vault/a-potential-solution-to-fee-attacks-cfb90defe1ce

[2]https://blog.trezor.io/details-of-firmware-updates-for-trezor-one-version-1-9-1-and-trezor-model-t-version-2-3-1-1eba8f60f2dd

[3]https://twitter.com/FreedomIsntSafe/status/1268572922911887360

免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到support@aicoin.com,本平台相关工作人员将会进行核查。

极度恐慌别慌!注册币安领600 USDT,10%低费抄底!
广告
|
|
APP
Windows
Mac
Share To

X

Telegram

Facebook

Reddit

CopyLink

|
|
APP
Windows
Mac
Share To

X

Telegram

Facebook

Reddit

CopyLink

Selected Articles by Cobo钱包

5 years ago
神鱼对话 Kain|DeFi 资深科学家遇上 DeFi 龙头掌门人
5 years ago
Filecoin「双花」始末及复盘
5 years ago
以太坊 EIP 1559 将改变什么?神鱼为何投赞成票?
View More

Table of Contents

|
|
APP
Windows
Mac
Share To

X

Telegram

Facebook

Reddit

CopyLink

Related Articles

avatar
avatarTechub News
34 minutes ago
Small victories lead to big wins! Google's most powerful small model has just been released, and it can run on mobile devices too.
avatar
avatar律动BlockBeats
35 minutes ago
On the same day, two acquisitions, two types of IPO anxiety.
avatar
avatarTechub News
59 minutes ago
The Centralized Plot Behind Quantum Panic: A Critical Examination of the Google Quantum AI White Paper
avatar
avatarTechub News
1 hour ago
The Year of Physical AI: A Trillion Dollar Gamble on "How the World Works"
avatar
avatar百益区块链
1 hour ago
The underlying logic of Bitcoin and market observation
APP
Windows
Mac

X

Telegram

Facebook

Reddit

CopyLink