漏洞报告

  • Tier: 旗舰版
  • Offering: JihuLab.com, 私有化部署
History
    • 漏洞解决活动 icon 引入于极狐GitLab 17.5,使用名为 vulnerability_report_vr_badge功能标志。默认情况下禁用。
    • 在极狐GitLab 17.6 中启用。
此功能的可用性受控于一个功能标志。更多信息可查看历史。

议题报告提供了代码库中发现的安全漏洞的综合视图。按严重性、报告类型、扫描器(仅适用于项目)及其他属性对漏洞进行排序,以确定哪些议题需要优先关注。通过状态指示器和显示修复进度的活动图标,跟踪漏洞的生命周期。

访问每个漏洞的详细信息,包括常见漏洞评分系统 (CVSS) 分数和文件位置(如果可用)。过滤和分组类似漏洞,以系统地解决它们。

在 JihuLab.com 上,漏洞在最后一次更新后一年会被存档。有关更多详细信息,请参阅 [漏洞存档](../vulnerability_archival/_index.md)。

漏洞报告的内容#

报告包含来自默认分支的数据,显示所有成功的安全扫描作业的累计结果。扫描结果在作业完成后或流水线被手动作业阻止时出现。

对于项目和群组,漏洞报告包含:

  • 每个严重级别的漏洞总数。 - 常见漏洞属性的过滤器。 - 每个漏洞的详细信息,以表格形式呈现。

对于某些漏洞,详细信息包括链接到默认分支中的相关文件和行号。对于 CVE 漏洞,您还可以在漏洞报告中查看 KEV 状态、CVSS 和 EPSS 分数以及可达性信息(Beta)。有关安全评分的更多详细信息,请参阅 漏洞风险评估数据

对于项目,漏洞报告还包含:

  • 时间戳显示默认分支最后更新时间,包括链接到最新的流水线。对非默认分支运行的流水线不会更新时间戳。 - 最近流水线中发生的失败次数。选择失败通知以查看流水线页面的 失败作业 标签。

活动 列包含图标以指示对该行中的漏洞采取的活动(如果有):

  • 议题 :链接到为漏洞创建的议题。
  • 合并请求 :链接到为漏洞创建的合并请求。
  • 已检查的圆圈 :漏洞已得到修复。
  • 误报 :扫描器确定此漏洞为误报。
  • 解决方案 :表示漏洞有可用的解决方案。

要打开为漏洞创建的议题,请悬停在 活动 条目上,然后选择链接。议题图标 (

) 表示议题的状态。如果启用了 Jira 议题支持,则活动条目中的议题链接会链接到 Jira 中的议题。与极狐 GitLab 议题不同,Jira 议题的状态不会在极狐 GitLab 界面中显示。

示例项目漏洞报告

当漏洞源自多项目流水线设置时,此页面显示源自选定项目的漏洞。

查看漏洞报告#

查看漏洞报告以列出项目或群组中的所有漏洞。

前提条件:

  • 您必须至少具有项目或群组的开发者角色。

查看漏洞报告:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目或群组。 1. 选择 安全 > 漏洞报告

过滤漏洞#

History
    • 在极狐GitLab 17.7 中引入了 标识符 过滤器,使用名为 vulnerability_filtering_by_identifier功能标志。默认情况下启用。
    • 在极狐GitLab 17.9 中 GA。功能标志 vulnerability_filtering_by_identifier 已删除。

您可以在漏洞报告中过滤漏洞,以更有效地进行分类。

您可以按以下方式过滤:

  • 状态:需要分类、已确认、已驳回和已解决。有关每种状态含义的详细信息,请参阅 漏洞状态值。 驳回的漏洞可以按驳回原因单独或一起过滤。
  • 严重性:关键、高、中、低、信息、未知。
  • 报告类型:有关更多详细信息,请参阅 报告类型过滤器
  • 扫描器:有关更多详细信息,请参阅 扫描器过滤器 - 活动:有关更多详细信息,请参阅 活动过滤器
  • 标识符:按漏洞的标识符过滤。
  • 项目:过滤特定项目中的漏洞(仅适用于群组)。

过滤漏洞#

History
    • 改进后的过滤器引入于极狐GitLab 16.9,使用名为 vulnerability_report_advanced_filtering功能标志。默认情况下禁用。
    • 在极狐GitLab 17.1 中,为 JihuLab.com、私有化部署启用。
    • 在极狐GitLab 17.2 中 GA。功能标志 vulnerability_report_advanced_filtering 已删除。

过滤漏洞报告以专注于漏洞的子集。

过滤漏洞列表:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 可选。要移除默认过滤器,请选择 清除 ()。
  4. 在漏洞列表上方选择过滤器栏。
  5. 在出现的下拉列表中,选择要过滤的属性,然后从下拉列表中选择值。
  6. 在过滤字段外选择。漏洞严重性总数和匹配漏洞列表将更新。
  7. 要按多个属性过滤,请重复前面三个步骤。多个属性通过逻辑 AND 连接。

