导入扫描表单 (Open Source)

一旦您的产品层级结构中至少设置了一个产品类型、产品、测试和测试活动,您就可以将扫描文件导入 DefectDojo 并创建发现项。

在 DefectDojo 中重新组织产品层级结构很容易,所以如果您现在还不确定该如何设置也没关系。

目前,您需要了解的是测试活动可以存储来自多个工具的数据,如果您在一次测试工作中同时运行多种不同的工具,这会很有用。

访问导入扫描表单(经典 UI / 开源版)

在 DefectDojo OS 中,您可以从以下两个位置访问此表单:

  • 测试活动的测试部分: image
  • 产品导航栏的发现项部分: image

填写导入扫描表单

image 导入扫描表单会在某个测试活动下创建一个新的测试,其中将包含扫描文件中每个漏洞对应的唯一发现项。

创建的测试名称将与扫描类型相匹配:例如,Tenable 扫描将被命名为"Tenable Scan"。

表单选项

  • 扫描文件: 点击"选择"按钮,即可从您的计算机中选择要上传的文件。
  • 扫描日期(可选): 如果您希望为此次导入产生的所有发现项应用一个统一的扫描日期,可以在此字段中选择日期。 如果您不选择扫描日期,从该报告创建的发现项将使用工具指定的日期。每个发现项的 SLA 将根据其日期进行计算。
  • 扫描类型: 选择用于生成此数据的工具。
  • 环境: 选择与您正在上传的数据相对应的环境。
  • 标签: 如果您想使用标签进一步组织测试数据,可以通过此表单添加标签。输入您要创建的标签名称,然后按键盘上的 Enter 键将其添加到标签列表中。

可选字段

  • 最低严重程度:如果您只想为特定严重程度级别及以上的发现项创建记录,可以在此选择最低严重程度级别。所有严重程度低于此字段的漏洞都会被忽略。
  • 活动:如果您想将所有传入的发现项设置为活动或非活动,可以在此指定。否则,DefectDojo 将使用工具的漏洞数据来确定该发现项是活动还是非活动。如果您需要团队对某个特定工具的发现项进行手动分诊和验证,该选项会很有用。
  • 已验证:与"活动"类似,您可以将新的一批发现项默认设置为已验证或未验证。这取决于您的工作流偏好。例如,如果您的团队倾向于假设发现项已验证,除非被证明并非如此,则可以将此字段设置为 True。
  • 如果您想在测试中包含版本、分支标签、提交哈希、构建 ID、服务等详细信息,均可在此指定。
  • 也可以指定源代码管理 URI。此表单选项必须是有效的 URI。
  • 分组依据: 如果您想根据此文件创建发现项组,可以在此指定分组方法。

无分诊功能的扫描工具:“不要重新激活"字段

有些扫描工具的报告中可能不包含分诊信息(例如 tfsec)。它们只是扫描代码或依赖项,标记问题,并返回所有内容,而不考虑某个漏洞是否已经过分诊。

为了处理这种情况,DefectDojo 在上传报告时(以及在重新导入 API 中)还提供了一个"不要重新激活"复选框,这样您就可以将 DefectDojo 作为分诊结果的权威来源,而不必在每次导入/重新导入时重新激活已分诊的发现项。

使用扫描完成日期(API:scan_date)字段

DefectDojo 支持大量的扫描工具报告,但并非所有报告都包含对用户最重要的信息。scan_date 字段是一项灵活的智能功能,允许用户设置给定扫描报告的完成日期,并将其向下传播到所有导入的发现项。此字段不是必填项,但该字段的默认值是导入日期(即请求被处理并返回成功响应的时间)。

以下是使用此字段的几种情况:

  1. 报告设置日期,且导入时设置 scan_date
    • 发现项日期将采用 scan_date 的默认值
  2. 报告设置了日期,且导入时设置 scan_date
    • 发现项日期将采用报告设置的日期
  3. 报告设置日期,且导入时设置scan_date
    • 发现项日期将采用用户为 scan_date 设置的值
  4. 报告设置了日期,且导入时设置scan_date
    • 发现项日期将采用用户为 scan_date 设置的值