从CVSS到真实攻击路径:为什么高危不一定最先被打?

admin 2026-07-10 05:22:41 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文指出CVSS评分不能直接等同于漏洞修复优先级,因为攻击者更关注攻击路径而非分数。文章分析了CVSS的局限性,强调需结合资产暴露面、利用情报(如KEV、EPSS)和业务上下文评估真实风险。提出了基于攻击路径的四类优先级排序方法,并建议安全运营与WAF、蜜罐等工具联动。核心观点是漏洞管理应从看分数转向看路径,在攻击者之前切断最可能被打通的攻击链。 综合评分: 89 文章分类: 漏洞分析,安全运营,红队,实战经验,威胁情报


cover_image

从 CVSS 到真实攻击路径:为什么高危不一定最先被打?

原创

JacobWang JacobWang

NowSec

2026年7月8日 08:00 陕西

在小说阅读器读本章

去阅读

做漏洞运营的人,大概率都遇到过一个场景:

扫描器跑完,后台一片红。

9.8、9.6、9.3,一堆 Critical 漏洞摆在报表里。会议上看起来很吓人,整改清单也很长。但真正进入应急群、被攻击者扫描、被 WAF 和全流量反复打到的,往往不是排在第一位的那个“最高分漏洞”,而是另一个看起来没那么高危、但刚好暴露在公网、刚好有 PoC、刚好能拿到凭据、刚好连着核心系统的漏洞。

这也是漏洞运营里最容易被忽略的一点:

CVSS 高,不等于最先被打。

更准确地说,CVSS 解决的是“这个漏洞本身有多严重”,而真实攻击关心的是“这个漏洞能不能低成本打穿一条路径”。

这两个问题有关联,但不是同一个问题。

一、CVSS 是必要的,但它不是风险本身

先说结论:CVSS 不是没用。

没有 CVSS,漏洞沟通会非常混乱。厂商、安全团队、客户、监管、漏洞库之间,需要一个相对统一的语言描述漏洞严重性。一个漏洞能否远程利用,是否需要认证,是否影响机密性、完整性、可用性,这些都需要被结构化表达。

FIRST 对 CVSS v4.0 的定义是:它是一个用于传达软件漏洞特征和严重性的开放框架。CVSS v4.0 包含 Base、Threat、Environmental 和 Supplemental 四组指标,其中 Base 描述漏洞相对固定的内在属性,Threat 描述会随时间变化的威胁状态,Environmental 则与具体使用环境有关。

NVD 也明确说明,CVSS 用于提供漏洞严重性的定性度量,不是风险度量。这句话很关键。严重性是漏洞自身属性,风险则要结合资产、暴露面、威胁活动、业务影响和现有控制措施。

问题往往出在后面一步。

很多企业在做漏洞整改时,会把 CVSS 直接当成修复顺序:

10 分先修,9 分后修,8 分再说。

这看起来合理,但在真实攻防里并不够。

攻击者不会打开你的漏洞报表,然后按 CVSS 从高到低排队攻击。攻击者更现实。他们关心的是这个目标能不能从公网打到,利用是否稳定,是否有现成脚本,能不能批量化,打进去以后有没有凭据、数据、内网和权限。

换句话说,CVSS 是“漏洞的技术严重性”,攻击路径是“漏洞在你环境里的实际价值”。

前者是通用评分,后者是现场判断。

二、攻击者眼里的漏洞优先级

攻击者挑漏洞,逻辑很朴素。

能直接打公网的,优先。

不需要认证的,优先。

PoC 已公开的,优先。

脚本能批量跑的,优先。

成功后能拿凭据的,优先。

后面连着 VPN、网关、数据库、对象存储、云密钥、运维平台的,优先。

能被勒索、窃密、挖矿、代理、刷量变现的,优先。

这套逻辑和 CVSS 有重叠,但不会完全一致。

一个 9.8 的漏洞,如果只存在于内网测试环境,系统不连生产数据,不能出网,也没有高权限凭据,攻击者未必会先碰它。

一个 7.5 的任意文件读取,如果出现在公网网关上,能读到配置、Token、密钥或会话信息,它的真实风险可能远高于一个“纸面分数更高”的漏洞。

这就是漏洞运营里常说的“攻击路径”。

漏洞本身只是一个点。攻击者真正需要的是一条线:

