|
コンテナとKubernetesは、セキュリティに新たな独自の視点をもたらしました。これにより、チームは従来のセキュリティ戦略を再考するようになり、単純化されたウォーターフォール型のアプローチから脱却し、セキュリティ業務の事後対応的な性質を克服することを目指しています。 この傾向を「シフトレフト」の考え方と呼ぶ人もいます。これは、ソフトウェア開発ライフサイクル、つまりCI/CDパイプラインのできるだけ早い段階で安全対策を講じることを意味します。同様に重要なのは、このシフトは自動化に大きく依存することになるため、深刻な問題が発生するまで対応策を講じるのではなく、早期かつ頻繁に問題を検出し、修正する必要があるということです。 この抜本的な変革において、コンテナ化とオーケストレーション ツールを組み合わせることで、セキュリティとコンプライアンスの向上に役立ちます。 Stackroxの共同創業者兼最高戦略責任者であるWei Lien Dang氏は、「Kubernetesのようなプラットフォームの最大の利点の一つは、セキュリティとコンプライアンスの分野で高度な自動化を実現し、構成機能を大幅に強化できることです。これらの自動化されたプロセスとツールにより、ITチームはKubernetes環境のセキュリティ状況と全体的なリスクをいつでもどこでも正確に測定できるようになります」と述べています。 左シフト思考アプローチは、セキュリティ戦略の実装にも役立ち、コンプライアンスの向上にも役立ちます。ダン氏は、「戦略の実行は、CI/CDパイプライン、デプロイメント中、運用中など、さまざまなチェックポイントに分散できます。また、オーケストレーションツールは、実際の要件に基づいて優れたスケーラビリティと信頼性を提供します」と説明しています。 以下では、コンテナ化とオーケストレーション ツールを通じてセキュリティ/コンプライアンスの自動化を改善するための 3 つの主要な方法を説明します。 優れた構成監視機能があることを確認する自動化は、セキュリティとコンプライアンスを確保するための重要な手段となっています。具体的なユースケースとしては、プライベートレジストリに保存されているコンテナイメージとそのセキュリティポリシーの自動管理、ビルドプロセスや継続的インテグレーションプロセスへの自動セキュリティテストの組み込みなどが挙げられます。 Kubernetesには、ロールベースのアクセス制御、名前空間など、豊富なセキュリティ機能が備わっています。しかし、前述の通り、デフォルト設定に盲目的に依存することは推奨されません。Aqua Securityの戦略担当バイスプレジデントであるRani Osnat氏は、「Kubernetesは多数の設定とオプションを備えた複雑なシステムです。これらの中にはセキュリティ上の脆弱性が含まれている可能性があり、未設定のままにしておくと重大なリスクをもたらす可能性があります」と述べています。 これらの機能を適切に設定することによってのみ、コンテナとオーケストレーションツールを活用してセキュリティとコンプライアンスを自動化できます。このようなユースケースでは、Red Hat OpenShiftなどのオープンソースプロジェクトに基づいて構築された商用プラットフォームが大きなメリットをもたらすことがよくあります。 Dang 氏はまた、「このようにして、クラスター レベル、名前空間レベル、デプロイメント/サービス レベル、ポッド レベルなど、Kubernetes のすべてのレベルでセキュリティのベスト プラクティスを自動的に適用できます」と指摘しました。 自動化メカニズムを通じて検出とポリシー実行機能を向上させる多くの人が既に慣れ親しんでいる宣言型の自動化されたインフラストラクチャ運用手法と同様に、セキュリティ分野でも同様のアプローチを採用できます。前述のように、これらはコンテナセキュリティとKubernetesセキュリティの両方において同様に不可欠です。 Dang 氏は、「これらの環境では、宣言型 API を使用した操作、インフラストラクチャ構成中のセキュリティ設定の有効化、アプリケーションの構築および展開プロセス全体にわたる継続的なセキュリティの提供が重視されています」と述べています。 つまり、「コードベースの管理モデル」がセキュリティ分野と融合することになります。 NeuVectorのCTO、グレイ・ドゥアン氏は、「Kubernetesのコンプライアンスとセキュリティを自動化したい企業は、セキュリティ戦略(コード)と行動学習(機械学習)を可能な限り組み合わせるべきです。この技術戦略は、セキュリティにおける『シフトレフト』の考え方をサポートし、アプリケーション開発の早い段階でワークロードセキュリティ戦略を導入し、生産プロセス全体を通して環境保護を実現するのに役立ちます」と考えています。 Duan氏は、セキュリティとコンプライアンスの分野における「すべき」例をいくつか挙げました。中でも特に顕著だったのは、実行時にセキュリティ脆弱性スキャンを自動実行することです。Duan氏は、「Kubernetesのコンプライアンスとセキュリティ自動化を実装する際には、実行時に脆弱性スキャンを実行する必要があります。コンテナのスキャンだけでなく、ホストやKubernetes自体のスキャンも必要です」と述べています。 2つ目のポイントは、自動ネットワークセグメンテーションです。実際、ネットワークセグメンテーションは一部の業界では必須のコンプライアンス要件であり、強制適用する必要があります。 コンプライアンス報告の整理と管理を迫られる企業はますます増えており、自動化されたネットワークセグメンテーションは、多くの業界のコンプライアンス標準において主流になりつつあります。例えば、決済処理を管理するためのPCI DSSセキュリティ標準では、カード会員データ環境の内外のトラフィック間にネットワークセグメンテーションとファイアウォールを設置することが義務付けられています。ドゥアン氏は、コンテナ化された環境における新たな脅威への対応として、ファイアウォールルールを手動で調整するだけでは不十分だと考えています。「だからこそ、多くの規制では、ビジネス環境において自動化されたランタイムスキャンとコンプライアンスチェックが当然求められているのです。」 Kubernetesオペレーターは、セキュリティ自動化の分野における新興ツールです。Red Hatのセキュリティストラテジスト、Kirsten Newcomer氏は次のように述べています。「Kubernetesオペレーターの最も優れた点は、Kubernetes自体を管理できることです。これにより、セキュアなデプロイメントの提供と自動化が容易になります。例えば、オペレーターは構成のドリフトを効率的に管理し、Kubernetesの宣言型メカニズムを使用してサポートされていない構成をリセットおよび変更できます。」 ベンチマークに基づいた継続的なテストと自動テストシステムの構築。適切な構成であっても、コンテナ化されたワークロードとそれらが実行されるインフラストラクチャは、設計どおりに静的ではないことを忘れてはなりません。これらの環境は非常に動的であるため、セキュリティは継続的な対策として取り組む必要があります。 Dang 氏は、「コンプライアンス チェックも自動化できます。これが、現在の環境がさまざまなベンチマークや業界標準に準拠しているかどうかを正確に評価する唯一の方法だからです」と述べています。 セキュリティとコンプライアンスの観点から、Kubernetes環境におけるチェック(および再チェック)のための最もよく知られた標準規格の一つは、CIS Kubernetesベンチマークです。これは、セットアップとセキュリティ設定に関する約200のベストプラクティスを含む無料のリストです。 このチェックリストは体系的かつ包括的ですが、企業が要件に応じて動的な環境を定期的に手動でチェックすることはほぼ不可能です。幸いなことに、このタスクを効率的に自動化できるツールが市場に出回っています。 Aquaのkube-benchは、CIS Kubernetesベンチマークに基づいて環境を自動チェックする無料のオープンソースツールです。実際、CISガイドラインは運用上の重要な前提条件となっており、Red Hat OpenShift Container Platform 4では、そのガイドラインに基づいてユーザー向けのパートナーツールを厳選しています。kube-benchを活用することで、企業はセキュリティ状況を継続的に監視し、クラスターがコンプライアンス要件から逸脱していないことを確認できます。 NeuVector は、ベスト プラクティスに基づいて Kubernetes のインストールを自動的にチェックできる無料のオープン ソース スクリプトのセットも提供します。 また、Aqua からは、既知の脆弱性に基づいてクラスターへの模擬攻撃を開始できるオープンソース ツール kube-hunter も提供されます。 Osnat氏は次のように指摘しています。「CISベンチマークが個々の設定とそれらが全体的なセキュリティ体制に与える影響に焦点を当てているのに対し、kube-hunterは、数十種類の既知の攻撃ベクトルを用いてクラスターに侵入テストを実行することで、セキュリティを補完します。クラスターへの攻撃をシミュレートし、クラスターが様々な既知の攻撃手法に耐えられるかどうかを検証します。また、発見されたセキュリティ上の脆弱性を迅速に修正できるよう、設定変更に関する提案も提供します。」 最後に、オープンソース陣営に新たなメンバーが加わりました。Kubernetes インストール用のセキュリティ ツールキットである Starboard も Aqua から出ています。 Osnat氏は次のようにまとめています。「Starboardは、脆弱性スキャンツール、ワークロード監査ツール、ベンチマークなど、さまざまなツールをKubernetesエクスペリエンスに統合することを目指しています。Kubernetes CRD(カスタムリソース定義)をベースとしており、Kubernetes API経由でアクセスできます。kubectl(KubernetesのネイティブCLI)を使い慣れたユーザーは、Starboardからセキュリティ情報を簡単に取得し、それに応じてプログラミングすることで、自動化をさらに強化できます。」 |