链资讯 链资讯
Ctrl+D收藏链资讯

ING:闪电网络安全漏洞技术细节及发现过程_LIGHT

作者:

时间:

日前,开发者RustyRussell首次对外披露了闪电网络安全漏洞及对应解决方案的技术细节。

以下是技术细节内容:

接受通道的闪电网络节点必须检查交易输出是否确实打开了提议的通道,否则攻击者可声称打开一个通道,然后要么不向对等节点支付,要么不进行全额支付。

一旦交易达到最小深度,其就可从通道中支出资金。只有当受害者试图关闭通道,以及其拥有的任何承诺或相互成交交易都无效时,他们才会注意到这种恶意行为。

而闪电网络客户端并不一定会执行这种检查操作:

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

连接对等节点,并用任何交易id声称打开一个通道,就可利用这种漏洞。

比特币闪电网络容量突破4,100枚BTC,创历史新高:金色财经报道,据 1ml 最新数据显示,比特币闪电网络容量已突破 4,100 枚 BTC,创下历史新高,截至目前为 4,129.51 BTC,约合 84,329,391.47 美元,30 日增幅为 3.57%;此外,比特币闪电网络通道数量达到 85,215 个,30 日跌幅 0.3%,节点数量为 17,696个,30 日增幅 0.31%。[2022/7/7 1:58:13]

lnd:v0.7.1及更高版本的客户端解决了这个问题,但以前版本的lnd没有检查数量。v0.7.0及更高版本客户端正确检查了

scriptpubkey,v0.6.x版本客户端部分强制执行资助

ScriptPubkey,但v0.6.0之前版本的客户端则完全没有进行相关验证。

对所有以前版本的lnd客户端,攻击者都可能通过不正确的数量进行攻击。在v0.7.0版本,攻击者必须使用正确的scriptpubkey,这会烧掉funding输出中的币。

Robinhood使用闪电网络进行比特币交易:金色财经报道,股票和加密货币交易应用程序Robinhood今天在比特币2022会议上宣布,它正计划将比特币闪电网络添加到其平台中,以加快BTC交易。它还分享说,其beta加密等待名单中的合格用户现在可以通过其加密钱包功能发送和接收加密货币。闪电网络是建立在比特币之上的第2层网络,可实现更快、低费用的交易。通过其应用程序上的钱包功能,Robinhood加入了越来越多使用闪电网络进行比特币交易的科技和金融公司的行列。Robinhood的公告是在它分享了全面开发钱包功能的计划后六个月发布的,该功能将允许其用户存入和提取加密资产。该功能很快获得了一个很长的候补名单,超过200万人请求访问。Robinhood在1月份发布了其加密钱包测试版,允许特定用户转移比特币、以太坊和狗狗币。(decrypt)[2022/4/8 14:11:25]

而对于v0.6.0版本之前的客户端,攻击者通过不正确的scriptpubkey都可实现攻击。在v0.6.x客户端中,如果在funding交易达到所需的确认数,在任意一个全节点后端上运行txindex=0,且节点处于离线状态时,此漏洞也可能会被利用。

闪电网络节点数量已达15344个:金色财经报道,据1ML.com数据,目前,支撑网络的节点数量达到15344个,相较30天前数据,环比上涨3.24%;通道数量为36025,相较30天前数据,环比上涨1.2%;闪电网络承载能力目前为1048.38BTC,约合2886.23万美元。[2020/12/27 15:49:31]

利用错误outpoint攻击neutrino客户端用户,需攻击者将其假outpoint与BIP158筛选程序中的真实outpoint脚本碰撞。用于创建筛选程序的siphash密钥是从blockhash派生而来的。因此,攻击者在不提前知道区块哈希的情况下,是无法直接进行攻击的。此外,neutrino客户端节点通常不会监听或不具备公告地址,这意味着攻击者必须等至接收到入站连接后才能执行攻击。

eclair:v0.3.1及以上版本的客户端正确解决了安全隐患,如果用户使用了bitcoincore作为后端,则以前版本的eclair客户端就会有安全隐患。而electrum用户只检查脚本,而不会检查数量。

动态 | Breez推出基于闪电网络的比特币支付应用:据CoinDesk 6月17日消息,非托管钱包和支付平台Breez公司发布公告,宣布其将推出基于比特币闪电网络客户端Neutrino,该项目目前处于beta测试阶段。[2019/6/17]

攻击Electrum客户端用户,则要求用户主动连接到恶意闪电网络节点,并且攻击者使用正确的scriptpubkey,这会烧掉funding输出中的币。由于Eclair移动端客户端不会中继支付,攻击者在没有带外交互的情况下,是无法进行提款操作的。

解决方案

一旦观察到funding交易,对等节点必须检查`funding_created`中所述的outpoint是否为`open_channel`中描述金额的funding交易输出。

背景

要打开一个闪电网络通道,funding对等节点发送带有提议`funding_satoshis`的`open_channel`。被资助者则用`accept_channel`回复,提供其希望用于这笔funding交易的密钥。

动态 | 闪电网络节点数量突破8000个:据bitconist报道,1ml.com的数据显示,当前闪电网络的节点数量已达到8016个,比上个月增长了8%。该网络目前的总支付容量为1062 BTC(537万美元),本月早些时候曾达到1080 BTC的历史最高水平。[2019/4/17]

然后出资人创建这笔funding交易,并发送交易id以及`funding_created`消息中的输出编号。

