高级套件IBM Bob DevSecOps 高级包

开始使用

了解如何在 IBM Bob DevSecOps 高级包中查看发现结果、修复问题、使用 SafeWrite 以及使用安全仪表板。

开始之前,请确保你的环境满足所有要求。有关详细信息,请参阅前提条件。

DevSecOps 高级包在你工作时持续运行扫描。发现结果在检测到时出现在 Bob Findings 面板中。你也可以按需触发扫描:打开命令面板并运行 IBM Premium Package for DevSecOps: Scan for issues 或 IBM Premium Package for DevSecOps: Run Supply Chain Scan。Scan for issues 命令会同时运行代码和配置扫描(SAST、IaC、密钥)以及供应链扫描。

要将大型仓库拆分为较小的部分,请右键单击任意目录,然后选择 IBM Bob Premium Package for DevSecOps > Scan。

查看发现结果

Bob Findings 面板将工作区的所有活动扫描结果集中在一处。

打开已加载项目的 IDE。

打开 Bob 侧边栏中的 Bob Findings 面板。

查看发现结果列表。每个发现结果显示:

  • 严重程度:Critical、High、Medium、Low 或 Info。
  • 文件和行:代码中的确切位置。
  • 规则 ID:触发发现结果的扫描器规则。
  • 描述:对问题的通俗解释。
  • CVSS 评分(如有):来自 CVE 数据库的严重程度评分。
  • 推荐的安全版本(供应链发现结果):不含该漏洞的最接近版本。
  • 修复指导(如有):解决问题的建议步骤。

修复发现结果

Fix with Bob 按钮启动一个代理任务,在上下文中分析发现结果并应用修复。

在 Bob Findings 面板中,选择你想解决的发现结果。

点击 Fix with Bob。

Bob 在聊天面板中打开新任务并开始分析问题。在接受 Bob 提议的更改之前,请先进行审查。

接受更改后,确认 Bob Findings 面板中该发现结果已不再显示。

SafeWrite

SafeWrite 可保护你的代码库免受 AI 生成的安全漏洞影响。当 Bob 运行写入或编辑文件的代理任务时,SafeWrite 会在更改写入磁盘之前,在内存中拦截这些拟议的更改。

如果代理尝试声明已知存在漏洞的依赖项,SafeWrite 会在写入完成之前自动将其替换为最接近的安全版本。如果代理尝试通过 npm install 或 pip install 等 CLI 命令安装存在漏洞的包,SafeWrite 会拦截或修补该命令。

SafeWrite 还可以防止直接篡改锁定文件(package-lock.json、poetry.lock 及类似文件),并且可以选择在写入之前对拟议的代码更改运行 SAST 检查。

注意:

SafeWrite(实验性)默认关闭。如需使用,请在扩展设置中启用 SafeWrite。

安全仪表板

安全仪表板提供项目中扫描结果的实时和历史视图。从 Bob 侧边面板打开它,即可查看按项目和分支组织的扫描运行记录,跟踪随时间变化的趋势,并查看或忽略过往运行中的发现结果。你可以选择多个发现结果进行批量修复,并导出结果的独立 HTML 报告。

仪表板最多存储 90 天的结果。

供应链扫描

DevSecOps 包会在你打开或保存文件时扫描依赖项清单中的已知漏洞。供应链发现结果与其他发现结果一起显示在 Bob Findings 面板中。若要一次性修复整个项目中的依赖项漏洞,请使用“修复供应链漏洞”工作流。有关详细信息,请参阅修复供应链漏洞工作流。

代理安装策略

当 Bob 在代理任务中安装包时,DevSecOps 包会在安装完成前检查依赖项。如果该包被标记为有风险:

  • Bob 不会静默安装该包。
  • Bob 会在聊天中报告风险信息,并改为安装推荐版本。

这个主题怎么样?