本文へスキップ
質問に戻る

コンテナ・セキュリティとは?

コンテナセキュリティとは、セキュリティツールとポリシーを使用して、インフラ、ソフトウェアサプライチェーン、システムツール、システムライブラリ、ランタイムを含むコンテナ、そのアプリケーション、パフォーマンスをサイバーセキュリティの脅威から保護することです。

コンテナセキュリティの課題とは?

コンテナはエコシステムの中にあり、企業内でスタンドアロンで展開されることはありません。コンテナワークロードは、パブリッククラウド(AWS、GCP、Azure)、プライベートクラウド(VMware)、ハイブリッドクラウドなどのアーキテクチャの一部として展開され、サーバーやVMからなる従来のワークロードと統合され、コンピューティングサイドではサーバーレスコンポーネントと連携して動作する。これらの企業は、S3バケットやRDSなどのインフラストラクチャー・アズ・ア・サービス(IaaS)やプラットフォーム・アズ・ア・サービス(PaaS)サービスも利用しているかもしれません。そのため、コンテナワークロードは、企業のエコシステムの一部として安全性を確保する必要があります。

コンテナはエフェメラル(儚い)です:コンテナのライフサイクルは秒単位で計測されることが多いが、一般化を困難にする高い可変性も存在する。セキュリティチームは、数秒間しかオンラインにならないコンテナと、数週間オンラインになるコンテナのセキュリティと整合性を考慮する必要があります。

コンテナはCI/CD DevOps Pipelinesで構築・デプロイされる。コンテナのワークロードは、開発者主導になる傾向があります。セキュリティの課題は、開発者がBornSecureなアプリケーションを作成できるようにすることです。

クラウドセキュリティポスチャーマネジメント(CSPM)

コンテナ用CSPM

Skyhigh Security は、コンテナ実行時間、オーケストレーションシステム(Kubernetesなど)、コンテナワークロードを実行するIaaSインフラ、ストレージ構成、ネットワーク構成、IAM設定/ロールなどに対するCISベンチマークスキャンやその他のベストプラクティス評価を提供することができます。これは役立ちます:

  • 環境の構成がリスク源にならないようにする(CSPM)。
  • 環境の構成が時間の経過とともに変化し、意図しないリスクにさらされることがないようにすること

コンテナに対する脆弱性スキャニング

コンテナは、サードパーティーのコンポーネントを大幅に活用します。コンテナ構築のすべてのコンポーネントは、既知の弱点や悪用可能な弱点がないか評価する必要があります。

脆弱性スキャンは、ビルド時にコンテナに組み込まれたコンポーネントを評価し、定期的にスキャンすることで、既知のリスクが暴露され、緩和されることを確認し、悪意のある行為者がコンテナのワークロードに上陸するリスクを低減させます。

ナノセグメンテーション

複雑で動的なワークロードの動作を保護するために、既知の良好な構成に基づいてコンテナ間通信を発見する:

  • IPアドレスなどの外的要因に依存しない、コンテナのエフェメラル性に対応できる方法で、コンテナプロセス間のネットワーク通信の挙動を発見し、監視することができる。
  • 異常な通信を検出し、ユーザーの好みに応じて通知またはブロックする。
  • アプリケーションの経年進化に伴うコンテナのバージョン間の通信パターンの変化を検出することができる。
  • ワークロードを保護する方法として、既知の悪い構成に対応するのとは対照的に、既知の良い構成を活用する。

Skyhigh Security コンテナのライフサイクルにマッピングされたソリューション

Skyhigh Security は、開発者がアプリケーションの保守に使用するツールと統合する、シームレスに統合されたセキュリティ・プラットフォームを提供する。コンテナ・セキュリティは、適切に構成されたインフラとオーケストレーション・エンジンの確保、コンテナに埋め込まれたコードの悪用リスクの評価、そして、コンテナ・ワークロードのライフサイクル全体にわたって急速に変化する環境に対応できる、既知の良好なネットワーク動作を認証する柔軟なソフトウェア定義手法によって、綿密な防御を提供することができる。

