Skip to main content

2021年のSnyk IaC:開発者向けインフラストラクチャ as Codeセキュリティをリード

著者

Lauren Place

blog feature snyk iac party

2021年12月22日

0 分で読めます

優れた自動化には、大きなリスクが伴います。Infrastructure as Codeの登場により、宣言型スクリプトを使ってパブリッククラウドのリソースをデプロイ、プロビジョニング、管理する煩雑な作業が自動化されました。しかし、その自動化によって安全なIaCスクリプトや構成を作成する重要性も高まっています。2020年から2021年にかけて、クラウドインフラの設定ミスが懸念の高まりを示す最大の領域(58%)として挙げられました。これは2021 Snyk Cloud Native Application Securityレポートによるものです。安全でないAWS S3バケットや、意図せずパブリックアクセス可能になっているインスタンスなど、たった1つのIaC設定ミスが、企業全体に数十もの脆弱性をもたらす可能性があります。

Snyk Infrastructure as Code(Snyk IaC)は、開発中およびCI/CDパイプラインでDevOpsチームがIaC構成を保護できる、開発者を第一に考えたソリューションです。業界のベストプラクティス、コンプライアンスフレームワーク、AWS、Azure、GCPなどのクラウドプロバイダーに対応する数百の独自の事前定義ルールに照らしてチェックします。Snyk IaCは開発チームにセキュリティを組み込み、ポリシー適用の自動化と設定ミスの迅速な修正を支援します。

2021年、Snyk Infrastructure as Codeは次の成果を達成しました。

  • Gitリポジトリだけで2億3,500万件のテストを実施

  • 今年に入り、800万件を超える問題を検出

  • AWS、Azure、GCP、Kubernetesにわたる独自の設定ミスを413件*まで拡充

  • スキャン速度を20倍に向上

2022年まであと数日となりました。開発者を第一に考えた市場をリードするIaCソリューションを目指すSnyk Infrastructure as Codeが、この1年で達成した進歩を振り返ります。

さっそく、Snyk IaCが成果を上げた3つの重要分野を見ていきましょう。対応する構成形式とコンテンツの拡充、開発者エクスペリエンスの向上、そして開発ワークフローとのインテグレーションです。

より多くのインフラ構成形式に対応し、独自のルールセットを拡充

開発チームとセキュリティチームがあらゆるインフラをスキャンできるよう、Snyk IaCはTerraform、CloudFormation、Kubernetes(Helmを含む)、Azure Resource Manager(ARM)テンプレートなど、継続的に拡大する幅広い構成形式に対応しています。今後も対応形式を増やしていきます。

2021年には、AWS環境全体を網羅できるようAWS CloudFormationとARMテンプレートへの対応を追加しました。

IAMデータベース認証が無効になっている問題と、該当箇所が示されたコード行を表示するCloudFormation RDSテンプレートのスキャン結果。
Gitリポジトリのワークフローを介したCloudFormation(CF)ファイルのスキャン。

2021年は、Snyk Securityチームが調査し、脅威モデルを作成し、コンプライアンスフレームワークにマッピングした、400件を超える独自の設定ミスを継続的に改善した年でもありました。

合計で、次の項目を追加しました。

  • AWS向けの新しいポリシーを66件

  • Azure向けの新しいポリシーを66件

  • GCP向けの新しいポリシーを41件

  • CloudFormation形式に対応するポリシーを133件

  • Azure Resource Manager形式に対応するポリシーを119件

  • Terraform Kubernetesプロバイダー形式に対応するポリシーを41件

これにより、すべての主要なクラウドプロバイダーとTerraform、Kubernetes形式にわたって、Snyk IaCがお客様の組織で検出できる独自の設定ミスが増えました。また、何百、何千ものルールセットやポリシーを調査・作成する負担をセキュリティチームから軽減します。

「実行環境でインフラの脆弱性につながる可能性のある問題を、手動でレビューすることなく発見できるよう、包括的なカバレッジを求めていました。Snykを使うことで、さまざまなIaCリポジトリをすべて可視化できました。」

NateraNatera

Charlotte Townsley

Director, Security Engineering, Natera

