使用 REST API 进行 IAST

通过 REST API 配置并开始 IAST 扫描(包括代理程序部署)。

开始之前

有关 ASoC REST API 的常规信息,请参阅 REST API
另请参阅 Swagger 上的以下资源:

过程

  1. 获取 API 密钥。
  2. 通过执行以下操作之一,获取要在其中运行扫描的应用程序的标识:
    • 在用户界面中,打开特定应用程序的选项卡,并查看 URL。单词“scans”之前的最后一部分便是标识。例如,在此用例中:
      cloud.appscan.com/AsoCUI/serviceui/main/myapps/app01/123456a-78b-90c-123ab4c/scans
      应用程序标识为:123456a-78b-90c-123ab4c
    • 或者,您可以通过 REST API GetApps 端点获取用户的所有应用程序标识的列表(API 密钥):
      request URL:
                        GET https://cloud.appscan.com/api/v4/Apps
                        headers:
                        "Authorization=Bearer <api key>"
                        Parameters:
                        “$select=Id"
  3. 使用 CreateIastAnalyzerScan 端点创建 IAST 扫描:
    request URL:
                POST https://cloud.appscan.com/api/v4/Scans/IASTAnalyzer
                headers:
                " Authorization=Bearer <token>, Accept: application/json, Content-Type: application/json"
                Json: {
                "ConnLostStopTimer": true, 
                "ScanName": <scanName>, 
                "EnableMailNotification": true, 
                "Locale": "en-US", 
                "AppId": <appId>, 
                "Personal": false
                }
    正文是输入参数 scanModel,一个包含以下字段的 json 结构:
    • ScanName 是您赋予扫描的名称
    • AppId(请参阅上一步)
    • ConnLostStopTimer 是可选的超时(单位为分钟),用于在代理程序连接丢失时停止扫描。如果此字段留空,即使代理程序连接丢失扫描也将继续,并且没有任何要报告的内容。此操作的可能用例是防止其他用户在此期间获取许可证。
    • Personal 字段应设置为 false,除非您希望将扫描作为个人扫描运行。
    响应正文包括 ScanId。保存此设置以在下一步中使用。
  4. 下载代理程序,预先配置为将问题报告给上一步中创建的扫描。使用 Tools/DownloadWithKey 端点执行此操作。
    request URL:
              GET https://cloud.appscan.com/api/v4/Tools/IastAgentWithKey?scanId==<scan_id>
              headers:
              "Authorization=Bearer <api key>, Accept: application/zip"
    scan_id 是在上一步末尾保存的标识。
  5. 在应用程序服务器上部署 IAST 代理程序。
    代理程序现在正监控发送到应用程序的流量,并将向 ASoC 报告其检测到的漏洞。
  6. 将流量发送到应用程序以便 IAST 进行监视。这可以是常规系统测试或 DAST 扫描。
    发现的问题现在将记录在 IAST 扫描中。