iac-security-scanner

SkillCloud & infra

Use when scanning IaC (Terraform, Bicep, Dockerfile, docker-compose) with Trivy config to detect security misconfigurations before merging.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the iac-security-scanner skill

What this skill tells your AI

The instructions your AI receives, as published by gonzalezpazmonica/savia in .claude/skills/iac-security-scanner/SKILL.md and read by ahel’s review.

Subagent Scope Guard

Si fuiste invocado como subagente para una tarea concreta, ejecuta solo esa tarea, reporta DONE / DONE_WITH_CONCERNS / BLOCKED y retorna. No actives el workflow de orquestación completo.

IaC Security Scanner Skill

§0 Cuándo usar

  • Después de que terraform-developer o infrastructure-agent genera IaC
  • Antes de presentar una propuesta terraform plan al humano
  • En CI antes de merge de PRs que tocan *.tf, Dockerfile, *.bicep, docker-compose*.yml
  • Cuando el humano pide explícitamente revisar la seguridad del IaC

§1 Integración con terraform-developer

Tras generar IaC, terraform-developer debe incluir en su output:

Antes de ejecutar terraform plan/apply, ejecuta:
  bash scripts/iac-security-scan.sh --path <directorio_infra>

El humano recibe siempre el IaC junto con su security score.

§2 Uso básico

# Escanear directorio IaC
bash scripts/iac-security-scan.sh --path ./infra/

# Solo CRITICAL (más estricto)
bash scripts/iac-security-scan.sh --path ./infra/ --severity CRITICAL

# Incluir escaneo de imagen Docker
bash scripts/iac-security-scan.sh --path ./infra/ --image myapp:latest

# Sin actualizar DB (modo offline)
bash scripts/iac-security-scan.sh --path ./infra/ --skip-update

§3 Auto-detección de tipos IaC

El script detecta automáticamente:

  • Terraform: ficheros *.tf
  • Bicep: ficheros *.bicep
  • Dockerfile: ficheros Dockerfile*
  • docker-compose: docker-compose*.yml
  • Kubernetes: manifests YAML con kind:

§4 Configurar Trivy sin instalación local

Si Trivy no está disponible, el script usa Docker automáticamente:

docker run --rm -v "$(pwd):/workspace" aquasec/trivy:latest config /workspace

§5 Gestión de falsos positivos

# Generar baseline de misconfiguraciones conocidas
bash scripts/iac-security-baseline.sh --path ./infra/ --output .trivyignore
# → Revisar el fichero antes de commitear
# → Cada supresión requiere justificación en comentario

§6 Output

output/security/iac-scan-YYYYMMDD.json   ← report completo
output/security/iac-scan-YYYYMMDD.md     ← summary para humano

§7 Misconfiguraciones más comunes en IaC generado por LLMs

RecursoMisconfig habitualID Trivy
S3 BucketACL públicaAVD-AWS-0089
Security Group0.0.0.0/0 ingress all portsAVD-AWS-0105
IAM Role* en actions/resourcesAVD-AWS-0057
RDS / StorageSin cifrado en reposoAVD-AWS-0077
ContainerEjecuta como rootDS002

Ver política completa: docs/rules/domain/iac-security-policy.md

Signals

GitHub stars
50
Forks
12
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
iac-security-scanner-gonzalezpazmonica
Source
github.com/gonzalezpazmonica/savia