事前定義されたベストプラクティスのルールセットに加えて、セキュリティの適用範囲をより具体的かつ柔軟にするSnyk IaC向けカスタムルールを最近リリースしました。これらのベストプラクティスのルールセットではカバーできない、組織固有のシナリオがある場合、Snyk Custom Rules SDKとRegoを活用してカスタムルールを作成できます。タグ付けの標準化や、事前承認済みのクラウドリソースリストの確立などのユースケースに合わせて、ルールセットを記述、テスト、バンドル、公開できます。

S3バケットの所有者タグの設定を必須とするSnyk IaCのカスタムルールと、暗号化、MFAによる削除保護、バージョニング、ログ記録に関する問題を示すターミナル出力。
Snyk CLIでタグ付けの標準化を適用するカスタムルール。

開発者エクスペリエンスの継続的な向上

開発者向けのIaCツールは、リポジトリの可視性を高めるだけではありません。開発環境で開発者が作業する場所に溶け込み、問題を迅速かつ正確に発見し、コードに沿った修正方法を提示する必要があります。Snyk IaCは、実行可能な修正案と設定ミスの修正を自動化するワークフローにより、開発者にとって使いやすいツールの新たな基準を打ち立てています。

Snyk IaCがコード、Gitリポジトリ、CI/CD、本番環境を、提出・ビルド・デプロイの各段階でスキャンする様子を示したパイプライン図。
Snyk IaCは、可能な限り早い段階で、IDEにネイティブに統合されてインフラストラクチャ・アズ・コードをスキャンします。

今年初めには、JetBrains向けSnykプラグインを発表し、統合開発環境(IDE)でIaCスキャンを直接自動化できるようになりました。この強力な新機能により、数秒でスキャンを完了し、開発者にとって使いやすく、実行可能な修正アドバイスを得られます。開発者のワークフローにネイティブに組み込み、既存のワークフローを改善することで、開発者向けセキュリティインテリジェンスの品質とエクスペリエンスを絶えず向上させています。

SnykCon Keynote

この取り組みの一環として、2021年にはローカルマシンまたはCI環境でSnyk CLIを使ってIaCをスキャンする機能をリリースしました。CLIでのスキャンによりIaCテストの速度が向上するだけでなく、テスト結果はすべてローカルに保持され、Snykに送信されないため、組織のセキュリティをさらに強化できます。以下は、Snyk CLIでKubernetesまたはTerraformファイルをスキャンする例です。

$ snyk iac test /path/to/Kubernetes.yaml
$ snyk iac test /path/to/terraform_file.tf

さらに、IaCテストの実行時にIaCの脆弱性を無視する機能を追加しました。開発者は無視ルールを使って、自分に関係のない問題を効果的に除外でき、煩わしい通知をなくす作業を自動化できます。以下は、Snyk CLIで「パブリック読み取り可能なバケット」の脆弱性を無視する例です。

# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
version: v1.22.0
# ignores vulnerabilities until expiry date; change duration by modifying expiry date
ignore:
  SNYK-CC-TF-18:
    - '*':
        reason: Blog bucket should be open
        expires: 2021-09-17T10:57:56.635Z
        created: 2021-08-18T10:57:56.637Z
patch: {}

重要な場面にインテグレーション

これまで築いてきたパートナーシップやインテグレーションも忘れてはいけません。Snyk IaCは、コードの開発やGitリポジトリからCI/CDパイプラインまで、開発ライフサイクルの早い段階から各所にインテグレーションしています。2021年には、Terraformワークスペースにもインテグレーションを拡張しました。

現在、Snykのお客様の39%以上が、インフラのプロビジョニングと管理にHashicorpのTerraformを利用しています。DevOpsプロセスにセキュリティを組み込み、開発者に専門的なセキュリティガイダンスを提供するというミッションのもと、Terraform Cloudとのインテグレーションがベータ版として利用可能になったことを発表しました。SnykとTerraform Cloudを組み合わせることで、「Apply」ステージの前にTerraformの修正を効率化できます。IaCスキャンを自動化し、AWS、Azure、GCP、Kubernetes向けの400を超える品質重視のセキュリティルールとポリシーで、Terraform Cloudの各「Run」をチェックします。さらに、開発者が理解しやすいコンテキストと、ストレスのない修正方法を提供します。

