所有漏洞都可以利用吗?

信息安全 开发 脆弱性 开发开发
2021-08-17 20:36:50

我了解漏洞和漏洞利用之间的区别,但是当我浏览漏洞利用数据库时,我发现漏洞更多,漏洞利用更少。对于每个被发现的漏洞,不应该至少有一个漏洞利用吗?不是所有的漏洞都可以利用吗?

我想说的是,当我在具有特定 CVE ID 的漏洞利用数据库上搜索漏洞利用时,不能保证该漏洞的利用将可用。如果一个漏洞不能被利用,它怎么能被认为是一个漏洞?

2个回答

根据定义,漏洞是软件系统中的一个弱点,无论是 Web 应用程序、在端口上运行的网络守护程序服务还是作为二进制文件的厚应用程序。使用前过滤机制可以利用弱点 - 主要原因可能有两个:

  1. 提取高度敏感的数据
  2. 在已经受影响的基础上进一步提升特权

Exploit 促进了这两个因素。因此,根据定义,漏洞利用漏洞利用代码应该是系统或一组不同类型系统上现有漏洞的放大器。

如果在词法分析期间检测到一个漏洞,这可能是由于源代码安全审计,试图让您访问特殊数据或以其他方式授予提升权限的复制失败,这并不意味着不会有漏洞,但这确实意味着没有现成的漏洞可以为您提供任何这些漏洞。

它可以授予什么?

  • 可能会链接多个漏洞,包括特定发现的漏洞
  • 该漏洞可能不会影响所有系统,而是影响特定实例,具体取决于它所在的平台或其他依赖项?
  • 该漏洞已确定并发布了公告,但之前它是一个 0day,已被出售给受影响的供应商,该供应商后来从未披露过潜在的完整的逐步利用代码或任何有关特定“触发”因素的文档漏洞会起作用。

要回答你的问题,

  1. 毫无疑问,漏洞可以被视为风险因素。
  2. 漏洞并不总是以利用或有效利用可用性而告终。
  3. 某些漏洞总是可以利用的,这取决于是否完成了正确的链接或发布了未公开的有效利用代码。这又取决于供应商披露方。
  4. 漏洞是系统的弱点。它可能导致严重信息性实例,具体取决于泄露了多少敏感数据,获得了多高的提升权限。

可能存在其他因素,包括但不限于该漏洞是否可以链接到另一个潜在漏洞,该漏洞恰好存在于同一系统或一组系统上,影响 CIA 三元组的安全性并因此损害合规性因素。

我的理解是,为什么某些漏洞没有漏洞利用有几种可能性:

  1. 有人可能已经在源代码中发现了这个问题,但无法重现它。
  2. 针对特定实现/情况发现了漏洞,因此可能尚不存在通用漏洞利用。
  3. 这些漏洞可能存在,但可能尚未公开[尚未],要么是由于负责任的披露计划,要么只是因为有人将他们的漏洞保密。

另请参阅此问题