fbpx

パブリッククラウドにおけるインフラの自動修正の実現 #aqua #クラウド #セキュリティ #CSPM

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

本ブログは「Aqua Security」社の技術ブログで2020年7月29日に公開された「 Achieving a Self-Securing Infrastructure in Public Clouds 」の日本語翻訳です。

パブリッククラウドにおけるインフラの自動修正の実現


多くの研究者がセキュリティ侵害を調査する際に注目するのは、共通の要素があるかということです。我々が調査したクラウドセキュリティ侵害のケースの多くは、クラウドインフラストラクチャの設定ミスや管理ミスを悪用したものばかりです。その理由は単純に、トラックすべき設定項目が多すぎるからです。しかし仮にすべての設定をトラックできたとしても、手動で設定を修正するためにかかる時間は膨大となり、セキュリティ侵害にされられる時間も長くなります。

パブリッククラウドの構成問題の修復は、Aqua CSPM の主な使命です。Aqua CSPM の最新リリースでは、より柔軟な改善オプションが追加されており、安全なセキュリティ改善支援・手動での修正・自動化による改善を、顧客が実行できるようになっています。

インフラを設計することは容易ではありません

今日のようにクラウドにおける設定ミスが散見されることは、ある意味クラウドというプラットフォームの利用が増加しているとも言えます。世界的に大規模な導入が進み、急速な進化を続けるため、クラウドプラットフォームにおける専門知識が不足しています。

今日の洗練されたクラウドプラットフォームには、数千種類の構成と数百種類のサービスが含まれています。例えば、2020年時点で AWS はコンピューティング、ストレージ、ネットワーク、データベースなど少なくとも 212 のサービスで構成されています。これら各々のサービスはそれ自体が複雑なサービスであり、多くの異なる構成が考えられるため、これらすべてのオプションを使いこなすことは容易でありません。加えて、継続的なアップデートやベストプラクティスを維持することは、より困難になります。

適切に構成されたインフラストラクチャを維持することを複雑にするもう一つの側面は、クラウドプラットフォームの分散した性質にあります。簡単に権限を委任したり、スコープを設定したりできるため、個々のチームがアジャイルな方法で独立して作業し、インフラストラクチャの一部を自己管理できます 。しかし、様々な優れたオプションを有効化することは、誰がどのように変更を行うかのコントロールが難しくなるという代償を伴います。これは、以前は高度な訓練を受けた Ops チームだけに割り当てられていた設定タスクを、様々なスキルセットを持つ多くの人々が実行できることを意味します。これにより、現在ではクラウドの構成を変更することでもたらされる影響を誤解している人が飛躍的に増えています。

これらの要因により、リスクが発見され次第、すぐに体系的に対応できるシステムが必要とされています。

インフラの自動修正

クラウド運用の世界で必要とされるのは、複雑で動的なクラウド環境で、自己修復可能なインフラストラクチャを実現するツールです。自律的にスキャン・監視・設定ミスの問題を修正し、これらすべてを継続的かつほぼ瞬時に実行できるソリューションが必要です。

このようなニーズを満たすため、Aqua CSPM に自動修正機能を追加する原動力となりましたが、このレベルのソリューションを市場に投入するにはいくつかのハードルを乗り越えなければなりませんでした。

セキュリティモデルの信頼性

まず、誤った設定を修正するには、修正を行うためにクラウドアカウントの書き込み権限が必要になります。また、この修正は多数のクラウドオブジェクトに対して必要となる可能性があるため、従来の CSPM ソリューションでは実質的にすべてのオブジェクトに対して書き込み権限を必要とする可能性がありました。言い換えるならば、これは事実上オーナー権限を第三者に付与することであり、明らかに最小特権アクセスの原則に違反します。

従来のアプローチでは、顧客側で修復を実行するリモートコンポーネントをインストールする必要がありました。これらのリモートエージェントが、オーナーレベルの権限の代理となります。ここでの課題は、エージェント自体のセキュリティとすべてのクラウドアカウントに渡って、これらのオーナー権限を付与したエージェントを展開し、維持する必要があることです。多くの大規模組織にとって、数百以上のクラウドアカウントを管理すること自体が、本当の課題になります。

