Subscribe

Platform security

IaC scanners that fail the plan before it lands (2026)

A 2026 shortlist of policy-as-code scanners. Public docs, not a cloud-exploit cookbook. Kubernetes overlap declared.

Expertise: Platform security · Level: Intermediate · 12 min read

A CSPM finding after apply is a late ticket.

CSPM reads the live account. IaC scanning reads the plan. Overlap declared. The Kubernetes list already rows admission. This page is the file in git. I will not publish a privilege recipe.

Six scanners. Three open engines. One Trivy (tfsec merged). One Rego runner. One commercial IaC. Public docs. Not a bake-off.

Technical check: we cross-check first-party product pages, public licenses, and live documentation. Rank is a technical recommendation, not a recap of other lists, and not a lab bake-off.

ToolBest forLicense
CheckovOpen IaC scan you can run in CIApache-2.0
KICSOpen queries on IaC you already wroteApache-2.0
TerrascanOpen policy runner on Terraform you ownApache-2.0
TrivyOne binary after tfsec merged inApache-2.0
ConftestRego on any file you already haveApache-2.0
Snyk IaCCommercial IaC next to Snyk OSSCommercial (free tier)
Where it sits
Open IaC
Commercial IaC
Rego / policy
Multi-scanner
1

Checkov

Best for open IaC scan you can run in CI

Checkov scans Terraform, CloudFormation, Kubernetes YAML, and more. Policies you can extend. Prisma stewards it.

Key features

  • Many IaC flavors
  • Custom policies
  • Apache-2.0
  • CI they document

Why we like it

This is the hidden gem. Fail the plan before CSPM opens a Tuesday ticket.

Limits

Noise on generated modules. Prisma gravity. Not a live-account CSPM.

2

KICS

Best for open queries on IaC you already wrote

Keeping Infrastructure as Code Secure. Query-based. Checkmarx opened it. You run the engine.

Key features

  • Query pack
  • Many platforms they list
  • Apache-2.0
  • SARIF out

Why we like it

Second open engine so Checkov is not a one-logo open row.

Limits

Query tuning. You still own false friends.

3

Terrascan

Best for open policy runner on Terraform you own

Terrascan evaluates IaC against policies. Tenable-adjacent history. You run it in CI.

Key features

  • Policy packs
  • Terraform-shaped
  • Apache-2.0
  • CI

Why we like it

Third open runner so the page is not a Checkov recap.

Limits

Mind the project pulse. Read the current repo before you promise it.

4

Trivy

Best for one binary after tfsec merged in

Trivy scans images, filesystems, and IaC. tfsec merged into it. The SBOM and Kubernetes lists already name Trivy. Here it is the Terraform misconfig scan. Overlap declared.

Key features

  • config scan
  • Same binary as image scan
  • Apache-2.0
  • tfsec successor

Why we like it

If Trivy is already in CI, enable config before you add a fourth engine.

Limits

One binary, many jobs. Say which job you turned on.

5

Conftest

Best for rego on any file you already have

Conftest runs OPA Rego against JSON, YAML, HCL. You write the policy. There is no vendor pack theater unless you add one.

Key features

  • You write Rego
  • Many inputs
  • Apache-2.0
  • OPA-shaped

Why we like it

When the rule is yours, a wrapper around Checkov is the wrong door.

Limits

You write Rego. That is the cost and the point.

6

Snyk IaC

Best for commercial IaC next to Snyk OSS

Snyk IaC is the commercial file scan. If Snyk OSS is already on the PR, this is the sibling. Overlap with SCA is the vendor, not the job.

Key features

  • PR annotations
  • Terraform and friends
  • Same Snyk tenant
  • Free and paid

Why we like it

Known desk. Do not add Checkov and Snyk IaC on the same files without a reason.

Limits

Commercial. Noise. We did not run a tenant.

What the internet thinks about IaC scanners

IaC threads treat post-apply CSPM as late. We keep that line. tfsec merged into Trivy. A green plan is not a live-account proof.

Thev00d00 on Hacker News, Nov 2023: “Got a really bad taste when Aqua just dropped support for tfsec entirely, including closing all GitHub issues even unfixed, instead pointing to trivy.”

Prove Checkov still publishes

Confirm Checkov still publishes. Scan a plan or file you own. Do not point it at a stranger’s account.

git ls-remote --heads https://github.com/bridgecrewio/checkov.git

FAQs

Does IaC scanning replace CSPM?

No. The file is the intent. The account is the truth. Link both.

Where did tfsec go?

It merged into Trivy. Use Trivy config scan.

Does this replace Kubernetes admission?

No. Admission is the cluster gate. This is the git file. Link Kubernetes security.

Is this a scored bake-off?

No.