报告类型过滤器#

您可以根据检测到漏洞的报告类型进行过滤。默认情况下,漏洞报告列出所有报告类型的漏洞。

使用 手动添加 属性来过滤手动添加的漏洞。

扫描器过滤器#

对于项目,您可以根据检测到漏洞的扫描器进行过滤。默认情况下,漏洞报告列出所有扫描器的漏洞。有关每个可用扫描器的详细信息,请参阅 安全扫描工具

项目过滤器#

项目过滤器的内容各不相同:

活动过滤器#

History
    • 引入于极狐GitLab 16.7,使用名为 activity_filter_has_remediations功能标志。默认禁用。
    • 在极狐GitLab 16.9 中 GA。功能标志 activity_filter_has_remediations 已删除。

活动过滤器与其他过滤器的行为不同。您可以选择每个类别中的一个值。要移除过滤器,请从活动过滤器下拉列表中选择要移除的过滤器。

使用活动过滤器时的选择行为:

  • 活动
    • 所有活动:具有任何活动状态的漏洞(与忽略此过滤器相同)。选择此选项会取消选择所有其他活动过滤器选项。
    • 检测
      • 仍然检测到(默认):在 default 分支的最新流水线扫描中仍然检测到的漏洞。
      • 不再检测到:在 default 分支的最新流水线扫描中不再检测到的漏洞。
    • 议题
      • 有议题:具有一个或多个关联议题的漏洞。
      • 没有议题:没有关联议题的漏洞。
    • 合并请求
      • 有合并请求:具有一个或多个关联合并请求的漏洞。
      • 没有合并请求:没有关联合并请求的漏洞。
    • 解决方案可用
      • 有解决方案:具有可用解决方案的漏洞。
      • 没有解决方案:没有可用解决方案的漏洞。

分组漏洞#

History
    • 每个项目的漏洞分组引入于极狐GitLab 16.4,使用名为 vulnerability_report_grouping功能标志。默认禁用。
    • 每个项目的漏洞分组在极狐GitLab 16.5 中,为私有化部署启用。
    • 每个项目的漏洞分组在极狐GitLab 16.6 中 GA。功能标志 vulnerability_report_grouping 已删除。
    • 每个群组的漏洞分组引入于极狐GitLab 16.7,使用名为 group_level_vulnerability_report_grouping功能标志。默认禁用。
    • 每个群组的漏洞分组在极狐GitLab 17.2 中,为私有化部署启用。
    • 每个群组的漏洞分组在极狐GitLab 17.3 中 GA。功能标志 group_level_vulnerability_report_grouping 已删除。
    • 每个群组漏洞的 OWASP top 10 分组引入于极狐GitLab 16.8,使用名为 vulnerability_owasp_top_10_group功能标志。默认禁用。
    • 每个群组漏洞的 OWASP top 10 分组在极狐GitLab 17.4 中,为私有化部署启用。
    • 每个群组漏洞的 OWASP top 10 分组在极狐GitLab 17.4 中 GA。功能标志 vulnerability_owasp_top_10_group 已删除。
    • OWASP top 10 分组中的非 OWASP 类别引入于极狐GitLab 17.1,使用名为 owasp_top_10_null_filtering功能标志。默认禁用。
    • OWASP top 10 分组中的非 OWASP 类别在极狐GitLab 17.5 中,为私有化部署启用。
    • OWASP top 10 分组中的非 OWASP 类别在极狐GitLab 17.6 中 GA。功能标志 owasp_top_10_null_filtering 已删除。

您可以在漏洞报告页面上分组漏洞,以更有效地进行分类。

您可以按以下方式分组:

  • 状态
  • 严重性
  • 报告类型
  • 扫描器
  • OWASP top 10 2017

分组漏洞#

分组漏洞:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目或群组。
  2. 选择 安全 > 漏洞报告
  3. 按组 下拉列表中选择一个组。

漏洞根据您选择的组进行分组。每个组都被折叠,显示每组漏洞的总数在他们的名称旁边。要查看每个组中的漏洞,请选择该组的名称。

查看漏洞的详细信息#

要查看更多漏洞的详细信息,请选择漏洞的 描述。将打开 漏洞的详细信息 页面。

更改漏洞状态#

History
    • 提供评论及忽略原因引入于极狐GitLab 16.0。

在您分类漏洞时,您可以更改它们的状态,包括驳回漏洞。

当漏洞被驳回时,审计日志包括驳回者、驳回时间和驳回原因的记录。您不能删除漏洞记录,因此会始终保留永久记录。

前提条件:

  • 您必须至少具有项目的维护者角色。admin_vulnerability 权限在 极狐 GitLab 17.0 中从开发者角色中移除。

