SuperAPI AI 工具集

hunt-cicd

安全与审计

查看项目

更新于 10-15 12:42

技能介绍

HUNT-CICD 是一套针对 CI/CD 流水线安全的漏洞排查技能,覆盖 Jenkins、GitHub Actions、GitLab CI、Terraform 状态文件以及构建产物与镜像等目标。其核心原则是“没有证据就不算发现”:CI/CD 类问题容易被过度报告,因为仪表盘看起来可利用,但登录页不等于 RCE,可达的 /script 返回登录或 403 不等于未授权脚本控制台,pull_request_target 工作流也不自动等于可注入,必须确认不可信数据确实流入执行汇点。

主要能力与关注目标包括:Jenkins 脚本控制台(Groovy 执行导致 RCE 并导出凭证库)、Jenkins CLI 任意文件读取(CVE-2024-23897,通过 args4j 的 @ 文件展开读取 secret.key、credentials.xml 等)、GitHub Actions 的 pull_request_target 注入(Pwnrequest)与 ${{ }} 模板展开进入 shell、自托管 runner 投毒、OIDC 信任策略滥用(sub 声明通配过宽)、Terraform 状态泄露、runner 令牌/制品/日志泄露,以及 Actions 缓存投毒。

使用方式上,技能按阶段组织:先做指纹识别与探测(如通过 X-Jenkins 头判断版本、枚举 /script 等路径),再针对具体目标执行验证命令。例如 Jenkins 未授权脚本控制台需通过 POST scriptText 返回命令输出才算成立;CVE-2024-23897 需响应中包含真实文件内容(如 root:x:0:0)且版本在受影响范围内;GitHub Actions 注入需区分 ${{ }} 模板展开与 shell 内环境变量读取两类汇点,盲注必须通过 Burp Collaborator / interactsh 等带外方式确认;OIDC 滥用需从受控工作流执行 aws sts get-caller-identity 返回特权角色 ARN;Terraform 状态需用 jq 提取出至少一个有效凭证并用只读方式验证。

适用场景为授权范围内的 CI/CD 安全评估与漏洞验证,包括对 Jenkins 实例、GitHub/GitLab 组织仓库、云 IAM 信任策略、公开存储桶中的状态文件以及容器镜像的检查。限制方面:所有验证都要求可复现的证据,仅凭字符串存在、HTTP 200 或“工作流跑绿”不构成影响;报告前需排除常见误报,如 /script 返回登录页、pull_request_target 存在但不可信输入未到达汇点、${{ }} 已被 env: 包裹等。资料中未提供该技能的安装方式、收费模式、支持平台或具体使用步骤,这些信息暂未提供。