cfn-nag vs Chef InSpec
cfn-nag
github.comChef InSpec
docs.chef.ioSide by side
| Figure | cfn-nag | Chef InSpec |
|---|---|---|
| Price from | Free | $4.92/mo |
| Free plan | Yes | Yes |
| Free trial | — | Yes |
| Open source | — | Yes |
| Windows | — | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 8 |
| Spec score · Infrastructure Testing Tools | 8.0 (#9) | 9.4 (#1) |
| Integrations | The project documents running cfn-nag in GitHub Actions workflows and deploying it in AWS CodePipeline through the AWS Serverless Application Repository. | The kitchen-inspec verifier lets users run InSpec profiles through Test Kitchen. |
| Purpose | cfn-nag scans CloudFormation templates for patterns that may indicate insecure infrastructure. | Chef InSpec tests and audits applications and infrastructure by comparing their actual state with a desired state expressed in InSpec code. |
| Support | The project directs users to submit bug reports and feature requests through its GitHub issue tracker. | The licensing page lists community Slack support for Free and Trial tiers and contract support for Commercial licenses. |
Plans
Chef InSpec
- FreeFree
- FreeFree
- TrialFree
- TrialFree
- Business$59 a year
- Enterprise$189 a year
- CommercialPriced on request
- Enterprise PlusPriced on request
In their own words
cfn-nag
cfn-nag is free, MIT-licensed software that scans AWS CloudFormation templates for patterns that may indicate insecure infrastructure. It checks for overly permissive IAM policies and security-group rules, disabled access logging or encryption, and password literals. The scanner accepts JSON, .template, YAML, and YML files, and recursively processes subdirectories when given a directory. Results print to standard output, with JSON output available; failures return a non-zero exit code while warnings return success. Installation is documented through RubyGems and Homebrew, with Ruby 2.5 or later required for gem installation. A Dockerfile and Docker Hub image are provided. cfn-nag can run in GitHub Actions and AWS CodePipeline. Profiles, deny lists, per-resource suppressions, and custom rules support policy tailoring. Static analysis needs supplied parameter values to assess them and does not inspect false Fn::If outcomes by default.
Chef InSpec
Chef InSpec tests and audits applications and infrastructure against a desired state described in InSpec code. Its runtime framework and rule language express compliance, security and policy requirements. Reusable profiles group controls and can include versioning, platform requirements and dependencies. Resources support testing AWS, Azure, AliCloud and GCP infrastructure, and users can create custom resources. Tests can run locally or against cloud services and infrastructure such as Linux in Docker containers. Results can be exported as JSON, HTML or plain text, or sent to Chef Automate. The kitchen-inspec verifier also runs profiles through Test Kitchen. Chef offers premium CIS- and STIG-based profiles for compliance scanning. The free tier is for non-production workloads and personal, non-commercial use; the 30-day trial is for product evaluation under non-production conditions. Commercial licensing covers production and non-production workloads, with entitlements based on purchase order. Chef InSpec 7 requires EULA acceptance, and license-key requirements depend on the distribution source. Telemetry is enabled for free and trial tiers, but not commercial users.