クラウドネイティブアプリケーション保護プラットフォーム(CNAPP)は、2021年にガートナー社が提唱しました。クラウドネイティブアプリケーションのセキュリティ保護のために複数ベンダーのセキュリティ製品を使用することは、開発スピードの遅延、運用負荷の増大、そしてセキュリティのサイロ化に繋がってしまうため、マルチクラウドに対応した保護プラットフォームを使用することを推奨しています。
パブリッククラウドはコスト効率、可用性と信頼性、スケーラビリティなど企業のビジネスイノベーションを促進するための技術やツールを迅速に導入・実験できるため、年々利用が増加していますが、一方で、クラウド環境の設定ミスや非推奨設定の適用、またはインターネット上に公開したWebサーバの脆弱性を悪用したサイバー攻撃による情報漏洩などの重大なインシデント発生数が増加しているのも事実です。
2024年上半期に公表された被害の傾向で特徴的な点の1つとして、クラウド環境への侵害事例が過去に比べて多いことが判明しています。
設定ミスや非推奨設定の適用、または脆弱性対策が行われていない理由を、いくつか挙げてみます。
このようにパブリッククラウド特有のサービスの種類の豊富さ、リリースサイクルの速さなど、クラウドの知識や運用するスキルを習得していないと発生するセキュリティの課題について考慮しなければなりません。そこで、この課題を解決する手段として、近年注目されているのが「CNAPP」と呼ばれるセキュリティ製品です。
CNAPPは大きく以下5つの構成要素を含んだ対策が求められます。
① Container Scan
② CWPP(Cloud Workload Protection Platforms)
③ CSPM(Cloud Security Posture Management)
④ CIEM(Cloud Infrastructure Entitlement Management)
⑤ IaC(Infrastructure as Code)Scan
CNAPPを構成する要素
ここからはひとつひとつの構成要素について詳しく説明します。
クラウドネイティブ環境におけるコンテナのセキュリティを確保するために以下の機能を提供しています。
DevOpsのフェーズにおけるContainer Scanの機能差異
1. 静的スキャン
静的スキャンはコンテナイメージが実行される前に行われるスキャンです。
主に脆弱性の検出、マルウェアの検出、コンプライアンスチェック、設定ミスの検出、シークレットの検出を実行します。
2. 動的スキャン
コンテナの実行環境では、使用しているアプリケーションやライブラリの脆弱性が新たに発見される可能性があるため、コンテナ作成時のみでなく、コンテナサービスを継続している期間中もスキャンを実施する必要があります。主にランタイムの脅威検出、脆弱性のリアルタイム検出、ポリシー違反の検出、不審な動作の検出を実行します。
CWPPはクラウドワークロードを中心とした監視と保護のセキュリティソリューションを意味します。クラウドワークロードとは、クラウド上の仮想マシン、データベース、コンテナ、ストレージ、アプリケーション等を指します。
CWPPは以下の8つの保護戦略で定められています。
1. ハードニング、コンフィグレーション、脆弱性管理:
ハードニングとは、クラウド環境やワークロードのセキュリティを強化するために、システムやアプリケーションのアタックサーフェス(攻撃対象領域)を最小限に抑える一連のプロセスや対策を指します。ここでは、主に脆弱性を修正して攻撃に耐えられる堅牢な状態にする工程を指します。
2. ネットワークファイアウォール、可視化、マイクロセグメンテーション:
ネットワークトラフィックを細かく制御し、ワークロード間の通信を制御することで脆弱性が悪用された場合の被害を最小限に抑えます。
3. システム完全性保証:
クラウドシステムが設定したとおりに動作していることを確認します。
4. アプリケーション制御と許可リスト:
アプリケーションの許可リストに基づき、アプリケーションの許可とブロックを行います。
5. エクスプロイトの防止:
ワークロード上で動作動作しているソフトウェアやアプリケーション、OSなどの脆弱性を悪用した攻撃を防止します。
6. サーバ・ワークロードのEDR(Endpoint Detection and Response)、挙動監視:
サーバとアプリケーションの疑わしい挙動や、攻撃者による侵入後の認証情報の窃取、ラテラルムーブメントなどアクティブな脅威に対応します。
7. ホストベースのIPS/IDSによる侵入防止:
単一障害点にならないホストベースの対策として侵入検知と防止機能を提供し、サーバへの外部からの侵入をリアルタイムで検知・防止します。
8. マルウェア対策スキャン:
クラウドワークロードに埋め込まれたマルウェアを検出します。
CWPPを構成する保護戦略
(ガートナーの文献を参考にトレンドマイクロが作成)
クラウドサービスのセキュリティの設定状況を可視化、定期的にチェックし、不適切な設定やコンプライアンス違反、脆弱性がないかをチェック、アドバイスするソリューションです。
CSPMは、API(Application Programming Interface)経由であらかじめ決めたチェックルールを用いて、利用者側のクラウドの設定状況を確認し、問題がないかを判断します。
CSPMは一般的に以下4つの項目を満たしています。
1. パブリッククラウドの利用状況とリスクを可視化
IaaSやPaaSに構築されているシステムが、どのように設定されているかを、ダッシュボードなどの画面を用いて可視化します。脆弱性やアクセス設定状況、機密データの管理状況についても確認することが可能です。
2. マルチクラウドを一元管理
AWS、Microsoft Azure、Google Cloudなど複数のクラウド事業者の環境に対応し、異なるクラウドサービスを一元的に管理します。
3. 設定不備の検知、ベストプラクティスの提案
クラウド環境の設定不備を検知し、アラートによりセキュリティ担当者に通知します。担当者にベストプラクティスを提案して改善に向けて支援します。
4. 国際基準にもとづくコンプライアンスチェック
あらかじめ設定した会社のポリシーや、GDPR、HIPPA、PCI DSSなどクラウド利用に関する国際基準にもとづくコンプライアンスのチェックが可能です。ポリシー違反がないか、導入したクラウドサービスの安全性が保たれているかを効率的に、そして定期的に確認することができます。
CSPMのソリューションイメージ
クラウド環境の権限を管理し、権限侵害によるセキュリティ被害を防止するソリューションです。
クラウド環境には様々な権限があり、管理が煩雑になると、利用されていないアカウントが残り続けていることや、管理者権限を多数付与しているなどの課題が生じます。
CIEMはこのような課題を解決するため、クラウド環境に存在する権限を可視化し、過剰な権限を付与していればその修復を行って、最小権限の付与を実現する機能を提供しています。
以下3点がCIEMに求められる機能です。
1. 権限の可視化
一元化されたダッシュボードから複数パブリッククラウドのアカウントの権限を管理し、適切な権限を付与できるようにするために必要不可欠な機能です。
2. ポリシー準拠状況監視
権限を割り当てる際、所属している部署のポリシーに基づいて付与されることが一般的ですが、付与した後も適切な権限が割り当てられているか継続的に監視し、ポリシーから逸脱していないか確認できる機能もCIEMに求められます。
具体的な機能としては、パブリッククラウド上で割り当てられている権限の状況を常時監視し、逸脱している権限があれば即時アラートをあげる、というような機能です。
3. 不必要な権限のはく奪
利用しているクラウド環境で過剰な権限を付与している場合や、未使用なアカウントが放置されていた場合に、修復して最小権限を付与できるようにする機能もCIEMに求められます。
これを実現するための具体的な機能は以下の通りです。
A)過剰に付与された異常な権限に対して、最小権限となるように自動修復を実施する。
B)過剰に付与された異常な権限を修復するために、設定の推奨手順を表示し、手動で設定変更する。
Aのメリットは、異常を検知したら即時自動修復し、リスクを瞬時に取り除くことです。しかし、権限をはく奪したがゆえに他のシステムに影響を与え、作業ができなくなる可能性があります。
そのような懸念を払拭したい場合、B)の機能を利用します。
Bのメリットは、異常の内容を確認し他のシステムに影響がないかを鑑みたうえで、推奨手順に従って設定を変更することができます。
CIEMのソリューションイメージ
IaCとは、インフラの設計書をコードとして表したものです。コードでインフラの設定を記載しておき、それを実行することで、自動的にインストールや各種設定を行います。あらかじめ設定した「インフラ構成管理ツール」でOSやミドルウェアのインストール、その際のユーザ名・パスワードのコードを記述および実行します。
IaCを利用することで環境構築作業を自動化できます。一方で、バージョン管理をしていくことも重要です。バージョン管理をする対象は、インフラを構築するコードと、インフラ上で動作するアプリケーションです。
これらのバージョンがIaCによって管理されていることで、環境を一式再現することが容易になり、インフラのバージョンを上げたことで、アプリケーションが動作しないという事態にも対応できるようになります。
レイヤー毎のソリューション
クラウドを利用する企業にとって、下記の観点からCNAPPはクラウドネイティブな環境におけるセキュリティの強化と管理の効率化において重要な役割を果たします。
1. 統合的セキュリティ管理:
クラウドネイティブなアプリケーションの開発から運用まで、一貫したセキュリティ管理を提供し、セキュリティギャップを減少します。
2. 自動化された脅威検出と対応:
リアルタイムで脅威を検出し、自動的に対応することで、セキュリティインシデントの影響を最小限に抑えます。
3. コンプライアンスの維持:
各種法規制や業界標準に準拠するための機能を提供し、コンプライアンスの維持を支援します。
4. 可視性の向上:
クラウド環境全体の可視性を高め、潜在的な脆弱性やリスクを迅速に把握できます。
5. シフトレフトアプローチ:
開発プロセスの早い段階でセキュリティを組み込み、セキュリティ問題の早期発見と修正を促します。
6. スケーラビリティ:
クラウドネイティブな特性を活かし、スケーラブルなセキュリティ対策を提供、ビジネスの成長に合わせたセキュリティ強化が可能になります。
7. 運用効率の向上:
セキュリティ運用を自動化・簡素化し、セキュリティチームの負担を軽減し、運用効率を向上させます。