fbpx

Aqua KSPMを用いたKubernetesにおける最小特権の評価と実施 #aqua #コンテナ #セキュリティ #kubernetes #k8s #KSPM

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

本ブログは「Aqua Security」社の技術ブログで2020年12月8日に公開された「 Evaluating and Enforcing Least Privilege in Kubernetes with Aqua KSPM 」の日本語翻訳です。

Aqua KSPMを用いたKubernetesにおける最小特権の評価と実施


ServiceAccount などの Role や Kubernetes の Subject に関連付けられた、過度に権限が付与されたデフォルト設定は、Kubernetes の攻撃リスクを高めます。また、Kubernetes 環境でこれらのリスクを手動で理解し最小権限を行使しようとすると、時間がかかる上に、ヒューマンエラーが発生しやすくなります。Kubernetes Security Posture Management(KSPM)を導入することで、Role と Subject の権限を効果的に監視、評価、修正するためのベストプラクティスとコントロールが提供されます。

Kubernetes クラスタに対するチームのアクセス要件やセキュリティ要件、それに運用効率のバランスをどのように取るかという判断に直面することがよくありますが、このような場合、多くは Kubernetes クラスタが1つだけで構成されています。これはコンテキストに沿った権限設定が複雑であることと、RBAC ポリシーの正しい実装に関する DevOps チームやセキュリティチームの知識が不足していることが原因です。その結果、Kubernetes の Subject(人間であるかどうかに関わらず)や Role の数が増加している大規模な環境では、すぐに制御不能に陥る可能性があります。

この課題を解決するために、Aqua KSPM には Kubernetes リスク管理のイノベーターである Apolicy との統合に基づいた、全く新しいコントロールが含まれています。これらのコントロールは、リスクのランク付けに加えて、ベストプラクティスに基づいた改善策を提示し推奨します。

Kubernetes環境におけるRBACリスクの評価

Aqua の新しい Aqua Kubernetes Roles & Subjects Assessment 機能(Apolicyベース)は、構成や使用状況/アクティビティを含む Kubernetes 環境内の Kubernetes RBAC データを継続的に監視・収集します。この結果から、Role と Subject がどのように定義され使用されているかの正確な状況モデルを構築することが、まず第一段階となります。

このモデルは、Kubernetes クラスタ内における RBAC の状態について、これまでにない可視性を提供します。Aqua UI 画面に組み込まれたこの新しいリスクモデリングと評価コントロールにより、Kubernetes 環境を明確に把握でき、以下のような緊急対応が必要な差し迫った問題をハイライトできます。

  • 過剰な権限に起因するセキュリティリスク
  • 業界標準のベンチマークへの違反
  • リスクのあるアクセスが行う Subject(ServiceAccount など)
  • 危険なワークロードへのアクセス設定
  • 安全でないクラスタアクセス設定

問題が特定されると、Kubernetes の設定のセキュリティ状態の概要をユーザに提供します。その目的は Kubernetes の管理者が問題を正確に特定できるよう支援することと、問題の原因となっている特定の設定や役割の定義を明確にすることです。アイデンティティとアクセスポリシーの変更は、サービスの混乱を避けるために慎重に分析する必要があるため、モデルには意思決定プロセスをサポートするためのデータも含まれています。

より良く、より迅速な修復

アプリケーションやクラスタ間でポリシーを再利用する機能を維持しながら、異なるアプリケーション毎に異なるポリシーを割り当てるための柔軟なフレームワークを提供します。このフレームワークには、一般的なコンプライアンス要件や業界標準を含む、すぐに使えるポリシーとナレッジベースが含まれています。これを使用することで、アプリケーションに既製のポリシーを迅速に割り当て、必要に応じてポリシーをニーズに合わせてカスタマイズできます。

この柔軟なモデルは、技術的なコントロールを再利用する機能を提供し、DevOps、セキュリティ、コンプライアンスの各チーム間の連携を促進します。さらに、(Open Policy Agent上でビルドされた)Rego言語により記述されクラウドネイティブ環境全体に移植可能な Apolicy コントロールを活用して、Kubernetes クラスタ内のユーザと Subject のパーミッションと権限を評価します。この方法なら、手動での調査と修正に何時間、何日もかかる複雑なマルチステップのシナリオと比較し、アイデンティティとアクセスの問題を迅速に解決できます。特定のユーザとプロセスのセットにフィルタリングし、Kubernetes クラスタに潜むセキュリティリスクを明らかにできます。

Kubernetesの最小特権アクセスを実行

Kubernetes クラスタが保持しているすべての Role を表示すると、チェックする必要のある膨大な数の Role に圧倒されてしまいがちです。

危険なオブジェクトを公開するために各 Role を分析することは非常に時間のかかる作業になるでしょう。しかし、過度に権限を与えられた Role だけに注意を向けることで、6つの Role だけで優先順位をつけることができます。

次に、これらの Role に関連付けられたリソースの詳細を取得するためにドリルダウンし、特定のコンプライアンス規則に関連する違反を取得できます。

新しいレベルの可視性とガバナンス

Kubernetes のアイデンティティとアクセスの面は、そのセキュリティとコンプライアンスの重要な部分です。Apolicy が提供する機能で強化された Kubernetes Roles & Subjects Assessment を使用することで、組織は Kubernetes 環境における最小特権アクセスを確保しながら、各ユーザに対して適切なレベルの特権を維持できます。

DevOps チームはポリシーに基づいた自動化により、リスク管理とコンプライアンスを自動化できます。これにより、設定が不十分なアクセスコントロールの供給量が無限にありそうなものを手作業で追跡することなく、環境の改善に優先順位をつけられます。Role と Subject(ServiceAccount、Kubernetes のリソースへのアクセスなど)の権限をすばやく調べ、ベストプラクティスに対するリスクを評価できます。またリスクを軽減し、コンプライアンス規則に合わせるために必要な修正手順を Aqua UI 画面から直接確認できます。

Kubernetes クラスタ構成の安全性を容易に確保でき、攻撃対象の理解と軽減、最小権限のアクセスとベストプラクティスの適用、ヒューマンエラーの回避、リスクの特定と修正、業界標準へのコンプライアンス証明が可能になります。

Aqua KSPM (Kubernetes Security Posture Management)に関する詳細は こちら をご参照ください。

New call-to-action

New call-to-action
新規CTA