如何将Trivy扫描生成的result.json文件上传至DefectDojo?
Trivy扫描结果上传DefectDojo操作指南
前置确认
- 确保你的
result.json是通过Trivy的JSON格式导出的,导出命令参考:trivy image --format json -o result.json <待扫描镜像名称>
方式1:Web界面手动上传(适合单次测试)
- 登录你的DefectDojo实例,进入对应项目归属的产品(Product),再进入产品下对应的Engagement(无对应Engagement可先新建,类型选择测试类即可)
- 在Engagement详情页点击「导入扫描结果」按钮
- 扫描类型(Scan Type)下拉选择
Trivy Scan - 点击文件上传框,选中本地的
result.json文件 - 按需配置可选参数:比如要过滤的最低漏洞严重等级、是否自动标记漏洞为活跃状态、是否自动创建对应工单等,配置完成后点击导入
- 导入成功后即可在产品的漏洞仪表盘查看漏洞分类统计、严重程度占比、CVE详情、修复建议等可视化数据
方式2:API自动上传(适合CI/CD流水线集成)
如果需要把扫描上传步骤集成到自动化流程中,可以调用DefectDojo的开放API实现,示例请求命令如下:
curl -X POST "https://<你的DefectDojo实例地址>/api/v2/import-scan/" \ -H "Authorization: Token <你的个人API Token>" \ -H "accept: application/json" \ -H "Content-Type: multipart/form-data" \ -F "scan_type=Trivy Scan" \ -F "product=<对应产品ID>" \ -F "engagement=<对应Engagement ID>" \ -F "file=@result.json" \ -F "active=true" \ -F "verified=true"
- 其中
<你的个人API Token>可在DefectDojo个人设置页面生成,<产品ID>和<Engagement ID>可在对应页面的URL路径中获取
注意:如果出现导入失败的情况,优先检查版本兼容性,建议使用Trivy v0.35.0及以上版本、DefectDojo v2.10.0及以上版本,避免因格式不兼容导致的导入错误。
内容的提问来源于stack exchange,提问作者user16133873
相关产品推荐
相关产品推荐