左遷:DevOpsからDevSecOpsへ。

コンテナは、非常に開発者中心のワークロードである。開発者がアーキテクチャと使用中のサービスをより直接的に制御できるようになったため、セキュリティチームは、ポリシーを確立し、ベストプラクティスに照らしてデプロイメントを評価し、どのような環境でも発生する避けられないドリフトを監視するための非同期的な方法を必要としている。コンテナとマイクロサービス・アーキテクチャでは、変数の数と変化のペースが、以前は厳しく管理されていたハードウェアや VM ベースのデプロイメントから大幅に増加している。コンテナのライフサイクルは秒単位で計測されることが多いが、一般化が潜在的に危険となるような高度な変動性も存在する。セキュリティ・チームは、数秒しかオンラインにならないコンテナもあれば、数週間継続してオンラインになるコンテナもあるため、そのセキュリティと完全性を考慮する必要がある。Skyhigh Security 、以下のようなBornSecure Containersを提供している:

  • クラウド環境を継続的にスキャンし、DevOpsパイプライン(Shift Left)に統合されたドリフトからのリスクを検出し、デプロイされる前にリスクを解決するためのCloud Security Posture Management。
  • コンテナ自体のコンポーネントの脆弱性評価により、企業が既知のエクスプロイトを含むコードをDevOpsパイプラインに統合してデプロイしていないことを確認する(Shift Left)。Skyhigh Security 、コンテナアーティファクトの定期的な再スキャンも含まれ、新しい脆弱性がすでにビルドされ、本番稼動している可能性のあるコンテナに影響した場合に検出する。

従来のDevOpsのプロセス:従来は、アプリケーションが本番環境にデプロイされるまで、セキュリティは考慮されず、検証もされませんでした。

今日、クラウドネイティブアプリケーションにはBornSecure Containersが必要です:セキュリティはDevOpsパイプラインに組み込まれ、アプリケーションの構築時やコードのチェックイン時に、開発者にセキュリティのフィードバックを提供します。

コンテナセキュリティ入門 - 用語集

KSEnterprise Container Platform S/W Suite for Azureはk8sをベースにしています。 Dockerコンテナを使ってアプリケーションの作成、デプロイ、実行を容易にするために設計された企業であり、そのツールの名前。 ナノセグメンテーション観測された挙動に基づく、柔軟できめ細かいセグメンテーション。
異常標準的なもの、正常なもの、予想されるものから逸脱しているもの。 ドリフト既知の良好なコンフィギュレーションからのリスクや逸脱をもたらす可能性のある、長期にわたるコンフィギュレーション変更または管理措置の累積。 ネットワーク攻撃サーフェス攻撃サーフェスとは、攻撃を成功させるために攻撃者が悪用しようとすることができる環境の全体から構成されるもので、すべてのプロトコル、インターフェイス、配備されたソフトウェア、サービスなどが含まれる。
ビルド(Build) 観察可能で具体的な結果を持つものを構築すること。ビルドとは、ソース・コード・ファイルを、コンピュータ上で実行可能なスタンドアロンのソフトウェア成果物に変換するプロセスのことである。 k8sベースのAmazon向けEKSEnterprise Container Platform S/W Suite。 パイプライン開発者やDevOpsのプロフェッショナルが、確実かつ効率的にコードをコンパイル、ビルドし、本番のコンピュート・プラットフォームにデプロイするための自動化された一連のプロセス。
CICD継続的インテグレーションと継続的デリバリーのプラクティスを組み合わせたもの。 ECSEnterprise Container Platform S/W Suite for Amazon は、k8s が広く採用される以前の独自のオーケストレーションを使用している。 特権ユーザーに特定の活動のみを許可する概念。例えば、一般ユーザーは通常オペレーティングシステムのファイルを変更することができないが、システム管理者は通常許可されている。
CISベンチマークコンテナやKubernetesを含むターゲットシステムの安全な設定のためのベストプラクティス。このベンチマークは、CIS(Center for Internet Security)と呼ばれる非営利団体が、サイバーセキュリティの専門家の総意によって開発したものである。 Ephemeralコンテナの定義に使用されるプロパティ。コンテナは平均寿命が数時間と短いため、エフェメラルと呼ばれる。 リポジトリ(repo)コンテナ・イメージのリポジトリは、関連するコンテナ・イメージのコレクションであり、通常は同じアプリケーションやサービスの異なるバージョンを提供する。
コンテナコードとその依存関係をすべてパッケージ化したソフトウェアの標準単位で、あるコンピューティング環境から別の環境へ、アプリケーションを迅速かつ確実に実行できるようにする。コンテナ・イメージは、アプリケーションの実行に必要なすべてのもの(コード、ランタイム、システム・ツール、システム・ライブラリ、設定など)を含む、軽量でスタンドアロンの実行可能なソフトウェア・パッケージである。 指紋押捺 成果物だけでなく、成果物の動作も追跡できるため、ユーザーはビルドに何が使われたか、そのビルドがどこでどのように使われているかを確認できる。

