You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS CodePipeline中集成漏洞扫描阶段检测构建包漏洞

AWS CodePipeline 新增制品漏洞扫描阶段实操方案

现有两条AWS CodePipeline流水线,分别承担SAM应用、React应用的构建部署工作,可按照以下步骤新增漏洞扫描阶段:

工具选型

推荐使用开源反病毒引擎ClamAV,轻量适配CI/CD场景,无需额外付费即可实现全量制品病毒、恶意代码扫描。

实现步骤

  • 调整流水线阶段顺序:在构建阶段完成后、部署阶段启动前插入新的漏洞扫描阶段
  • 配置扫描执行载体:使用AWS CodeBuild作为扫描阶段的执行资源,执行环境可选标准Linux镜像,在构建spec中完成ClamAV安装、病毒库更新、扫描执行全流程
  • 适配不同应用的扫描范围:
    • SAM应用:扫描构建后生成的.aws-sam目录下所有待发布的部署包、Lambda层压缩包
    • React应用:扫描构建后生成的build目录下所有静态资源、待上传的压缩包
  • 配置结果输出与拦截规则:
    • 扫描报告导出为HTML/JSON格式,上传至指定S3桶留存审计
    • 若扫描发现高危风险项,直接终止流水线,禁止制品进入部署阶段
    • 可按需配置白名单规则,规避合法文件的误报拦截

参考CodeBuild BuildSpec 示例

version: 0.2
phases:
  install:
    commands:
      - apt-get update && apt-get install -y clamav clamav-daemon
      - systemctl stop clamav-freshclam
      - freshclam # 更新病毒库
  build:
    commands:
      # 替换为你实际的构建产物路径
      - clamscan -r ./your-build-artifact-path --scan-archive=yes --output-html=./scan-report.html
  post_build:
    commands:
      - |
        if [ $? -eq 1 ]; then
          echo "发现恶意文件/漏洞,流水线终止"
          exit 1
        fi
artifacts:
  files:
    - ./scan-report.html

内容的提问来源于stack exchange,提问作者boyapati

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 06:39:00