目标
你从不调用的代码路径里那个“严重”是噪音,你公开解析器里那个“中危”才是急事。只看 CVSS 的分诊把恐慌预算花在刀刃之外;结合可达性与暴露面的分诊,把紧急窗口留给攻击者真正走得通的路,把其余项变成有证据、有理由的排期。
步骤要点
- 去重建基线:跨扫描器合并重复发现,每个(包,漏洞)只留一条,附当前版本与修复版本。
- 评估可达性:静态调用图、运行时证据或特性开关状态,判定代码是否真的调到脆弱路径,逐条标注证据。
- 叠加暴露面:包运行在哪——公网服务、内部工具还是仅构建期依赖——得出上下文中的有效严重度。
- 按组合分级路由:严重且可达且公网走紧急补丁窗;不可达的排期升级并记录理由;未知的先派可达性分析任务再排期。
- 用补偿控制闭环:修不动时为该发现挂上补偿控制(WAF 规则、关特性、封出口)直到升级落地。
排错提示
每周都在救火式打补丁说明分诊没做可达性,把调用图证据接进流程;不可达的判定没有证据支撑就是自欺,静态或运行时证据必须落档;过期未修的漏洞既无补丁也无控制是治理塌方,逾期项必须二选一可见。
适用边界
可达性分析对动态分发与反射调用有盲区,“未知”必须保守处理;补偿控制有时效性,控制失效要随配置变更重新评估。
代码示例
finding: CVE-2026-8841 (cvss 9.8) pkg: xmlparse 2.3.1
context assessment:
reachability: parser feature ENABLED, called in
/api/import (public) -> REACHABLE
exposure: internet-facing, no auth on import
effective tier: EMERGENCY (patch window: 48h)
finding: CVE-2026-7702 (cvss 8.1) pkg: devserver 4.x
reachability: dev-only, not in production build
exposure: build-time only
effective tier: SCHEDULED (next minor, rationale logged)
compensating control (until xmlparse 2.3.2 ships):
WAF rule: block XXE payloads on /api/import