SuperAPI AI 工具集

config-scan

安全与审计

查看项目

更新于 10-15 11:52

技能介绍

Config Scan 是一个对配置文件和基础设施即代码(IaC)进行安全审查的技能。它通过命令调用,例如 /config-scan 扫描所有配置文件,或使用 --docker、--k8s、--terraform、--env 等参数仅扫描指定类型的文件。

主要能力与检测范围

该技能覆盖以下几类配置的安全检查:

环境文件:扫描 .env、.env.、.env 文件,检测 .env 文件中包含密钥、不安全的默认值、缺少必需的安全变量等问题。例如 Secrets in .env(HIGH)、.env committed(CRITICAL)、DEBUG=true(HIGH)、Weak secrets(MEDIUM)等,并通过正则模式识别敏感变量赋值、调试标志等。

Docker 安全:扫描 Dockerfile 和 docker-compose.yml,检测以 root 运行(USER root,HIGH)、将密钥复制进镜像(COPY secrets,CRITICAL)、使用 latest 标签(MEDIUM)、暴露端口(LOW)、缺少 healthcheck(LOW)等问题。检测模式包括无 USER 指令、COPY 密钥文件、未固定基础镜像、--privileged、--cap-add 等,以及 docker-compose 中的 privileged、cap_add: ALL、network_mode: host、挂载 docker.sock 等。

Kubernetes 安全:扫描 .yaml、.yml 清单,检测 privileged: true(CRITICAL)、runAsRoot(HIGH)、缺少资源限制(MEDIUM)、hostNetwork(HIGH)、缺少 securityContext(MEDIUM)等。检测模式包括 securityContext.privileged、runAsUser: 0、hostNetwork/hostPID/hostIPC、hostPath 挂载根目录、通配符 RBAC 规则等。

Terraform/IaC:扫描 .tf、.tfvars,检测公开 S3 桶(CRITICAL)、IAM 策略中使用通配符(HIGH)、未加密存储(HIGH)、0.0.0.0/0 入站(HIGH)、硬编码密钥(CRITICAL)等。检测模式包括公开 ACL、"Action": "*"、开放安全组、encrypted = false、硬编码 password/secret_key 等。

应用配置:扫描 config/.json、.config.js、application.yml,检测 DEBUG=true(HIGH)、详细错误信息(MEDIUM)、CORS 允许所有来源(HIGH)、未使用 HTTPS(MEDIUM)等。检测模式包括 debug 标志、showStackTrace、origin: '*'、secure: false、httpOnly: false、sameSite: 'none' 等。

输出格式

扫描结果按严重级别分组输出,例如 CRITICAL、HIGH、MEDIUM,每条问题包含文件与行号、问题描述以及修复建议。

配置方式

可通过 .config-scan-ignore 文件忽略特定文件或规则,并附上原因。也可通过 .config-scan.yaml 配置扫描档案(production、development、strict)、失败阈值(fail_on、warn_on)以及启用哪些扫描器(docker、kubernetes、terraform、env_files、app_config)。

最佳实践检查

该技能检查的实践包括:Docker 的非 root 用户、固定基础镜像摘要、构建中无密钥、多阶段构建、health check、只读根文件系统;Kubernetes 的非 root 安全上下文、资源限制、网络策略、无特权容器、服务账号范围、静态加密;Terraform 的加密状态文件、无硬编码密钥、最小权限 IAM、启用加密、启用日志、默认无公开访问。

修复示例

技能提供了各领域的修复示例,如 Docker 中创建非 root 用户并指定 USER、Kubernetes 中设置 securityContext(runAsNonRoot、readOnlyRootFilesystem、allowPrivilegeEscalation 等)、Terraform 中移除公开 ACL 并添加 public access block。

适用场景与限制

适用于在代码审查、CI/CD 流水线中作为配置安全门禁,例如 GitHub Actions 中运行 /config-scan --fail-on high 或 /config-scan --docker --fail-on critical。相关技能包括 /security-scan(完整安全分析)、/secrets-scan(凭据检测)、/dependency-scan(包漏洞)。关于该技能支持的平台、收费方式、价格等具体信息,资料中暂未提供。