2018年6月,安全研究人员Braydon Fuller 在Bitcoin Core 中发现了一个安全漏洞,随后提交了漏洞,待漏洞修复后研究人员选择不公开漏洞细节,以预防漏洞利用。上周,其他研究人员独立发现了盖漏洞,随后研究人员将漏洞细节公开。
比特币INVDoS 漏洞
该漏洞为Inventory 内存溢出DoS漏洞,属于一种经典的DoS漏洞。研究人员发现攻击者可以创建伪造的比特币交易,当比特币区块链节点处理该交易时回引发服务器内存资源不受控制的消耗,最终使得系统奔溃。通过INVDoS 攻击,可以影响比特币节点挖矿、延迟区块和引发网络暂时分区,引发挖矿时间损失和电力消耗。
此外还会影响时间敏感的合约以及阻止一些经济活动,影响贸易、交易、原子交换和闪电网络HTLC 支付信道。
INVDoS 漏洞还会影响运行Bitcoin Core的比特币节点(服务器)。运行Bcoin和Btcd的比特币节点也受到该漏洞的影响。其他基于原始比特币协议的加密货币也受到该漏洞的影响,比如Litecoin 和Namecoin。
攻击Q&A
是否受到攻击的影响?
截止目前,该漏洞已经在Bitcoin Core 中修复2年了,因此不影响目前运行的比特币和其他区块链系统。但是运行老版本软件的用户仍然会受到DoS 攻击的影响,比如:
· Bitcoin Core v0.16.0 或 v0.16.1
· Bitcoin Knots v0.16.0
· Bcoin v1.0.0-pre及之前版本
· Btcd v0.20.1-beta及之前版本
· Litecoin Core v0.16.0
· Namecoin Core v0.16.1
· Dcrd v1.5.1 及之前版本
如何应对漏洞威胁?
用户可以通过升级软件版本来确保不受该漏洞的影响:
· Bitcoin Core v0.16.2 及之后版本
· Bitcoin Knots v0.16.2 及之后版本
· Bcoin v1.0.2 及之后版本
· Btcd v0.21.0-beta 及之后版本
· Litecoin Core v0.16.2 及之后版本
· Namecoin v0.16.2 及之后版本
· Dcrd v1.5.2 及之后版本
谁可以发起攻击?
任何联网和接入P2P 网络的用户都可以发起该攻击。
该攻击可以用来窃取加密货币?
不能。
漏洞影响共识机制吗?
一般来说不影响,极端情况下会影响共识机制。攻击活动可以对区块链fork产生或挖矿哈希带来优势。被攻击的节点会将网络分区,这样矿工在网络中传播区块时就会有一定的难度。但是在贸易或交易中预防双花的成本就增加了。
攻击的结果是什么?
恶意节点可以让其他节点无法正常工作,也就是常说的DoS 攻击。攻击会引发进程的内存无限增加,引发进程奔溃,在进程中止前进程和计算机都会变砖。
攻击影响整个区块链网络吗?
如果网络中私有的节点都存在漏洞,而且没用其他不含该漏洞可选的版本和实现,那么就会影响整个区块链网络。需要发布修复的版本来恢复整个网络的功能。对比特币网络来看,只出现过2个影响全网的漏洞,自2013年开始就没再出现过。
攻击如何执行?
恶意节点使用含有不存在的交易(随机哈希)的inv消息向其他节点洪泛。
在野漏洞利用?
截止目前暂未发现有漏洞在野利用情况。
更多漏洞细节参见:https://invdos.net/#paper
本文翻译自:https://invdos.net/如若转载,请注明原文地址: