在集成开发环境中执行扫描

如何在将静态分析插件安装到 Eclipse 或 Visual Studio 集成开发环境 (IDE) 之后使用它们来扫描源代码。在 Eclipse 中,可以扫描 Java 项目;在 Visual Studio 中,可以扫描 .NET(C#、ASP.NET、VB.NET)。

开始之前

缺省情况下,扫描 Java 和 .NET 时,不会包含第三方代码。可通过遵循 管理第三方 Java 和 .NET 排除 中的指示信息来修改第三方代码排除设置。
  • 要在 Eclipse 或 Visual Studio 中扫描时包含第三方代码,请使用以下方法之一:
    • 在启动标识之前设置此全局变量或系统环境变量:
      APPSCAN_OPTS=-DthirdParty
    • 每次使用 IDE 时,可在启动 IDE 之前发出命令:
      set APPSCAN_OPTS=-DthirdParty
  • 或者,在扫描 Eclipse 时,可以执行以下操作:在启动 Eclipse 之前修改 eclipse.ini 文件,以使 -vmargs 部分包含 -DthirdParty

如果您是扫描中通常排除的第三方代码的开发人员,应使用该设置来包含第三方代码。

此外,您还可以使用 -Dscan_speed=<speed>APPSCAN_OPTS 指定扫描速度。例如,要将扫描速度设置为 balanced
  • Windows:
    set APPSCAN_OPTS=-Dscan_speed=balanced
  • Linux 和 Mac:
    export APPSCAN_OPTS="-Dscan_speed=balanced"
缺省扫描速度为 deep

过程

要扫描源代码并打开评估或报告,请执行以下操作:
  1. 确保插件已安装到 IDE。安装期间,如果 IDE 已打开,请将其重新启动。
  2. 选择要扫描的项:
    • 在 Eclipse 中,选择要扫描的一个或多个项目。要扫描整个 Eclipse 工作空间,请选择所有项目。
    • 在 Visual Studio 中,选择要扫描的解决方案、项目或网站。
  3. 右键单击选择内容并选择安全性分析 > 运行静态分析
    如果尚未登录到服务,将显示登录对话框。
    注: 扫描代码或生成 IRX 文件时,可能会收到有关更新到最新 IRX 的消息。请参阅命令行实用程序 (CLI) 支持
  4. 登录对话框中,输入服务凭证:
    AppScan on Cloud 服务中生成 API 密钥时,您将收到密钥标识私有密钥。在标识密钥字段中输入值。如果您还没有生成 API 密钥,请点击对话框中的链接以创建一个。
    在登录服务时,将创建加密的密钥文件。然后,在与 ASoC 服务进行交互时,此令牌文件将由其他操作引用。
  5. 扫描启动后,AppScan on Cloud 将通过对话框提示您选择将与扫描关联的应用程序。IDE 中的静态分析扫描必须与现有 AppScan on Cloud 应用程序关联。
  6. 在同一对话框中,使用个人扫描复选框指示扫描是否为个人扫描
  7. 我的扫描视图在扫描提交后打开。
  8. 扫描完成后,通知将打开,其中包含用于打开扫描问题的链接。此外,我的扫描视图已更新以包括扫描。视图将列出扫描名称、状态、开始时间和结束时间、以及发现的漏洞数量和严重性。
    1. 扫描问题:选择通知中的链接可打开结果,或双击视图中扫描问题列中的图标(在 Visual Studio 中,结果还可使用系统托盘来打开)。这将打开一个交互式评估,其中按修订组列出了在扫描过程中发现的所有不合格的安全性问题。修订组代表分组结果流经的最常用节点。通常,如果为修订组实施了修订,则可在最少工作的情况下实现最大效果。修订组还可视为可在其中同时查看相关发现结果的逻辑分组点。请注意,修订组可能不是应放置修订的确切位置。未来重构、代码实践和其他因素可能阻止对修订使用修订组位置。

      在评估中:

      • 每个修订组都会显示建议的修订位置、用于打开该修订位置的源的链接,以及将在更正源代码后得以修复的漏洞的发生次数。
      • 如果选择漏洞,将打开该漏洞的描述(通常包含示例和建议)。
      • 如果选择详细信息按钮,则修订组会打开将在更正源代码后得以修复的所有发现结果。在详细视图中,如果选择源位置,则将在源编辑器中打开。选择“跟踪”图标将打开跟踪,其中显示流经应用程序的数据流。
  9. 要打开任何应用程序的不合规问题,请执行以下操作:
    注: 不合规问题是指不符合 AppScan on Cloud 中为应用程序指定的策略的问题。
    1. 选择视图 > 安全性分析 > 应用程序问题
    2. 如果出现提示,请输入您的服务凭证。
    3. 从出现的对话框的下拉列表中选择应用程序,然后单击确定.

结果

重要: 集成开发环境中不支持重新扫描。