本文の内容は、2021年10月27日にVicente Herrera Garcíaが投稿したブログ(https://sysdig.com/blog/ciem-security-sysdig-secure/)を元に日本語に翻訳・再構成した内容となっております。
CIEMセキュリティとは何でしょうか?Sysdig Secure for cloudを使えばいかに簡単に導入できるかをご紹介します。
クラウドサービスの設定ミスによるセキュリティ問題で最も多いのが、アカウントやロールの過剰な権限設定です。最小限の権限を実装することは、データ漏洩のリスクを回避または軽減し、権限の昇格やラテラルムーブメントを抑制するための重要なベストプラクティスです。
この記事では、以下のことを行います。
- なぜこれが問題なのかを説明します。
- CIEMのセキュリティが回避しようとする危険な状況の例をいくつか紹介します。
- クラウド・インフラストラクチャー・エンタイトルメント・マネジメント(CIEM)カテゴリのツールを紹介します。

なぜIAMの設定ミスは大問題なのか?
AWS Identity and Access Management(IAM)は、AWSのサービスやリソースへのアクセスを安全に管理できる機能です。IAMを使用すると、AWSユーザーやグループを作成して詳細に管理し、パーミッションを使用してAWSリソースへのアクセスを許可または拒否することができます。IAMの内容からして、このサービスがインフラの一部として注目すべきものであることは容易に理解できるでしょう。このサービスの設定を誤ると、ユーザーやグループがインフラに大きなダメージを与える可能性があります。
クラウド環境ではパーミッションの粒度が細かいため、CIEMのセキュリティは最小権限の概念を適用する上で重要です。ユーザーがアクションを実行するのに必要なものを慎重に与えることは、絶対に基本です。権限の設定を間違えただけで、攻撃者が環境内の権限を拡大してしまう可能性があります。
しかし、クラウド事業者がサービスや機能を次々と追加していく中で、最小特権の設定を正確に把握することが難しくなっています。
多くの場合、開発者は例や文書に頼り、非常に広範な権限を与えられ、その設定の後にコードが本番に入ることになります。
CIEMセキュリティでカバーされる問題の例
以下のコンポーネントを持つ小さなシナリオを考えてみましょう。- EC2インスタンス
- Apacheサーバー
- S3バケットに複数の読み取り操作を行う
そのため、権限を付与する際には、サービスにワイルドカードを使用しないことを検討する必要があります。
クラウドプロバイダーがサービスをどんどん追加していくと、自分が何も知らないものに対してパーミッションを与えることになり、そのユーザーやロールがパーミッションを持つことが間違っている可能性があります。
たとえば、すべての
"*"
に対する読み取り専用のパーミッションをあるユーザーに与えることは、無害に思えるかもしれません。ユーザーは物事を変えることができませんからね。さて… AWS Systems Manager (SSM) には、読み取り専用でアクセス可能な
ssm:DescribeParameters
メソッドがあり、パラメータとして格納されているシークレットを読み取るのに使用できることがわかりました🤯。これはAWSが推奨するシークレットの読み方であり、完全に理にかなっています。もう1つのよくある状況は、長く使われていない認証情報を取り消していないことです。
もしかしたら、タイムスコーピングされたタスクのためにパーミッションが付与されていて、タスクが完了した後に管理者がそれを失効させるのを忘れていたのかもしれません。また、ある開発者がシステムから削除されずに会社を去ったかもしれません。また、これらのユーザーのコンピュータが侵害され、そのアクセスが悪意のある目的に使用された可能性もあります。
未使用の認証情報を長期間放置しないことで、これらの事態を防ぐことができます。
IAMの脆弱性や弱点は、NISTでは追跡されておらず、CVEも付与されていないため、脆弱性スキャンでは分析されないことを覚えておいてください。すべてのIAMポリシー、ユーザー、ロールがベスト・プラクティスに従っていることを確認し、過度に許可された安全でない状況を回避するのは、あなた次第です。
CIEMセキュリティツール
このような状況を管理するために、Cloud Infrastructure Entitlements Management (CIEM)と呼ばれるサブカテゴリのツールがあります。これらのツールは、より一般的なカテゴリーであるCSPM(Cloud Infrastructure Security Posture)に属しており、過剰な権限を持つアカウントやロール、未使用の権限、未使用のアカウントを探すことに特化しています。これらのIAMの弱点のいくつかを手作業でチェックすることは可能ですが、アクセスガバナンス制御のためにクラウドのアカウント全体の分析を自動化することで、アイデンティティのライフサイクル全体で常に良好な状態を保つことができます。そして、セキュリティに関連するあらゆる活動と同様に:
「自動化は、DevOpsのスピードとアジリティを維持するための鍵となります」。
CIEMセキュリティを導入することで、過剰なエンタイトルメントによるパブリッククラウドでのデータ漏洩のリスクを軽減することができます。

Sysdig Secureが実現するCIEMセキュリティの仕組み
Sysdig Secure for cloudは、お客様のアカウントで実行されたすべてのクラウドコマンドの監査ログを分析し、それらをポリシー、ロール、ユーザーと関連付けます。脅威検知機能を使用する場合、Sysdig Secureはすでにクラウドコマンドの全ストリームを調査しています。特定のコマンドがアウトオブボックスのFalcoルールのいずれかのトリガーになっているかどうかを常にチェックすることで、Sysdigは資産をより脆弱にするような設定ミスや変更を検出します。
CIEMセキュリティを追加することで、これらのコマンドがすべて処理され、ユーザ、ロール、ポリシーのパーミッション使用状況のプロファイルが作成されます。
このようにしてSysdigは、実際のパーミッションの使用状況や、クレデンシャルが悪用された場合のリスクにつながる過剰なパーミッションの状況を可視化します。
ポスチャーの項目にあるCIEM機能にアクセスすると、一般的なダッシュボードで以下の内容が通知されます:
- 与えられたパーミッションと使用されたパーミッションの合計
- アクティブでないユーザーの数と、削除を検討すべきユーザー
- ポリシーごとのパーミッションの平均値とユーザごとのポリシーの平均値
- 使用されていないパーミッションが最も多いポリシー、ユーザー、およびロール

ダッシュボードでは、すべてのIAMポリシーとパーミッションを俯瞰して見ることができ、最小権限のクラウド環境を実現することが容易となります。
最も関連性が高いのは、ポリシーが持つ未使用のパーミッションの割合です。

また、使用されていても付与されているパーミッションの数が多いポリシーをチェックすると、過剰なパーミッションのリスクを減らすためにそれらのポリシーを分割した方が良いという指標になるかもしれません。

また、一目見ただけで、どのポリシーにワイルドカードのリソースやアクションの指定が含まれているかがわかります。これは、許容範囲が広すぎるという意味でのバッドプラクティスであるだけでなく、これらのポリシーの影響を受ける新しいタイプのリソースやアクションが、気づかないうちにクラウドプロバイダーによって追加される可能性があるからだ。
同じポリシーを共有しているユーザーの数を確認することで、誰にも割り当てられていないポリシーを整理したり、ほとんどのユーザーが割り当てているポリシーに特に注意したりするのに役立ちます。

ポリシーをクリックすると、その権限の正確な詳細が表示され、使用されていることが確認されたものだけが表示された提案バージョンを入手できます。
提案されたポリシーがユースケースに十分なパーミッションをカバーしているかどうか、適用前に確認してください。


また、ユーザーとロールに焦点を当てて閲覧することもできます。
このリストでは、以下の項目を確認することができます。
- 自分に直接割り当てられた未使用のパーミッション
- パーミッションとポリシーの合計数
また、Last Active Date欄では、長い間ログインしていないユーザーを知ることができるので、保護されていない古い環境に住んでいる場合は、認証情報が乗っ取られるのを防ぐために、削除を検討する必要があります。

ユーザーをクリックすると、そのユーザーが持っているすべてのアタッチされたポリシーと、ポリシーごとにグループ化された与えられたパーミッションと未使用のパーミッションの数を確認することができます。

まとめ
Sysdig Secure DevOps Platformは、コンテナ、Kubernetes、クラウドを自信を持って運用するために必要な可視性を提供します。オープンソースのスタックをベースにSaaS型で提供されるため、運用や拡張が非常に簡単です。わずか数分で設定が完了します。今すぐお試しください!