更改漏洞状态:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 要选择:
  • 一个或多个漏洞,请选择每个漏洞旁边的复选框。
  • 页面上的所有漏洞,请选择表头中的复选框。
  1. 设置状态 下拉列表中,选择所需状态。
  2. 如果选择了 驳回 状态,请在 设置驳回原因 下拉列表中选择所需原因。
  3. 添加评论 输入框中,您可以提供评论。对于 驳回 状态,评论是必需的。
  4. 选择 更改状态

所选漏洞的状态更新,漏洞报告的内容刷新。

项目漏洞报告

更改或覆盖漏洞严重性#

History
    • 引入于极狐GitLab 17.9,使用名为 vulnerability_severity_override功能标志。默认禁用。
    • 在极狐GitLab 17.10 中,在 JihuLab.com、私有化部署上启用。
此功能的可用性受控于功能标志。更多信息,可查看历史。

在某些情况下,您可能需要调整检测到的漏洞的严重性,以更好地反映您组织的优先级。例如,扫描器可能报告较低的严重性,但您可能根据您的环境或设置认为它更关键。此功能允许您覆盖扫描器分配的默认严重性。

前提条件:

  • 您必须至少具有项目的维护者角色或 admin_vulnerability 权限。

手动覆盖漏洞严重性:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目。
  2. 转到 安全 > 漏洞报告
  3. 选择漏洞:
  • 要选择单个漏洞,请选择每个漏洞旁边的复选框。
  • 要选择页面上的所有漏洞,请选择表头中的复选框。
  1. 选择操作 下拉列表中,选择 更改严重性
  2. 选择严重性 下拉列表中,选择所需的严重性级别。
  3. 添加原因 文本框中,添加更改严重性的简要说明。
  4. 选择 更改严重性

对于每个选定的漏洞:

  • 其严重性在 漏洞详细信息页面漏洞报告 中更新。
  • 在其严重性上添加一个徽章,表示严重性已被覆盖。
  • 手动严重性调整记录在漏洞的 历史记录 中。

漏洞严重性覆盖

按检测日期排序漏洞#

默认情况下,漏洞按严重性级别排序,最高严重性漏洞列在顶部。

要按检测到的日期排序漏洞,请选择 "检测到" 列标题。

导出漏洞详细信息#

History
    • 在极狐GitLab 16.8 中,在 CSV 导出中增加了 “忽略原因” 一栏。

您可以导出漏洞报告中列出的漏洞详细信息。导出格式为 CSV(逗号分隔值)。所有漏洞都包含在内,因为过滤器不适用于导出。

包含的字段有:

  • 状态(有关状态值导出方式的详细信息,请参阅下表)。
  • 群组名称
  • 项目名称
  • 报告类型
  • 扫描器名称
  • 漏洞
  • 基本详细信息
  • 附加信息
  • 严重性
  • CVE(常见漏洞和暴露)
  • CWE(常见弱点枚举)
  • 其他标识符
  • 检测时间
  • 位置
  • 活动:如果漏洞在默认分支上解决,则返回 true,否则返回 false
  • 评论
  • 完整路径
  • CVSS 向量
  • 驳回原因
完整详细信息可通过我们的 [作业产物 API](../../../api/job_artifacts.md#download-a-single-artifact-file-from-specific-tag-or-branch) 获得。使用 `gl-*-report.json` 报告文件名之一替换 `*artifact_path` 以获取,例如,检测到漏洞的文件路径。

漏洞报告中显示的状态字段值与漏洞导出中的值不同。使用以下参考表格进行匹配。

漏洞报告漏洞导出
需要分类检测到
驳回驳回
解决解决
确认确认

以 CSV 格式导出详细信息#

要导出漏洞报告中列出的所有漏洞的详细信息,请选择 导出

详细信息从数据库中检索,然后 CSV 文件下载到您的本地计算机。

如果您的项目包含数千个漏洞,下载可能需要几分钟才能开始。在下载完成之前不要关闭页面。某些 CSV 阅读器对行数或列大小有限制,这可能使它们与较大的导出不兼容。漏洞导出不考虑单个程序的限制。

手动添加漏洞#

History
    • 在极狐GitLab 15.0 中,移除了功能标志 new_vulnerability_form

当漏洞在极狐 GitLab 漏洞数据库中不可用时手动添加漏洞。您只能在项目的漏洞报告中添加漏洞。

手动添加漏洞:

  1. 在左侧边栏中选择 搜索或转到,找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择 提交漏洞
  4. 完成字段并提交表单。

新创建的漏洞详细信息页面将打开。

操作性漏洞#

操作性漏洞 标签列出由 操作性容器扫描 发现的漏洞。此标签显示在项目、群组和安全中心漏洞报告中。

操作性漏洞标签