注意:

将 Zed Attack 代理与 Oracle Cloud Infrastructure DevOps 构建管道集成

简介

Oracle Cloud Infrastructure (OCI) DevOps 服务是一个完整的持续集成/持续交付 (CI/CD) 平台,可帮助开发人员简化和自动化软件开发生命周期。OCI DevOps 服务支持开发人员和运营商协作开发、构建、测试和部署软件。DevSecOps 是在软件开发和部署的自动化过程中添加安全测试的做法。

Zed Attack Proxy (ZAP)(以前称为 Open Web Application Security Project Zed Attack Proxy (OWASP ZAP)) ) 是一个开源 Web 应用程序安全扫描程序。它帮助开发人员和安全专业人员检测和发现 Web 应用程序中的漏洞。ZAP 将提供一份报告,说明在漏洞扫描期间发现的漏洞和警告。

目标

先决条件

任务 1:为 ZAP 扫描设置构建阶段

  1. 使用名为 zap_build_spec.yaml 的 ZAP 集成阶段的以下配置创建构建规范文件。将构建规范命令中的 application-url 替换为已部署的应用程序 URL。还可以使用“构建参数”使其更加动态。将构建规范文件上载到资料档案库。

    version: 0.1
    component: build
    timeoutInSeconds: 10000
    runAs: root
    shell: bash
    
    steps:
      - type: Command
        timeoutInSeconds: 1200
        name: "Zap Scan"
        command: |
          docker run -v /docker-vol/agent-dir/ext/${OCI_PRIMARY_SOURCE_NAME}:/zap/wrk/:rw --user root ghcr.io/zaproxy/zaproxy:stable zap-baseline.py -t <application-url> -g gen.conf -d -r report.xml
    
    outputArtifacts:
      - name: zap-report
        type: BINARY
        location: ${OCI_PRIMARY_SOURCE_DIR}/report.xml
    
  2. 为 ZAP 集成添加构建阶段。

    1. 单击构建管道下的添加阶段,然后选择管理构建阶段

    2. 构建规范文件路径中输入 zap_build_spec.yaml

    3. 输入阶段名称并添加主要代码资料档案库。

    4. 选择“Connection type(连接类型)”作为 OCI 代码资料档案库,然后选择 zap_build_spec.yaml 所在的代码资料档案库。

      ZAP 构建阶段

  3. 添加 Artifact。

    1. 单击添加对象

    2. 将类型指定为常规构件

    3. 选择将存储 ZAP 报告的构件注册表资料档案库。

    4. 从资料档案库中选择对象

    5. 单击添加

      Zap 添加构件

  4. 此阶段会将 ZAP 报告推送到构件注册表。在以前创建的构建管道中,添加另一个提供构件类型的阶段。

    1. 单击选择构件,然后选择创建的构件。

    2. 构建配置/结果构件名称指定为 zap-report ,因为我们在 zap_build_spec.yaml 文件中提到了此构件名称。

    3. 单击添加

      Zap 传送构件

  5. 构建管道显示在下图中。单击开始手动运行以运行管道。

    启动手动运行

  6. 成功运行管道后,您可以从构件注册表下载 ZAP 报告。

    ZAP 报表下载

后续步骤

生成的 ZAP 报告将有助于了解 ZAP 扫描期间发现的漏洞和警告。此构建规范配置正在执行基线扫描。您还可以执行 ZAP - Full Scan ,该功能执行实际的“攻击”,并可能长时间运行。

可以首先在测试环境中执行 ZAP 扫描。如果在测试环境中未找到漏洞,则可以将应用程序推广到生产环境。

确认

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者通过 Oracle Learning YouTube 频道访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心