-
タグ
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR
パブリッククラウドにおける、セキュリティの高いインフラ構築、運用自動化を実現するHashiCorp Terraformの導入実績が増えてきています。
今回は日本市場への進出が発表されたSnyk(スニーク)を使って、Terraformと組み合わせ、よりセキュアにクラウドインフラの構築・運用を自動化する方法についてご紹介します。
Terraformについて、簡単におさらい
Terraformではクラウドの構成をコードで記述、いわゆるInfrastructure as Code(以下、IaC)と呼ばれる手法により多数のクラウドの構築、運用を効率的に行うことが可能です。
ここでコード記述する際、気になるのはセキュリティ及びガバナンスへの対応です。記述したコードの中にセキュリティ上の脆弱性や社内ポリシーに違反した設定があると、構築したクラウドはサイバー攻撃や情報漏洩リスクにさらされます。
例えば以下のような場合です。
- 禁止されている海外リージョンへクラウドを立ち上げる設定をする
- 上司不在の夜間時間帯に、勝手に新しいクラウドの立ち上げや設定変更をする
- 高額なクラウドインフラを上司の許可なく立ち上げる
- セキュリティグループのCIDRブロックレンジを0.0.0.0/0と設定する
- AWS S3へ暗号化しないで、データを保管する
IaCではソフトウェア開発のようにコードを第三者が目視でチェックすることにより、上記のような問題を見つけ出すことは可能です。しかし管理するインフラが増加しチェックの対象が多くなると、人手を介したチェックでは非効率です。このときに役に立つのがTerraform Sentinelによる自動チェックです。
Snykとは
Snyk社(Snyk Limited)は米国ボストンを拠点に、クラウドセキュリティを実現するサービス開発を行う企業です。そして社名と同じ名前のサービスSnykは、開発者向けのセキュリティプラットフォームです。開発ツール、ワークフロー、自動化パイプラインに統合することで、開発チームがコード、その依存関係、コンテナ、インフラに存在するセキュリティの脆弱性をコードとして発見します。その脆弱性への対応に優先順位を付け、修正できます。
Snykには以下の機能があります。
- Snyk Open Source(スニーク オープンソース)
オープンソースの脆弱性をチェックし、自動的に修正します - Snyk Container(スニーク コンテナ)
コンテナイメージと、Kubernetesアプリケーションの脆弱性をチェックし、修正します - Snyk Infrastructure as Code(スニーク インフラストラクチャ アズ コード)
TerraformやAWS Cloud FormationなどIaCコードの静的解析を行い、セキュリティ上の脆弱性をチェック・修正します - Snyk Code
アプリケーションコードの脆弱性をリアルタイムでチェックし、修正します
この中で今回着目するSnyk Infrastructure as Code(以下、Snyk IaC)では、IaCにおいて管理するコードに以下のような問題が無いかポリシーセットが用意されており、自動でチェックできます。
- EBSボリュームが暗号化していない
- セキュリティグループ(ingress)がフルオープンとなっている
- metadataにシークレットがハードコーディングされている
Terraform SentinelとSnyk IaCの違い
TerraformにはSentinelというセキュリティ、ポリシーチェック機能があります。Sentinelはユーザー自身で個別にルールを実装する必要があり、組織独自ルールなど柔軟にチェックすべき内容を設定できます。
一方Snyk IaCは各クラウドサービスに応じて多くのセキュリティルールのプリセットが用意されています。例えばAWSの場合、現在157ものルールが用意されています(2021年12月現在)。一般的かつ大量のセキュリティポリシーを適用する場合は、プリセットを用意しているSnyk IaCを利用すると実装コストを下げられます。
Terraform Sentinel | Snyk IaC | |
---|---|---|
設定方法 | ユーザー自身で個別にルールを実装 | ポリシーセットが用意されている |
得意な領域 | 組織独自ルール(ガバナンス)のチェック | 一般的なプラクティスに基づくセキュリティチェック |
なお、TerraformとSnyk IaCを組み合わて利用するフローには、2つのパターンがあります。
パターン1:GitHub Actionsに組み込む
Github ActionsによるCIパイプラインを起点に、Snyk IaC及びTerraformを順次実行するフローです。既存のパイプラインに組み込みやすいメリットがあります。
パターン2:Terraform Run Tasksに組み込む
2021年9月にTerraformの新機能「Run Tasks」のベータ版がリリース※1されました。これにより、TerraformのPlan時にSnyk IaCのようなサードパーティのツールを呼び出し実行することが出来るようになりました。
※1 Run Tasks - Workspaces - Terraform Cloud and Terraform Enterprise | Terraform by HashiCorp
このうちパターン2の実装例を見てみましょう。
まずチェック対象のTerraformのコードを用意します。
このコードは、AWS上に仮想マシンを構成するものですが、12行目でAWSのセキュリティベストプラクティス※2に反し、ディスクの暗号化オプションが無効になっています。
※2 [EC2.3] を参照
AWS の基本的なセキュリティのベストプラクティスコントロール - AWS Security Hub
次に上記コードをGitHubにコミットして、Terraformを実行します(図7はTerraform実行画面)。ここではPlan(IaCの文法チェック)、CostEstimation(この構成でApplyした場合のクラウド費用見積)、Sentinel(ガバナンスチェック)をパスし、Snyk IaCによるセキュリティチェックでエラーが起きています。
そしてエラー部分のリンクをクリックするとSnyk IaCのUI画面に遷移し、具体的なエラー内容及び、修正方法が表示されます。
このようにSnyk IaCの導入により、クラウドインフラの構築前に脆弱性を修正できます。すなわち、テスト工程を前倒しし、設計段階からセキュリティの考慮を行うことで実装の手戻りを防止する"シフトレフト"を実現します。
さいごに
Terraformはクラウドインフラを自動で素早く、大量に、かつ安全に構築するための機能を提供しています。そこへSnyk IaCの機能を組み合わせると、更にセキュアなクラウドを素早く構築することが可能となります。ぜひみなさんも試してみてください。
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- もっと見る +
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR