对 Terraform、Kubernetes 与通用 YAML 基础设施代码做安全与最佳实践审查,识别硬编码密钥、特权容器、缺失资源限制、开放安全组、未加密存储、特权提权等风险,并给出分级修复建议与漂移检测思路。当用户说"审查 terraform"、"检查 k8s yaml"、"iac 安全"、"review IaC"、"iac-guard"、"扫描基础设施代码"时使用。
Scanned 9/6/2026
Install to Claude Code
npx -y skills add whaojie797-design/Novera-AI-skills --skill iac-guard --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Iac Guard?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/whaojie797-design-iac-guard)More formats (shields.io, HTML) on the badges page.
---
name: iac-guard
description: >-
对 Terraform、Kubernetes 与通用 YAML 基础设施代码做安全与最佳实践审查,识别硬编码密钥、特权容器、缺失资源限制、开放安全组、未加密存储、特权提权等风险,并给出分级修复建议与漂移检测思路。当用户说"审查 terraform"、"检查 k8s yaml"、"iac 安全"、"review IaC"、"iac-guard"、"扫描基础设施代码"时使用。
---
# IaC Guard
## Overview
面向 DevOps 与平台工程的基础设施即代码(IaC)安全审查工具。对 Terraform(`.tf` / `.tfvars`)与 Kubernetes / 通用 YAML(`.yaml` / `.yml`)做行级启发式扫描,按严重度输出风险与修复建议,并补充"漂移检测"的落地思路。
## When to Use
- 用户说:"审查 terraform"、"检查 k8s yaml"、"iac 安全"、"review IaC"、"iac-guard"、"扫描基础设施代码"。
- 提交/合并 IaC 清单前的预检。
- 对既有仓库做安全巡检或合规基线核对。
## How It Works
内置脚本 `scripts/scan_iac.py`(纯 Python 标准库,无第三方依赖):
- 递归扫描目标目录下所有 `.tf` / `.tfvars` / `.yaml` / `.yml`(自动跳过 `.git`、`node_modules`、`vendor`、`.terraform`)。
- 行级启发式(正则 + 缩进感知)检测风险,详见 `references/iac-rules.md`。
- 输出 `文件:行 [等级] 规则` + 问题描述 + 修复建议;支持 `--json` 机器可读输出。
- 退出码:`0`=无 High;`1`=存在 High;`2`=用法/IO 错误。便于接入 CI 门禁。
## Procedure
1. 确认用户要审查的目标目录或文件集合;若给定单文件,先放到临时目录再整体扫描。
2. 运行扫描器:
- 文本报告:`python scripts/scan_iac.py <dir>`
- CI/集成:`python scripts/scan_iac.py <dir> --json`
3. 按严重度汇总(High 优先,其次 Medium),不要只罗列原始行号——给出"风险 → 影响 → 修复"三段式结论。
4. 对每条 High/Medium 给出可操作的修复建议(引用 `references/iac-rules.md` 中的对应规则)。
5. 提示用户运行"漂移检测"(见下),把"代码态"与"运行态"的差异纳入闭环。
6. 明确说明本工具是启发式预检,不能替代 OPA/Kyverno/Checkov/Trivy 等策略引擎的完整覆盖。
## Drift Detection(漂移检测)
扫描器只审查"代码态"。已部署资源可能因手动变更而偏离声明,需另做比对:
- **Terraform**:`terraform plan -detailed-exitcode`(0=无变更,1=有变更,2=错误),接入定时 CI。
- **Kubernetes**:`kubectl diff -f <manifest>` 或 `kubectl get -o jsonpath` 关键字段断言。
- **云厂商**:AWS Config / Azure Policy / GCP Asset Inventory 等托管合规检测。
扫描器不自动执行上述命令(需凭据与网络),请由用户在目标环境自行运行。
## Bundled Resources
- `scripts/scan_iac.py` — 启发式扫描器(标准库,可直接运行)。
- `references/iac-rules.md` — 规则目录:名称、匹配模式、严重度、修复建议,以及漂移检测与手动复核项。
## Limitations
- 行级启发式,存在误报(如合法的 `0.0.0.0/0` 用于公开 CDN)与漏报(如变量拼接生成的密钥)。
- 不解析完整 YAML/ Terraform AST,不评估跨文件引用与模块上下文。
- 不连接云 API、不执行 `plan`/`diff`,不解决实际凭据轮换。
- 结果需人工复核;高危项建议再用策略引擎二次确认。
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!