最後に、主要なオープンソースのドリフト検出ツールDriftctlを開発したチームが、10月にCloudSkiffの買収を通じてSnykに加わりました。Driftctlをこれまでどおり、コミュニティに無料で提供し、オープンソースとして維持することを約束します。今後もDriftctlの技術への投資とコミュニティの成長を続けるとともに、新しいワークフローを考案し、ドリフト検出や未管理インフラの検出機能を数か月以内にSnyk IaCへ統合していきます。

2022年、Snyk IaCに新たなアップデートが登場

クラウドへの移行とIaCツールの導入が進むにつれて、IaCセキュリティの重要性も高まっています。Infrastructure as Codeによってクラウドのプロビジョニングは迅速かつ効率的になりましたが、設定ミスが増殖し、アプリケーションが攻撃者にさらされる新たなリスクも生まれています。

2021年、世界的にIaCセキュリティへの注目を集めたのは、10月のTwitchの情報漏えいで、設定ミスが侵入経路になったことが判明した事件でした。さらに分析を進めた結果、Terraformコード内のデータベース認証情報が侵害されていたことも明らかになりました。

Snyk Infrastructure as Codeは、Terraform、CloudFormation、Kubernetes、ARMテンプレートなど、さまざまなIaC形式を幅広くカバーし、他社と一線を画しています。今後も、Snykが提供するポリシーでも、お客様の組織が独自に追加するポリシーでも、開発ライフサイクル全体を通してIaCの固有の設定ミスをさらに検出できるよう、セキュリティの深度を高めていきます。来年は、DriftCTLのプラットフォームへの統合や、管理対象・対象外を問わずリソースの変更を検出する機能など、魅力的な新機能を予定しています。

また、チームの要件や好みに合わせたワークフローの拡充など、開発者エクスペリエンスの向上にもこれまで以上に注力しています。これには、Snyk CLIの改善、開発環境に開発者向けの修正を直接組み込むJetBrains IDE向けの新しいプラグイン、そしてTerraform Planのセキュリティを効率化するSnyk Terraform Cloudインテグレーション(パブリックベータ版)が含まれます。

2022年はSnyk Infrastructure as Codeにとって大きな変化のある年になるでしょう。ソーシャルメディア(@snyksec)で最新情報を確認するか、DiscordのDriftCtlコミュニティにご参加ください。

Snyk一同、皆さまが素晴らしい冬休みを過ごし、良い(そして安全な)新年を迎えられるよう願っています。

ソースコードの段階からインフラを保護

Snykはワークフロー内のIaCセキュリティとコンプライアンスを自動化し、構成ドリフトや不足しているリソースを検出します。

* Snyk IaCでは、ルールセットに含まれる設定ミスの数、つまり品質に重点を置いており、ルールそのものの数を重視しているわけではありません。Terraform、ARM、CloudFormationなど、ソースを問わず、見つけて修正すべきなのは設定ミスです。

続きを読む

blog feature snyk container custom base recommendations
Blog

Evo Agentic AppSecのご紹介:AI開発のスピードに追随するセキュリティ

AIを活用した開発は、従来のセキュリティワークフローを上回るスピードで進んでいます。SnykのAgentic AppSecは、セキュリティエージェントが脆弱性を継続的に検出、修正、検証し、人が基準を定められるようにします。

feature insights context
Blog

自律型攻撃はすでに始まっている。防御もそのスピードに追いつかなければならない。

自律型攻撃者によって、防御に使える時間は短くなっています。継続的な検出、修復、検証、予防で、セキュリティチームが攻撃に歩調を合わせる方法をご紹介します。

Blog

Evo ADSのエージェント動作ガバナンスが一般提供開始:MCPの利用を管理

Evo ADSのエージェント動作ガバナンスが、MCPガバナンスから一般提供を開始しました。主要なAIコーディングエージェント全体で、MCPサーバーの利用を検出、承認、監視、記録、ブロックできます。