CVE-2020-26896:闪电网络被曝安全漏洞
闪电网络是运行在比特币、以太坊这样的基于区块链的加密货币之上的支付协议,旨在加速区块链交易的速度。闪电网络官网现实,利用闪电网络就行区块链交易无需担心区块的确认时间,支付的速度在毫秒到秒级。
闪电网络的开发团队近日公布了该加密货币协议和软件实现中的多个安全漏洞详情,攻击者利用这些漏洞可以通过拦截智能合约来引发DoS 攻击或破坏加密货币交易。
漏洞详情
这些漏洞最早是在今年4月被Chaincode实验室的Antoine Riard发现。发现后,Riard就将漏洞详情通过给了闪电网络(LND)团队以及c-lightning 和 Eclair 实现的开发者。
CVE-2020-26895
由于区块链协议需要处理金钱,因此引入了许多额外的安全措施,其中一个概念就是”transaction standardness”(交易标准化)。交易标准化会在节点的比特币共识规则基础上强制执行一个防DoS 的规则。交易标准化的可延展性同时也可能会引发针对加密货币协议的攻击,比如使正常的有效交易变得无效。交易标准化的面非常宽,任何标准化的错误都可以引发闪电网络节点资金的损失。这类漏洞可以引发资金被黑或成为为DoS 攻击的基础。
CVE-2020-26896
第二个漏洞允许攻击者拦截和窃取交易双方签名的哈希时间锁定合约(Hashed Timelock Contract,HTLC)。HTLC是加密货币协议使用的一个智能合约,在给定的时间周期内向接收者提供确认交易/支付的能力。无法适当地及时生成HTLC会使交易无效。
如果该漏洞被利用,原始的发送者会发现交易的账单,但是并没有进行支付。通过利用该漏洞,攻击者可以破坏进行中的交易,不对账单进行支付。
这2个漏洞非常严重,因为闪电网络节点信道连接是开放的,用户可以在不通知任意节点的情况下自由地提取资金。闪电网络节点是热钱包,因此漏洞如何被利用就可能会直接对受害者带来财产损失。
漏洞影响和补丁
漏洞影响LND 0.11.0-beta 之前版本。目前漏洞已经在lnd 0.11.0 及更高版本中修复。由于代码是开源的,协议也是公开运行的,因此漏洞的补丁是和其他补丁一起分发、隐蔽进行的。
参考来源:
https://gist.github.com/ariard/6bdeb995565d1cc292753e1ee4ae402d
https://lists.linuxfoundation.org/pipermail/lightning-dev/2020-October/002855.html
https://lists.linuxfoundation.org/pipermail/lightning-dev/2020-October/002857.html