フォレンジックセキュリティ侵害の影響を理解し、食い止めるための事後分析。

左遷セキュリティ設定と脆弱性チェックをDevOpsパイプラインに統合すること。システムが稼動するのを待つのではなく、コードがチェックされたり構築されたりするときにセキュリティが導入される。これにより、セキュリティは、従来セキュリティが行われていた本番環境の左側(前)に配置される。
コンテナ・レジストリ(Container Registry)コンテナ・イメージを保存するためのリポジトリ。コンテナイメージは、アプリケーションをカプセル化した多数のファイルで構成される。開発者、テスター、CI/CDシステムは、アプリケーション開発プロセス中に作成されたイメージを保存するためにレジストリを使用する必要があります。レジストリに置かれたコンテナ・イメージは、開発のさまざまなフェーズで使用できる。 GKE k8sベースのGoogle向けエンタープライズコンテナプラットフォームS/Wスイート。

コンテナの定義に使用される不変のプロパティ。一度作成された個々のコンテナは、ライフサイクルを通じて変化しない。

仮想マシン(VM)物理的なハードウェア・システム上に作成された、独自のCPU、メモリ、ネットワーク・インターフェイス、ストレージを備えた仮想コンピュータ・システムとして機能する仮想環境。ハイパーバイザーと呼ばれるソフトウェアが、マシンのリソースをハードウェアから分離し、VMが使用できるように適切に分配する。
コンテナランタイムノード上でコンテナを実行し、コンテナイメージを管理するソフトウェア。 k8sKubernetesはk8s(K - 8文字 - S)と呼ばれることもある。 ワークロードクラウドインスタンス上で実行したい個別の能力または作業量。
DevOps(デブオプス) ソフトウェア開発(Dev)と情報技術運用(Ops)を組み合わせた一連のプラクティスで、システム開発のライフサイクルを短縮し、高いソフトウェア品質で継続的なデリバリーを提供することを目的としている。 Kubernetes (k8s)オープンソースのコンテナ・オーケストレーション・システム。ホストのクラスタ間でアプリケーションコンテナのデプロイ、スケーリング、運用を自動化するためのプラットフォームを提供する。 ゼロトラストNever Trust But Verify.ゼロ・トラスト・セキュリティとは、ネットワークの内外から誰もデフォルトでは信頼されず、ネットワーク上のリソースにアクセスしようとするすべての人に検証が要求されることを意味する。
DevSecOpsDevSecOpsは、DevOpsプロセスの中にセキュリティの実践を統合する実践である。 マイクロセグメンテーション・マイクロセグメンテーション・ソフトウェアは、ネットワーク仮想化技術を使用して、データセンターやクラウド展開に非常にきめ細かいセキュリティゾーンを作成し、個々のワークロードを分離して個別に保護します。