Skip to content
Latchkey

Checkov vs tfsec: IaC セキュリティスキャンの比較

どちらも Infrastructure as Code をスキャンして設定ミスを探します。Checkov (Bridgecrew/Prisma) は大きなポリシーセットで多くの IaC フレームワークをカバーし、tfsec は Terraform に特化しており Trivy に統合されつつあるため、長期的なメンテナンスに影響します。

Checkov と tfsec はどちらも、apply する前に安全でない IaC (パブリックなバケット、開いた security group、暗号化の欠如) をフラグします。Checkov はフレームワークをまたいで広範で、tfsec は Terraform に特化しています。Aqua が tfsec を Trivy に取り込みつつある点に注意し、選択の際に考慮しましょう。ここでは率直な比較を示します。

Checkovtfsec
スコープTerraform、CloudFormation、K8s、Helm、ARM などTerraform 特化
ポリシーセット大きな組み込みライブラリ堅実な Terraform ルール
カスタムポリシーPython + YAMLカスタムチェック (Rego/JSON)
出力CLI、SARIF、JUnitCLI、SARIF、JSON
メンテナンス積極的にメンテナンスTrivy に統合中
最適な用途マルチフレームワークのカバレッジTerraform、または今後は Trivy 経由

広さ vs 集中

Checkov は多くの IaC タイプ (Terraform、CloudFormation、Kubernetes、Helm、ARM など) を、定期的に更新される大きなポリシーライブラリでスキャンし、混在したインフラを持つチームに向いています。tfsec は Terraform に鋭く集中し、明確で読みやすい検出結果を出すため、歴史的に純粋な Terraform 中心のチームに好まれてきました。

tfsec から Trivy への移行

率直な注意点です。Aqua Security は tfsec の機能を Trivy に統合してきており、新しい投資はそちらへ流れています。今日選ぶなら、tfsec を直接採用するか、tfsec の機能の多くを、脆弱性、secret、SBOM のスキャンとともに 1 つのツールで引き継ぐ Trivy の config scanning を使うかを検討しましょう。

CI では

どちらも高速な PR ゲートとして実行され、code scanning 向けに SARIF を出力します。既存のバックログをトリアージするためにまず非ブロッキングで始め、その後、設定ミスが merge されないよう新しい変更に対して強制しましょう。

結論

積極的にメンテナンスされる広範なマルチフレームワーク IaC カバレッジには Checkov を、集中した Terraform スキャンには tfsec を選びましょう。ただし Trivy への統合を考慮し、長期的には Trivy の config scanning も検討しましょう。

関連ガイド