披露了 miniupnp 依赖项对 Bitcoin Core 的无限循环漏洞的影响,该漏洞的修复程序于 2021 年 9 月 14 日在 Bitcoin Core 版本 v22.0 中发布。
此问题被视为**低**严重性。
细节
Bitcoin Core 使用的 UPnP 库 miniupnp 会在发现过程中等待,只要它从网络上的设备接收随机数据。此外,它还会为每个新的设备信息分配内存。本地网络上的攻击者可以假装成 UPnP 设备,并持续向 Bitcoin Core 节点发送膨胀的 M-SEARCH 响应,直到其耗尽内存。
只有使用-miniupnp
选项运行的用户才会受到此漏洞的影响,因为在默认情况下 Miniupnp 已关闭。
归属
感谢 Ronald Huveneers 向 miniupnp 项目报告了无限循环漏洞,并感谢 Michael Ford (Fanquake) 向 Bitcoin Core 项目报告了该漏洞以及触发 OOM 的 PoC 利用程序和用于提升依赖项的拉取请求(包含修复程序)。
时间线
- 2020-09-17 - Ronald Huveneers 初次向 miniupnp 报告无限循环漏洞
- 2020-10-13 - Michael Ford 初次向 security@bitcoincore.org 发送报告
- 2021-03-23 - 修复程序合并 (https://github.com/bitcoin/bitcoin/pull/20421)
- 2021-09-13 - 发布 v22.0
- 2024-07-31 - 公开披露