Aqua CSPMの全てのコンポーネントと同様に、当社の修復機能のセキュリティは最重要になります。そこで私たちは Aqua CSPM がいつ・どのようにして・どのような権限でアカウントに接続するかを完全にコントロールできるセキュリティモデルを開発しました。このモデルでは、アクセスに必要な鍵はローテートされています。鍵は当社が保管することはなく、お客様はリクエストに応じて(手動または自動で)鍵を提供するだけです。設計上、お客様からの明示的なサポートアクションがない限り、当社は修復を実行するためのアクセス権を持ちません。

図1- ポリシーの設定

各種修復機能におけるセキュリティモデルは こちら から確認できます。

自動修正の信頼性

次に、環境(構成)に応じて許容していた設定が自動的に「修正」されることで、不用意に本番環境を混乱させてしまうことを絶対に避ける必要があることを考慮すべきです。「問題」を修正するとき、修正を実装することによって生じる潜在的なリスクを評価する必要がありますが、その際にはアプリ環境全体のことを考慮する必要あります。例えば、パブリックに公開されている Amazon S3 を「発見」したとします。修正すべきでしょうか。機密データを誤って公開しているのでしょうか。それとも S3 はアプリの静的なウェブページを正しくホスティングしているのでしょうか。これを判断するには意図したものなのか、状況を正しく知る必要があります。

図2– 暗号化されていない S3 に対して暗号化することを選択

自動化されたシステムが機能するためには、システムが状況を理解し、それに応じて何をすべきかを決定する必要があります。状況に応じた情報を収集し、問題を修正の可否を判断するためにポリシーを持った分析をするシステムが必要です。組織が自動修復を信頼できるか 100% 確信していない場合は、システムは代わりに疑わしい設定ミスに関するアラートを作成し、半自動修復プロセスに切り替えることもできる必要があります。これは意思決定を人間に任せ、残りの修復プロセスを自動化する手順です。

修復機能の中心にあるのは、ポリシーの概念です。デフォルトでは、Aqua CSPM はあなたのアカウントに対して変更を加えません。アカウントの機能を有効にする際には、明示的に許可を求めます。また機能を有効にするために修正が必要とされたとき、変更を行うための明示的な許可を Aqua に与えるポリシーも定義する必要があります。

図3– Aqua CSPM の修復機能

ポリシーについては こちら から確認できます。

修正内容のトラック

最後に、自動化プロセスを信頼する際に必要なのは、何が変更されたか・なぜ変更されたか・誰が変更を開始したか・必要に応じてこの変更をどのようにロールバックできるか、についての完全な可視性がシステムに含まれていることです。

支援・手動・自動修正のいずれであっても、Aqua CSPM が実行するすべての修正は、誰が修正を開始したかの全体像・変更前のオブジェクトのイメージ・変更を行うために使用された API・変更後のオブジェクトのイメージなどを含めて厳しく記録に残します。さらに、プロセスの各ステップでフェイルセーフが含まれているため、エラーを確実に検出して報告できます。このデータに加えレポートも用意されているので、修正の実施状況や頻度を管理し、組織の継続的な改善のためにこのデータを利用できます。

図4– 修正ステップの例

Aqua CSPM で修正をしましょう

多くのクラウドセキュリティ侵害は設定ミスを悪用した場合が多いので、クラウドネイティブインフラ全体を念頭に置いて変更を実施することをチームに期待するだけでは、持続可能な戦略とは言えません。そのため Aqua CSPM は現在支援・手動・自動修正を提供しています。

このソリューションにはさまざまな状況のニーズに対応できる堅牢なフローが含まれており、セキュリティ上の発見事項ごとに必要とされる自動化レベルのバランスをとることができます。

Aqua CSPM の修正機能の概要についてはこちらをご覧ください。

Get started with Aqua CSPM on Aqua WaveAqua CSPM

New call-to-action

新規CTA