http://www.7klian.com

开发者Rusty Russell:闪电网络安全漏洞技术细节及发现过程

2019-09-07: 首次发明有人诡计操作这种裂痕;

一旦生意业务到达最小深度,其就可从通道中支出资金。只有当受害者试图封锁通道,以及其拥有的任何理睬或彼此成交生意业务都无效时,他们才会留意到这种恶意行为。

配景

要打开一个闪电网络通道,funding对等节点发送带有提议`funding_satoshis`(金额)的<code>`open_channel`。被扶助者则用 `accept_channel`回覆,提供其但愿用于这笔funding生意业务的密钥。</p><p>然后出资人建设这笔funding生意业务,并发送生意业务id以及<code>`funding_created`动静中的输出编号。

[6] https://github.com/ElementsProject/lightning-rfc-p...

[1]

2019-06-28: CVE裂痕编号被分派完毕;

lnd: v0.7.1及更高版本的客户端办理了这个问题,但以前版本的lnd没有查抄数量。v0.7.0及更高版本客户规则确查抄了scriptpubkey,v0.6.x版本客户端部门强制执行扶助<code>ScriptPubkey,但v0.6.0之前版本的客户端则完全没有举办相关验证。(CVE-2019-12999)

对所有以前版本的lnd客户端,进攻者都大概通过不正确的数量举办进攻。在v0.7.0版本,进攻者必需利用正确的scriptpubkey,这会烧掉funding输出中的币。</li><li>而对付v0.6.0版本之前的客户端,进攻者通过不正确的<code>scriptpubkey都可实现进攻。在v0.6.x客户端中,假如在funding生意业务到达所需简直认数,在任意一个全节点后端上运行txindex=0,且节点处于离线(offline)状态时,此裂痕也大概会被操作。</li><li>操作错误outpoint进攻neutrino客户端(凡是是移动端或条记本电脑)用户,需进攻者将其假outpoint与BIP 158 筛选措施中的真实outpoint剧本碰撞。用于建设筛选措施的siphash密钥是从blockhash派生而来的。因此,进攻者在不提前知道区块哈希的环境下,是无法直接举办进攻的。另外, neutrino客户端节点凡是不会监听或不具备通告地点,这意味着进攻者必需等至吸收到入站毗连后才气执行进攻。</li></ol>eclair: v0.3.1及以上版本的客户规则确办理了安详隐患,假如用户利用了bitcoin core作为后端,则以前版本的eclair客户端就会有安详隐患。而electrum用户只查抄剧本,而不会查抄数量。(CVE-2019-13000)<ol><li>进攻Electrum客户端用户(移动端),则要求用户主动毗连到恶意闪电网络节点,而且进攻者利用正确的<code>scriptpubkey,这会烧掉 funding输出中的币。由于Eclair移动端客户端不会中继付出,进攻者在没有带外(offband)交互(譬喻,向用户出售某物,并利用假通道中的资金举办付出)的环境下,是无法举办提款操纵的。

c-lightning: v0.7.1以及更高版本的客户规则确地做到了这一点,而以前版本的c-lightning客户端却没法办到。(CVE-2019-12998)

以下是

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读