```

+-------++-------+

||--(1)---open_channel----->||

||<-(2)--accept_channel-----||

||||

|A|--(3)--funding_created--->|B|

||<-(4)--funding_signed-----||

||||

||--(5)---funding_locked---->||

||<-(6)---funding_locked-----||

+-------++-------+

其中节点A是“出资人”,节点B是“被资助者”

有了这些信息,“被资助者”可在第一笔“承诺交易”上创建签名,并将其发送到一则

`funding_signed`消息中,以便在出现问题时,资助者可取回他们的资金。这样,出资人就可以安全地签署并广播这笔opening交易。经过一定数量的确认后,通道就开始运作(`funding_locked`)了。

规范清楚地描述了检查所交换的各种签名,是否确实允许创建有效承诺交易的要求,并描述了等待确认的要求。

但是,它并不要求接收者实际检查交易是否是出资人承诺的交易:包括金额和实际的scriptpubkey。

漏洞发现过程

RustyRussell(Blockstream)在为规范本身进行协议测试时发现了这一漏洞。

在编写测试时,通道开启者在`funding_created`消息中提供了不正确的`funding_output_index`,Russell意识到C-Lightning客户端不会拒绝它,因为C-Lightning只检查`funding_txid`的确认计数,甚至连`funding_output_index`是否存在都不会进行检查!

而这个要求在规范中是没有被提到的,因此Rusty立即向其它被广泛使用的客户端的作者揭示了这一问题。经过调查后,他们发现的确是存在这样的问题。

于是,几个团队一起做出决定,先在新版本客户端中悄悄地解决这些问题,然后再经过8周,就可揭示问题本身,接着再过四周后,他们就全面披露漏洞。

值得庆幸的是,这一长期存在的漏洞并没有被广泛利用,其确实提供了一个测试整个闪电网络生态系统通信和升级方法的机会。

漏洞时间表

2019-06-27:RustyRussell发现漏洞,并通知LND和Eclair客户端作者;2019-06-28:CVE漏洞编号被分配完毕;2019-07-02:lndv0.7.0-beta客户端发布;2019-07-03:Eclair0.3.1客户端发布;2019-07-04:c-lightning0.7.1客户端发布;2019-07-06:RustyRussell等人开始向其他客户端(rust-lightning,ptarmigan,BLW)作者披露漏洞.2019-07-30:lndv0.7.1-beta客户端发布;2019-08-17:2019-08-30:对外披露CVE漏洞存在,劝告使用旧版本客户端的用户进行升级。2019-09-07:首次发现有人企图利用这种漏洞;2019-09-27:全面披露CVE漏洞细节;2019-09-27:根据规范要求提交PR;

https://github.com/lightningnetwork/lightning-rfc/blob/v1.0/02-peer-protocol.md#the-funding_created-messagehttps://github.com/lightningnetwork/lightning-rfc/blob/v1.0/03-transactions.md#funding-transaction-outputhttps://github.com/lightningnetwork/lightning-rfc/blob/v1.0/02-peer-protocol.md#the-open_channel-messagehttps://github.com/lightningnetwork/lightning-rfc/blob/v1.0/02-peer-protocol.md#requirements-2https://github.com/lightningnetwork/lightning-rfc/blob/v1.0/02-peer-protocol.md#the-funding_locked-messagehttps://github.com/ElementsProject/lightning-rfc-protocol-test

标签:INGUNDDINLIGHTLet's Go FarmingMK FUNDSCRO HoldingsMoonlight Token

以太坊最新价格热门资讯
ETHE:太燃了,以太坊日交易费总额首次超过比特币_HER

据Trustnodes9月19日报道,有史以来,以太坊网络日交易费总额首次超越比特币。 根据Massari的数据,在过去2天的某个24小时时间段内,用户总共为以太坊网络支付了20.7万美元的费用.

Maker:MakerDAO多资产抵押道路遭社区质疑,创始人回应:去信任化协议的本质不会变_MAKE

MakerDAO的未来将是密码金融与传统去信任化资产的结合。而从Reddit最近的一次讨论可以看出,MakerDAO支持者并不认同这条发展道路.

ING:瑞波终于对DeFi下手!收购Logos打造基于瑞波币(XRP)DeFi生态_Dinger Token

随着去中心化金融的发展越发火热,一向专注于金融领域的瑞波终于要打造自己的DeFi生态,已经正式开始着手构建基于XRP的去中心化金融产品.

ING:解读加密圈最流行的资产估值模型EoE:MV=PQ_Lightcoin

由约翰·穆勒引出的交易方程式,是目前加密圈里最流行的估值模型。这个方程式是一个恒等式: MV=PQ 其中, M=货币供应量(MoneySupply),为一定时期流通中的货币的平均数量;V=货币流.

BOOK:《华尔街日报》:Visa、万事达等企业正重新考虑对Libra的参与_LIBRA

Faceboo为建立一个基于加密货币的全球支付网络而组建的联盟出现了裂痕。 据知情人士透露,Visa、万事达(Mastercard)和其他签署了帮助建立和维护天秤座支付网络协议的金融合作伙伴,在.

KKT:除了实物交割期货,Bakkt还有什么野心?_BOOK

“富二代”Bakkt的诞生在草根为主的数字货币行业,Bakkt出身无疑是名门正派,显得尤其鹤立鸡群,光芒四射.