原文标题:《比特币 RBF 假充值风险分析》 据 区块链网络消息,加密钱包 ZenGo 发布报告称其在 Ledger、BRD 和 Edge 等主流加密货币钱包中发现了一个漏洞(命名「BigSpender」)。该漏洞可能会使未确认的交易计入用户的总余额中,而此时,攻击者可在交易确认之前撤销该笔交易。攻击者利用了比特币协议中的一项费用替代「Replace-by-Fee」功能。该功能可通过支付更高的手续费来替换此前的一笔交易。攻击者可以连续多次使用该功能进行 BigSpender 攻击。下面,慢雾安全团队将基于此次事件分析比特币协议 RBF 特性对交易所和钱包所产生的影响。 什么是 RBF RBF,全称Replace-by-fee,是比特币内存池中的一种协议,允许使用其他交易将未确认交易进行替换的方式,RBF的方案主要有以下几种: 1.Full RBF:使用更高的手续费替换前一笔交易 目前 Bitcoin Core 采用的是 Opt-in RBF 的方案,即通过声明一笔交易为可替换的形式,后续可使用其他交易替换这笔交易。关于 Opt-in RBF 的详细说明可参考 Bitcoin Core 的说明https://bitcoincore.org/en/faq/optin_rbf/ 如何利用 RBF 进行攻击 RBF主要针对的是 0 确认交易,即对内存池中的未确认交易进行替换,当交易所或钱包在处理 0 确认的交易时,没有正确处理交易相关的状态时,就会导致双花和假充值的问题,具体攻击手法如下: 攻击者发送一笔RBF交易,输出地址指向交易所或钱包,并支付低额手续费,防止交易过快被打包;在交易所检索到这笔 0 确认的交易后,攻击者立刻发送一笔替换交易,并将输出地址改为攻击者可控的其他地址,替换先前的发送给交易所或钱包的交易;由于交易所或钱包在对 0 确认交易的处理存在问题,没有校验交易是否为RBF交易和交易的确认状态,直接在未确认的情况下入账RBF交易,导致交易所或钱包被假充值、双花、欺诈攻击及对钱包进行 DoS 攻击;攻击流程图如下: 目前,慢雾安全团队对市面上的几款去中心化的钱包进行测试,已在部分钱包中发现此类问题,并将问题同步给相应的项目方以及协助修复。 防御方案 交易所或钱包应禁止采用 0 确认的方式对比特币充值进行入账;如需要对 0 确认交易进行入账,必须检测该交易不能为RBF交易,具体为交易 Input 中的 nSequence 字段值必须为 0xffffff,任意未确认交易中包含非 0xffffff 值的 nSequence 应拒绝入账;检查交易状态,如检查比特币交易是否被打包,或已达到相应的确认数(如 3 个);钱包应展示对应的交易确认状态,防止欺诈攻击;5.慢雾安全团队已支持该攻击的检测,如钱包或交易所不确定自己的入账方式是否存在问题,可联系慢雾安全团队([email protected])进行检测。 来源链接:mp.weixin.qq.com —- 编译者/作者:慢雾科技 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
慢雾:简析比特币 RBF 假充值攻击方式
2020-07-07 慢雾科技 来源:链闻
LOADING...
相关阅读:
- 读完这篇文章你就知道MYKEY网络费是坑还是香2020-08-02
- 郑毅:BTC十连阳之后二连阳捡钱的行情还不上车吗今日多单获利300-400点2020-08-02
- 比特币极度贪婪,频繁大额抛售,应冷静对待2020-08-02
- 山前币有路:8.2BTC行情分析及操作建议 比特币顺势上攻回撤做多突围2020-08-02
- 比特币枪手:8.2比特币回踩接着多看新高2020-08-02