漏洞页面

项目中的每个漏洞都有一个漏洞页面,此页面包含漏洞的详细信息,包括:

  • 描述
  • 何时被检测到
  • 当前状态
  • 可用操作
  • 关联议题
  • 操作日志

如果扫描器确定该漏洞是误报,则该漏洞页面的顶部会包含一条警告消息。

当在项目的默认分支中不再检测到漏洞时,您应该将其状态更改为 已解决,确保如果它在未来的合并中被意外重新引入,它会再次报告为新记录漏洞。要更改多个漏洞的状态,请使用漏洞报告的活动过滤器

解释漏洞 (ULTIMATE SAAS BETA)

  • 作为 JihuLab.com 上的实验性功能引入于极狐GitLab 16.0。
  • 变更为 Beta 状态于 16.2。

极狐GitLab 可以通过使用大型语言模型来帮助您:

  • 总结漏洞。
  • 帮助开发人员和安全分析师了解漏洞、利用漏洞以及修复该漏洞。
  • 提供漏洞缓解建议。

解释漏洞

使用”解释漏洞”功能更好地了解漏洞及其可能的缓解方法。

先决条件:

  • 您必须订阅了极狐GitLab 专业版。
  • 您必须是该项目的成员。
  • 该漏洞必须是 SAST 发现。

要解释漏洞:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全与合规性 > 漏洞报告
  3. 工具 下拉列表中,选择 SAST
  4. 选择您想要解释的 SAST 漏洞。
  5. 在漏洞页面底部,选择 试用一下

响应显示在页面右侧。

解释此漏洞

在 JihuLab.com 上可以使用此功能。默认情况下,它由 Google 的 text-bison-001 模型提供支持。如果该模型的性能降级,该功能将改用 Anthropic 的 claude 模型。

我们不能保证大型语言模型能生成正确的结果。请谨慎使用该漏洞解释。

与第三方 AI API 共享的数据

以下数据与第三方 AI API 共享:

  • 漏洞标题(可能包含文件名,具体取决于使用的扫描仪)
  • 漏洞标识符
  • 代码块,但前提是要选中”发送带有提示的代码”复选框(按照漏洞记录指示的单行和多行)
  • 文件名

漏洞状态值

漏洞的状态可以是以下之一:

  • 检测到:新发现的漏洞的默认状态。在 UI 中显示为 “需要分类”。
  • 已确认:用户已看到此漏洞并确认它是准确的。
  • 已忽略:用户已看到此漏洞并忽略它,因为它不准确或无法解决。如果在后续扫描中检测到,已忽略的漏洞仍将被忽略。
  • 已解决:该漏洞已修复或不再存在。由后续扫描重新引入和检测到的已解决漏洞,会创建一个新的漏洞记录。

漏洞忽略原因

  • 引入于 15.11 版本,功能标志为 dismissal_reason
  • 在 SaaS 上启用于 15.11 版本。
  • 默认启用于 16.0 版本。

忽略漏洞时,必须选择以下原因之一来阐明其被忽略的原因:

  • 可接受的风险:该漏洞是已知的,尚未修复或缓解,但被认为是可接受的业务风险。
  • 误报:报告中的错误,其中测试结果错误地指示系统中存在漏洞,而实际上该漏洞不存在。
  • 缓解控制:组织采用的管理、操作或技术控制(即保护措施或对策),为信息系统提供同等或可比较的保护。
  • 用于测试:该发现不是漏洞,因为它是测试的一部分或者是测试数据。
  • 不适用:该漏洞是已知的,尚未修复或缓解,但被认为是应用程序的一部分,不会更新。

更改漏洞状态

要从漏洞页面更改漏洞状态:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 状态 下拉列表中选择一个状态,然后选择 更改状态

    在 15.11 及更高版本,当您将漏洞状态更改为 已忽略 时,您必须选择忽略原因

  5. (可选)在页面底部,向日志条目添加评论。

状态更改的详细信息,包括更改者和更改时间,都记录在漏洞的操作日志中。

为漏洞创建议题

您可以从漏洞页面创建议题,跟踪为解决或缓解该漏洞而采取的所有操作。

您可以创建:

创建 Jira 议题需要在项目上启用 Jira 集成。请注意,启用 Jira 集成后,极狐GitLab 议题功能不可用。

为漏洞创建极狐GitLab 议题

要为漏洞创建极狐Gitlab 议题:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 选择 创建议题

