主页 > imtoken苹果版国外 > 比特币RBF虚假充值风险分析

比特币RBF虚假充值风险分析

imtoken苹果版国外 2023-01-16 22:56:17

前言

据链闻消息,加密钱包ZenGo发布报告称,在Ledger、BRD、Edge等主流数字货币钱包中发现漏洞(名为“BigSpender”)。 该漏洞可能允许将未确认的交易记入用户的总余额,此时攻击者可以在确认之前撤销交易。 攻击者利用比特币协议中的费用来替换“按费用替换”功能。 该功能可以通过支付更高的交易费用来替代之前的交易。 攻击者可以连续多次使用此功能来执行 BigSpender 攻击。 接下来,慢雾安全团队将根据此次事件分析比特币协议的RBF特性对交易所和钱包的影响。

什么是径向基函数

RBF,全称Replace-by-fee,是比特币内存池中的一种协议,允许使用其他交易来替代未确认的交易。 RBF方案主要包括以下几种:

1. Full RBF:用更高的手续费代替之前的交易

比特币充值_如何充值比特币_火币网比特币充值

2.First-seen-safe RBF:First-seen replacement,即被替换交易本身的输出量必须大于或等于被替换交易

3. Opt-in RBF:选择性替换交易,通过增加费用替换旧交易,节点可以选择启用或禁用该功能

4.延迟RBF:当旧交易第一次被网络中的节点接收到时,如果旧交易在给定的块数后仍未打包,则允许新交易无条件替换旧交易

如何充值比特币_火币网比特币充值_比特币充值

目前Bitcoin Core采用的是Opt-in RBF方案,即通过声明一笔交易为可替换的形式,以后可以用其他交易来代替这笔交易。关于Opt-in RBF的详细说明请参考比特币核心的描述

如何使用RBF进行攻击

RBF主要针对0确认交易,即替换内存池中的未确认交易。 当交易所或钱包处理0确认交易而未能正确处理交易相关状态时如何充值比特币,将导致双花和虚假交易。 针对充值问题,具体攻击方式如下:

如何充值比特币_火币网比特币充值_比特币充值

1、攻击者发送RBF交易,输出地址指向交易所或钱包,并支付低廉的手续费,以防止交易被打包得太快;

2. 交易所取回此0确认交易后,攻击者立即发送替换交易,并将输出地址更改为攻击者控制的另一个地址,替换之前发送给交易所或钱包的交易;

3. 由于交易所或钱包在处理0确认交易时出现问题,没有验证交易是否为RBF交易以及交易的确认状态,RBF交易直接入账,没有确认,导致交易所或钱包被虚假充值、双花、欺诈攻击和钱包DoS攻击;

如何充值比特币_火币网比特币充值_比特币充值

攻击流程图如下:

钱包

目前,慢雾安全团队正在对市面上多款去中心化钱包进行测试,发现部分钱包存在此类问题,并将问题同步给相应的项目方并协助修复。

如何充值比特币_比特币充值_火币网比特币充值

防御计划

1、交易所或钱包禁止使用0确认方式进入比特币充值;

2、如果需要输入0确认交易,必须检查该交易不能是RBF交易。 具体来说,交易Input中nSequence字段的值必须为0xffffff如何充值比特币,任何在未确认交易中包含非0xffffff值的nSequence都应该被拒绝进入;

3、查看交易状态,比如查看比特币交易是否打包,或者是否达到了相应的确认次数(比如3次);

4. 钱包应显示相应的交易确认状态,以防止欺诈攻击;

5、慢雾安全团队已支持检测本次攻击。 如果您的钱包或交易所不确定您的入账方式是否存在问题,您可以联系慢雾安全团队(team@slowmist.com)进行检测。