入口 → 执行 → 凭据 → 横向 → 权限 → 数据 → 变现。

只要一个漏洞能把这条线接起来,它就会被优先利用。分数高低只是其中一个参考。

三、为什么有些高危漏洞反而不容易先被打?

有些漏洞 CVSS 很高,但攻击者并不会第一时间大规模利用,常见原因有几个。

1. 利用条件太苛刻

有些漏洞评分高,是因为理论影响很严重。但实际触发可能需要特定配置、特定版本、特定模块、特定协议状态,甚至需要管理员先完成某些操作。

这种漏洞在公告里看起来很危险,但攻击者批量扫描时会发现:命中率太低。

攻击者最喜欢的是“通用、稳定、易判断”的漏洞。只要发一个请求,就能知道目标是否可打;只要稍微改个参数,就能批量跑。

如果一个漏洞需要复杂环境、长时间调试、目标差异大,它即使分数很高,也不一定会成为第一波攻击热点。

2. 不在公网暴露面上

公网暴露面决定了攻击成本。

同样是 RCE,出现在公网入口设备上,和出现在内网某个隔离系统里,风险完全不同。

攻击者做第一轮攻击时,通常依赖互联网测绘、资产指纹、批量请求和自动化验证。如果漏洞资产根本不暴露在互联网上,攻击者要利用它就需要先获得内网入口。

这并不代表它安全,只是说明它不一定是“最先被打”的那个点。

真正危险的情况是:漏洞资产既高危,又公网可达,又有公开利用代码。这种组合才应该进入应急级别。

3. 没有稳定 PoC 或利用链

攻击者也讲投入产出。

一个漏洞理论上可以 RCE,但 PoC 不稳定,容易崩服务,适配版本复杂,还容易打出异常日志,那它的吸引力就会下降。

相反,一个中高危漏洞如果已经有成熟利用脚本,能自动识别版本,能绕过常见 WAF 规则,能批量跑结果,就会迅速成为攻击者的优先目标。

漏洞利用从来不只是“能不能打”,还要看“能不能稳定、安静、批量打”。

4. 打进去以后收益不高

攻击者不是为了刷 CVE 分数。

他们最终要的是收益。

一个漏洞即使能打穿,如果拿到的是低权限、空环境、无数据、无凭据、无内网连通性,攻击者可能扫一下就走。

但如果另一个漏洞能让攻击者直接读到数据库密码、云 AK/SK、JWT Secret、VPN 会话、对象存储配置,那它的真实价值就非常高。

很多攻击路径真正起作用的,不是最开始那个漏洞有多高危,而是它后面能不能拿到“下一把钥匙”。

5. 已有防护改变了实际风险

CVSS 不知道你的环境里有没有 WAF、RASP、EDR、访问控制、网络隔离、白名单、只读权限、最小权限和出网限制。

同一个漏洞,在不同企业里风险可能完全不同。

一个公网 RCE,如果前面有强规则 WAF,后端容器无权限、无凭据、无内网访问、不能出网,攻击路径会被明显削弱。

但一个看似普通的信息泄露,如果没有任何访问控制,泄露内容又刚好包含高权限凭据,就可能成为真正的入口。

这也是为什么只看 CVSS 容易误判。

CVSS 描述的是漏洞能力,不描述你的防护效果。

四、低分漏洞为什么有时更危险?

真实事件里,攻击链经常不是从一个满分 RCE 开始。

它可能从一个文件读取开始。

也可能从一个 SSRF 开始。

也可能从一个弱认证接口开始。

也可能从一个路径遍历开始。

也可能只是从一个未授权管理页面开始。

这些漏洞单独看,未必都是 9.8。但如果它们刚好能访问配置文件、元数据服务、内部接口、日志文件、备份文件、密钥文件,风险就会快速放大。

举个简单例子:

一个任意文件读取漏洞,如果只能读普通静态文件,影响有限。

但如果它出现在网关、运维平台、CI/CD、AI 应用平台、配置中心上,能读到 .env、配置文件、数据库账号、云密钥、Token,它就不是普通信息泄露,而是攻击链的起点。

再比如 SSRF。

很多 SSRF 本身看起来只是服务端请求伪造,但如果目标环境在云上,后面连着元数据服务、内网管理接口、对象存储或服务发现组件,它就可能变成凭据获取、内网探测甚至云资源接管。

