如果 NVD CVE 描述包含文件名,是否意味着引用的项目是开源的?

If NVD CVE description contains filenames, does it mean the referred project is open sourced?

我正在尝试为未来的漏洞研究找到尽可能多的开源项目库。在查看 NVD 源数据时,我发现一些 CVE 描述包含导致漏洞的源代码的文件名甚至函数名,这是否意味着项目是开源的?

同时,有没有更好的方法或数据源可以帮助我真正获得引用的项目回购协议? (例如 CVE-2018-13305 --> FFmpeg)

第一个问题的简短回答是否定的。 NVD 数据基于 MiTRE 的 CVE 记录。一旦 mitre 发布了 CVE 的详细信息,即 CVE 请求者或 CNA 提交的详细信息,NVD 将进行额外的分析。

如果 CVE requester/CNA 提供了诸如 filename/function 之类的详细信息,那么它将在 CVE 记录中,或者如果 NVD 能够从公开来源确定这些详细信息,那么他们可能将其添加到他们的分析中。也就是说,您会发现闭源 CVE 很少有这种详细信息。

因此,虽然 CVE 描述包含文件名或函数这一事实很好地表明相关软件是开源的,但这并不是一个规则。

第二个问题的答案是否定的。好吧,有很多方法,但是这个问题太宽泛了,无法在这里解决。

针对您的第一个问题,可能会,也可能不会。我看过非开源漏洞的描述,其中列出了易受攻击的 file/module/function 个名称。

回答你的第二个问题,是的,有办法。在 NVD JSON 提要中,您会看到每个漏洞都引用了供应商对手和其他在线外部引用。在引用 links 字段中,您会看到字段 url 和标签(url 是 URI,标签是 URL 的描述)。为了实现您想要的目标,我将从查找 link 提交到 git 存储库(提示:不仅是 github)的所有漏洞开始。接下来,您可以查看那些 git 引用中的哪些,将所有那些 link 过滤到其他非开源漏洞 POC。