在项目中创建一个议题,预先填充来自漏洞报告的信息。 然后开放议题,以便您采取进一步的行动。

为漏洞创建 Jira 议题

先决条件:

  • 启用 Jira 集成。必须选择 启用从漏洞创建 Jira 议题 选项作为配置的一部分。
  • 每个用户都必须拥有个人 Jira 账户,该账户可以在目标项目中创建议题。

为漏洞创建 jira 议题:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 选择 创建 jira 议题
  5. 如果您尚未登录 jira,请登录。

在新的浏览器选项卡中创建并打开 jira 议题。从漏洞的详细信息预先填充了 摘要描述 字段。

与极狐GitLab 议题不同,jira 议题是否打开或关闭的状态不会在极狐GitLab 用户界面中显示。

关联漏洞到议题

note 如果启用了 Jira 议题支持,极狐GitLab 议题将被禁用,因此此功能不可用。

您可以将漏洞关联到一个或多个现有的极狐GitLab 议题。添加关联有助于跟踪解决或缓解漏洞的问题。

与漏洞相关的议题显示在漏洞报告和漏洞页面中。

请注意漏洞和关联议题之间的以下情况:

  • 漏洞页面显示关联议题,但议题页面不显示与它相关的漏洞。
  • 一个议题一次只能与一个漏洞相关联。
  • 议题可以跨群组和项目关联。

关联漏洞到现有议题

要将漏洞关联到现有问题:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 相关议题 部分,选择加号图标 ( )。
  5. 对于要关联的每个议题,可以:
    • 粘贴指向议题的链接。
    • 输入议题的 ID(以 # 为前缀)。
  6. 选择 添加

选定的议题被添加到 相关议题 部分,并且更新了关联议题计数。

解决漏洞

对于某些漏洞,解决方案是已知的。在这些情况下,漏洞页面包含一个 通过合并请求解决 选项。

支持以下扫描工具:

  • Dependency 扫描。 自动补丁创建仅适用于使用 yarn 管理的 Node.js 项目。 此外,当 FIPS 模式禁用时,才支持自动创建补丁。
  • 容器扫描

要解决漏洞,您可以:

Create merge request from vulnerability

使用合并请求解决漏洞

使用合并请求解决漏洞:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 通过合并请求解决 下拉列表中,选择 通过合并请求解决

创建一个合并请求,该请求应用解决漏洞所需的补丁。 根据您的标准工作流程处理合并请求。

手动解决漏洞

手动应用极狐GitLab 为漏洞生成的补丁:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择漏洞的描述。
  4. 通过合并请求解决 下拉列表中,选择 下载补丁以解决
  5. 确保您的本地项目具有与生成补丁相同的已检出提交。
  6. 运行 git apply remediation.patch
  7. 验证并将更改提交到您的分支。
  8. 创建合并请求以将更改应用到您的主分支。
  9. 根据您的标准工作流程处理合并请求。

启用针对漏洞的安全培训

引入于 14.9 版本

note 安全培训无法在离线环境中进行,将计算机与公共互联网隔离也是一项安全措施。一些第三方培训供应商可能会要求您注册免费账户。访问 Secure Code WarriorKontraSecureFlag 进行注册。 极狐GitLab 不会向这些第三方供应商发送任何用户信息;我们确实会发送 CWE 或 OWASP 标识符以及文件扩展名的语言名称。

安全培训可帮助您的开发人员学习如何修复漏洞。开发人员可以查看所选培训提供商提供的与检测到的漏洞相关的安全培训。

为项目中的漏洞启用安全培训:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 在左侧边栏中,选择 安全 > 配置
  3. 在标签栏上,选择 漏洞管理
  4. 要启用安全培训提供者,请打开切换开关。

安全培训使用来自第三方供应商的内容。您必须有互联网连接才能使用此功能。

查看漏洞的安全培训

引入于 14.9 版本

如果启用了安全培训,则漏洞页面可能包含与检测到的漏洞相关的培训链接。 培训的可用性取决于启用的培训供应商是否具有与特定漏洞匹配的内容。根据漏洞标识符请求培训内容,赋予漏洞的标识符因漏洞而异,可用的培训内容因供应商而异,这意味着某些漏洞将不会显示任何培训内容。 CWE 的漏洞最有可能返回训练结果。

要查看漏洞的安全培训:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 安全 > 漏洞报告
  3. 选择您要查看安全培训的漏洞。
  4. 选择 查看培训