它是如何工作的?
启用/禁用上下文分析
默认情况下,CVE上下文分析对所有资源中的新工件都是启用的,这些资源被x射线标记为索引。2022世界杯阿根廷预选赛赛程
上下文分析仅应用于新扫描,而不适用于现有扫描。分析将在索引资源上运行,但是,它不会在Index Artifact2022世界杯阿根廷预选赛赛程s History上运行。有关更多信息,请参见索引x射线资源2022世界杯阿根廷预选赛赛程。
请注意,在某些情况下,由于涉及深度扫描,扫描可能需要更长的时间才能完成。
如果您想禁用每个资源的上下文分析,请执行以下操作:
- 导航到的政府模块,转到x光|设置|常规并点击索引资源。2022世界杯阿根廷预选赛赛程
- 选择存储库或构建并选择配置。
- 禁用漏洞上下文分析选择。
或者,如果您想禁用所有功能,您可以禁用contextualAnalysis
参数在x射线系统。
上下文分析状态和结果
一旦工件在Xray中被索引为单个上传、构建或发布包的一部分,Xray将验证工件是否包含被认为具有非常高影响的cve。如果找到这样的cve, Xray将按需运行上下文分析并检索上下文分析结果。结果包括以下内容:
CVE上下文分析状态
- 禁用:管理员需要启用该特性。
- 不适用: CVE不适用
- 适用的: CVE适用
- 在进行中:如果Xray正在分析CVE的适用性,则在CVE详细信息中显示为正在扫描。
- 待定: x射线无法确定CVE是否适用。
CVE上下文分析结果
REST API支持
上下文分析特性支持以下REST api。
获取每个CVE的上下文分析
描述:检索每个CVE的上下文分析数据。
安全:需要具有“读取”权限的有效用户。
用法:得到x光/ api / v1 / cve_applicability吗?component_id={}&vulnerability_id={}&source_comp_id={}&path={}
必需的参数:
参数 | 描述 |
---|---|
component_id | 工件/构建/包组件ID之一,用于标识应该为其返回结果的工件。 |
vulnerability_id | 漏洞ID。 例子:x光- 140308 |
可选参数:
参数 | 描述 |
---|---|
source_comp_id | 如果给定,则只返回与该组件匹配的结果。如果没有给出,返回的结果将包含工件中任何组件的数据。 |
路径 | 如果给出,将用于识别相关的特定工件。否则,仅通过component_id可能会导致来自多个工件的结果聚合。只与工件相关(不与构建/包相关)。 |
user_issue_id | 如果给出,将用于识别相关的特定工件。否则,仅通过component_id可能会导致来自多个工件的结果聚合。只与工件相关(不与构建/包相关)。 例子:147764179185893785 |
{"applicability": *bool, "scan_status": int8, "scanner_available": bool, "component_id": string,工件的# "source_comp_id": string, "cve_id": string, "scan_status": int8, # 0表示开始,1表示完成"applicability": *bool, "info": string, "details":[#可能为空{"file_path": string, "details": string},…]}…]}
支持上下文分析特性的现有REST api
- 工件的总结—新增各版本的适用性信息。请参阅下面的示例回复。
- 建设总结—新增各版本的适用性信息。
- 得到违反-在每个违规项中添加适用性信息。
- 被忽略的违规行为列表-在每个违规项中添加适用性信息。
- 扫描构建V1—在每个告警中添加适用性信息。
获取存储库配置—新增一个参数
vuln_contextual_analysis
:真或假
。只有启用了特性,并且可以根据每个存储库启用或禁用它。示例响应{"repo_name": "test", "repo_config": {"vuln_contextual_analysis": true, "retention_in_days": 90}}
更新存储库配置-添加了选项,以启用或禁用上下文分析每个存储库的参数
vuln_contextual_analysis
:是真还是假。
示例请求{"repo_name": "test", "repo_config": {"retention_in_days": 90, "vuln_contextual_analysis": true}}
{"issue_id": " xray58291 ", "summary": " Mozilla网络安全服务(NSS)中lib/dbm/src/hash.c中alloc_segs函数中基于堆的缓冲区溢出允许上下文相关的攻击者使用精心制作的cert8.db文件产生未指定的影响","description": " Mozilla网络安全服务(NSS)中lib/dbm/src/hash.c中alloc_segs函数中基于堆的缓冲区溢出允许上下文相关的攻击者使用精心制作的cert8.db文件产生未指定的影响","issue_type":“安全”、“严重”:“低”,“提供者”:“JFrog”、“cf”:[{“cve”:“cve - 2017 - 11695”,“cwe”:“cwe - 119”,“cvss_v2”:“4.6 / CVSS: 2.0 / AV: L /交流:L /非盟:N / C: P / I: P / A: P”、“cvss_v3”:“7.8 / CVSS: 3.0 / AV: L /交流:L /公关:L / UI: N / S: U / C: H /我:H: H”}],“创建”:“2017 - 09 - 03 - t00:00:00.475z”、“impact_path”:[“默认/ kseniam xmas_java_applicable_correct /最近/ sha256__a4ae154e5895965ad18c63d1fa58909c3d434e1efcfe6a7b866ccc617b967aee.tar.gz / libnss3:2:3.35-2ubuntu2.13”),“适用性”:[]}cve不适用:"applicability": [{"scanner_available": true, "component_id": "docker://xmas_java_applicable_correct:latest", "source_comp_id": "gav://log4j:log4j:1.2.16", "cve_id": "CVE-2019-17571", "scan_status": 1, "applicability": false, "info": " subclassing HttpInvokerServiceExporter not detected", "details": null}] CVE是适用的:"applicability": [{"scanner_available": true, "component_id": "docker://xmas_java_applicable_correct:latest", "source_comp_id":“gav: / / com.fasterxml.jackson.core: jackson-databind: 2.9.1”、“cve_id”:“cve - 2020 - 11111”,“scan_status”:1、“适用性”:真的,“信息”:“可能不安全的反序列化杰克逊databind发现”,“细节”:[{“file_path”:“/ app / jackson_databind_vulnerable.jar”,“细节”:“< / var / firmware_store / e29979f1 - 00 - f2 - 4 - a63 b3c2 - 73 edac5eb119 /提取/打开/文件系统/ 411303 fcf80e076da6003a4a61d1914103bbee9b6f45d3a35fe1ea865a802cee / app / jackson_databind_vulnerable.jar > com/mycompany/app/App”}]}]