Cybellum可以把产品SBOM中的组件信息、漏洞信息和漏洞评估结果整理成VEX文档,用来说明某个漏洞对指定产品到底有没有实际影响。VEX和普通漏洞清单不一样,它除了记录漏洞编号,还要给出产品范围、影响状态以及处置说明。日常维护时,真正容易出问题的地方不是导出动作,而是漏洞状态没有及时更新,或者同一个漏洞在不同产品版本中的结论没有分开记录,最后导出的VEX就可能和当前产品情况对不上。
一、Cybellum怎么生成VEX文档
Cybellum的VEX输出建立在产品SBOM和漏洞评估结果之上。导出前先把产品版本、组件和漏洞状态确认好,再生成文档,后面核对会省事很多。
1、先确认当前产品的SBOM
①登录Cybellum Product Security Platform,进入对应产品。
②打开当前产品版本或分支对应的【SBOM】。
③检查组件列表是否已经完成导入或分析。
④确认组件名称、版本号、供应商和产品版本没有明显缺失。
⑤进入漏洞相关页面,查看SBOM中的组件是否已经匹配到对应CVE。
⑥如果同一产品存在多个版本,切换到本次准备生成VEX的具体版本,不要混用其他版本的数据。
VEX里的产品和组件关系来自当前SBOM。SBOM版本选错,后面的漏洞状态即使填写正确,也会套到错误的产品范围上。
2、检查漏洞评估结果
①打开当前产品的【Vulnerability Management】。
②找到准备写入VEX的漏洞。
③打开漏洞详情,核对【CVE ID】和受影响组件。
④查看当前产品版本与组件版本是否在漏洞影响范围内。
⑤已经完成调查的漏洞,检查对应的影响结论和处置记录。
⑥还没有结论的漏洞,先保留调查状态,不要提前写成无影响或已修复。
⑦同一个CVE影响多个产品版本时,分别检查各版本的状态记录。
3、导出VEX文档
Cybellum提供了从SBOM直接生成VEX报告的入口。
①进入目标产品的【SBOM】。
②打开【Reports】。
③在报告类型中选择【VEX】。
④确认当前选择的产品和版本。
⑤检查准备导出的漏洞信息。
⑥点击【Export】。
⑦保存生成的JSON文件。
⑧打开文件,抽查【product_id】、漏洞编号和等字段是否与平台中的记录一致。
如果刚修改过漏洞状态,建议刷新产品数据后再导出,不要继续使用之前已经保存下来的旧VEX文件。
二、Cybellum VEX文档中的漏洞状态怎么维护
VEX状态不是漏洞数据库里的严重等级,它表达的是这个漏洞对当前产品的实际影响情况。同一个CVE放在不同产品里,状态可以完全不同。
1、按实际调查结果设置status
VEX常见状态包括【not_affected】【affected】【fixed】【under_investigation】。
①刚发现漏洞,还没有完成产品影响分析时,设置为【under_investigation】。
②确认漏洞确实影响当前产品时,调整为【affected】。
③对应产品版本已经包含修复后,调整为【fixed】。
④确认当前产品不会受到该漏洞影响时,设置为【not_affected】。
⑤保存状态后,再检查该状态对应的说明字段是否已经填写。
⑥切换到其他产品版本时重新判断,不直接复制上一版本结论。
【under_investigation】更适合临时状态,调查结束后应改成明确结果,避免后续导出的VEX长期停留在未定状态。
2、not_affected要补充判断依据
把漏洞标成【not_affected】时,只改状态还不够,还要说明为什么不受影响。
①打开对应漏洞的评估记录。
②确认漏洞组件是否真的存在于当前产品。
③组件不存在时,可记录【component_not_present】一类依据。
④组件存在但漏洞代码没有被包含时,可记录【vulnerable_code_not_present】。
⑤漏洞代码存在但当前产品不会执行到该路径时,可使用【vulnerable_code_not_in_execute_path】。
⑥无法用标准依据表达时,补充【impact_statement】,说明当前产品为什么不受影响。
⑦保存后重新检查VEX中的漏洞条目。
如果没有依据就批量把漏洞改成【not_affected】,后面别人看到VEX时很难判断这个结论是经过分析得出的,还是只做了状态清理。
3、affected状态补充处置说明
漏洞确认影响当前产品后,还要把后续处理写清楚。
①把当前漏洞状态设置为【affected】。
②记录受影响的产品版本和组件版本。
③填写对应的【action_statement】。
④写明准备采用的修复、升级或缓解措施。
⑤产品已经进入修复阶段时,继续更新调查记录和处置进度。
⑥新版本完成修复并经过确认后,再把对应版本状态改为【fixed】。
⑦旧版本仍受影响时,不要把旧版本一起改成【fixed】。
三、VEX状态修改后怎么检查文档是否一致
漏洞状态维护完以后,不能只看平台页面。重新导出一份VEX,再对产品版本、漏洞状态和处置信息做一次抽查,更容易发现旧数据没有同步的问题。
1、检查同一个CVE在不同版本中的状态
①打开目标CVE。
②查看它关联的全部产品和版本。
③逐个核对当前版本的状态。
④已经升级修复的版本检查是否为【fixed】。
⑤仍然使用受影响组件的旧版本检查是否保持【affected】。
⑥尚未完成分析的版本保持【under_investigation】。
⑦重新生成VEX,对比各版本条目。
产品版本是VEX维护里很关键的一层。不能因为一个新版本已经修复,就把整个产品系列都标成已修复。
2、重新导出VEX做字段核对
①进入产品【SBOM】→【Reports】。
②选择【VEX】并点击【Export】。
③打开新生成的JSON。
④检查漏洞编号是否齐全。
⑤核对【product_id】对应的产品版本。
⑥检查与平台中的当前结论。
⑦对【not_affected】检查依据或影响说明。
⑧对【affected】检查处置说明。
⑨确认没有问题后,再把这份VEX交给后续系统或合作方使用。
总结
Cybellum生成VEX文档并不复杂,真正影响文档质量的是漏洞状态有没有跟着产品版本和调查结果及时更新。一个漏洞从调查中到确认受影响,再到修复完成,状态和说明都应跟着变化,同一个CVE在不同产品版本中也要分别维护。把产品范围、影响结论和处置记录保持一致,导出的VEX才更方便后续审查和交换。如需进一步了解Cybellum VEX文档生成、漏洞状态维护与SBOM漏洞管理方法,欢迎联系咨询。