所以,漏洞风险不能只看名称,也不能只看分数。

要看它处在什么资产上,后面连着什么权限,能否把攻击者带到下一步。

五、KEV、EPSS 和 SSVC 为什么越来越重要?

近几年,漏洞优先级判断已经从单纯看 CVSS,逐步转向“真实利用 + 预测概率 + 业务上下文”的组合判断。

CISA 的 Known Exploited Vulnerabilities Catalog,也就是 KEV 目录,就是一个重要信号。CISA 将它定位为被在野利用漏洞的权威来源,组织可以把 KEV 作为漏洞管理优先级框架的输入。

KEV 的价值在于,它回答了一个很直接的问题:

这个漏洞是不是已经被真实攻击者利用过?

如果答案是是,那么它的优先级通常要高于“只是理论上很严重”的漏洞。

EPSS 解决的是另一个问题。

FIRST 对 EPSS 的说明是,它是一个数据驱动的机器学习模型,用于估计某个已公开 CVE 被利用的概率。EPSS 模型页面进一步说明,它给出的是未来 30 天内观察到利用活动的每日概率估计。

也就是说,EPSS 不是告诉你“这个洞多严重”,而是告诉你“这个洞接下来被打的概率有多高”。

这和 CVSS 是互补关系。

CVSS 看影响,EPSS 看利用可能性,KEV 看是否已经被利用。

CISA 的 SSVC 则更进一步。它不是单纯打分,而是把漏洞处置变成决策树。CISA 页面显示,SSVC 的决策会结合 exploitation status、technical impact、automatable、mission prevalence 等因素,输出 Track、Track*、Attend、Act 等处置建议。

这套思路更接近实战。

因为漏洞处置不是数学题,而是资源分配问题。

安全团队每天面对的不是一个漏洞,而是几百个、几千个漏洞。人力有限、变更窗口有限、业务承受能力有限,就必须把最可能被攻击、最能造成损失、最容易打通路径的问题先处理。

六、真实攻击路径怎么判断?

漏洞运营如果想从“看分数”转向“看路径”,可以先问几个问题。

这个资产是否公网可达?

攻击者是否能不登录就触发?

是否有公开 PoC 或批量利用脚本?

漏洞是否已经进入 KEV?

EPSS 是否明显偏高?

漏洞所在资产是否是网关、VPN、WAF、堡垒机、身份系统、CI/CD、云控制台、数据库、对象存储、AI 应用平台?

成功利用后能不能执行命令、读取文件、获取凭据、访问内网、上传文件、写入配置?

这台资产是否保存了数据库密码、云密钥、API Key、证书、Token、配置文件?

它能不能访问生产环境?

它能不能出网?

它是否被 WAF、ACL、VPN、零信任、EDR、最小权限和网络隔离限制?

有没有相关扫描、告警、蜜罐命中、全流量异常?

这些问题比单纯问“CVSS 几分”更接近真实风险。

如果一个漏洞满足:

公网可达 + 无需认证 + 有 PoC + 可自动化 + 后面连着高价值资产

那么即使它不是最高分,也应该优先处理。

如果一个漏洞只是:

高分 + 内网不可达 + 触发条件复杂 + 无 PoC + 低价值资产 + 有隔离

那么它仍然要修,但不一定要压过所有业务窗口去修。

这不是降低安全要求,而是让整改顺序更接近攻防现实。

七、对 WAF、蜜罐、全流量和态势的启发

在安全运营里,漏洞优先级不能只停留在漏洞平台。它需要和 WAF、蜜罐、全流量、EDR、态势平台联动。

WAF 侧可以告诉你:这个漏洞是不是已经有人打了,攻击请求是否命中规则,是否来自代理池、云主机、境外扫描器,是否出现批量验证行为。

蜜罐侧可以告诉你:攻击者现在关注什么资产,PoC 是否已经扩散,攻击载荷是否从扫描变成了利用,是否出现后渗透行为。

全流量侧可以告诉你:漏洞资产被访问以后,有没有异常外联、内网探测、数据库连接、文件下载、DNS 隧道、长连接和大流量上传。

态势平台则应该把这些信号合起来,而不是只展示一个 CVSS 分数。

更合理的告警不应该只是:

