从这个网页截图中,可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 一个节点在处理特定构造的未确认交易时,可能会被阻塞数小时。 - 这个问题被认为是高严重性。 2. 细节: - 节点在接受交易进入内存池后,会通过其缓存的孤儿交易来查找是否可以接受这个新接受的交易。 - 这个搜索是二次的:对于新接受交易的每个输出,它会通过所有缓存的孤儿交易(最多100个)。 - 通过特别构造的孤儿交易使其无效但昂贵验证,节点可能会被阻塞数小时。 3. 修复: - 问题由Pieter Wuille在PR #15644中修复,通过中断孤儿解析来处理新消息,当找到匹配时(无论孤儿是否有效或无效)。 4. 归因: - 对sec.eine表示感谢,因为它负责任地披露了这个漏洞,并提供了对修复的反馈。 5. 时间线: - 2019年3月19日:sec.eine通过电子邮件向Greg Maxwell报告了问题。 - 2019年3月21日:Greg Maxwell回复了关于提议补丁的信息。 - 2019年3月22日:sec.eine对补丁提供了反馈。 - 2019年4月1日:PR #15644合并。 - 2019年5月18日:Bitcoin Core版本0.18.0发布,修复了这个问题。 - 2020年7月22日:问题在PR审查俱乐部中部分披露。 - 2020年8月1日:最后一个易受攻击的Bitcoin Core版本(0.17.x)结束生命周期。 - 2024年7月3日:公开披露。 6. 发布日期: - "Disclosure of significant DoS due to orphan handling"于2024年7月3日发布。 这些信息提供了关于比特币核心中孤儿处理导致的拒绝服务(DoS)漏洞的详细描述、修复过程和时间线。