“某资产存在高危漏洞,CVSS 9.8。”

而应该是:

“某公网资产存在可远程利用漏洞,EPSS 高,已有在野利用,近 24 小时出现扫描命中,该资产可访问内网数据库,建议进入应急修复。”

这种告警才有处置价值。

安全运营最怕的不是漏洞多,而是所有漏洞看起来都一样重要。

一旦所有漏洞都标红,真正危险的漏洞反而会被淹没。

八、一个更实用的排序方法

如果企业还没有成熟的漏洞优先级模型,可以先用一个简单版本。

把漏洞分成四类。

第一类,立即处理。

已在野利用、进入 KEV、资产公网可达、无需认证、可远程利用、存在公开 PoC,且影响网关、VPN、身份、云、数据库、运维、CI/CD、核心业务系统。这类漏洞不应进入普通排期,而应进入应急流程。

第二类,优先处理。

没有明确在野利用,但 EPSS 高、PoC 已公开、可自动化利用,或者资产价值较高。这类漏洞要进入短周期整改,不能长期挂账。

第三类,计划处理。

CVSS 较高,但不公网暴露,利用条件复杂,受访问控制限制,资产价值一般。这类漏洞要修,但可以走常规变更窗口。

第四类,持续跟踪。

低危或中危,当前没有明确攻击路径,但涉及敏感资产、配置泄露、权限边界或可能被链式利用。这类漏洞不能直接忽略,需要结合资产变化和威胁情报动态调整。

这套方法不复杂,但比单纯按 CVSS 排序有效。

因为它把漏洞从“分数”拉回到了“路径”。

九、别把 CVSS 当替罪羊

需要强调一点:漏洞运营混乱,不是 CVSS 的错。

CVSS 本来就不是为了替企业做全部风险决策。

它是一个起点,不是终点。

真正的问题在于,很多企业把它当成了唯一判断标准。

CVSS 可以告诉你漏洞技术上有多严重,但它不知道你的资产在哪,不知道有没有公网暴露,不知道攻击者是不是正在扫,不知道你前面有没有 WAF,不知道后面有没有数据库,不知道系统里有没有云密钥,也不知道这个业务停一天会造成什么影响。

这些信息只有企业自己知道。

所以,漏洞管理的成熟度,最终体现在能不能把外部评分和内部上下文结合起来。

只靠 CVSS,是“看漏洞”。

结合资产、暴露面、利用情报、攻击路径和业务影响,才是“看风险”。

十、结语:攻击者打的是路径,不是分数

高危漏洞当然要重视。

但“高危”不应该只由一个数字决定。

真实攻击里,攻击者会选择最容易进入、最容易扩大、最容易变现的路径。这个路径可能从 9.8 的 RCE 开始,也可能从 7.5 的文件读取开始;可能是一个高危漏洞,也可能是几个中危问题叠加;可能是一个补丁没打,也可能是一个暴露面没人管。

漏洞运营的目标,不是把报表里的红色数字按顺序清掉。

真正的目标,是在攻击者之前,找到最可能被打通的那条路径,并把它切断。

CVSS 仍然重要。

但它只能告诉我们,这个洞理论上能造成多大影响。

至于它会不会被打、什么时候被打、打进去以后能走多远,还要看暴露面、可利用性、资产价值、权限边界和攻击者收益。

以后做漏洞整改,不妨少问一句:

“这个漏洞几分?”

多问一句:

“如果攻击者从这里进来,下一步能到哪里?”

资料来源:FIRST:CVSS v4.0 官方规范,说明 Base、Threat、Environmental、Supplemental 等指标分组。

资料来源:NVD:CVSS 严重性说明,指出 CVSS 用于衡量漏洞严重性,不等同于完整风险度量。

资料来源:CISA Known Exploited Vulnerabilities Catalog:说明 KEV 可作为漏洞管理优先级框架输入。

资料来源:FIRST EPSS:说明 EPSS 是用于估计公开 CVE 未来被利用概率的数据驱动模型。

资料来源:CISA SSVC:说明 SSVC 使用 exploitation status、technical impact、automatable、mission prevalence 等因素支持处置决策。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:NowSec JacobWang JacobWang《从 CVSS 到真实攻击路径:为什么高危不一定最先被打?》

评论:0   参与:  0