Google Cloud のログベースのセキュリティ アラート: Cloud Identity での攻撃の検出
Google Cloud Japan Team
※この投稿は米国時間 2020 年 8 月 7 日に、Google Cloud blog に投稿されたものの抄訳です。
オンプレミス モデルからクラウドベース モデルに移行することで、ワークロードのロギングと保護のための新たな機会がもたらされます。
このブログ投稿のシリーズでは、Google Cloud でセキュリティの脅威を検出し、ログに関するアラートを生成するために使用可能なクラウドネイティブ テクノロジーについて説明します。その最終結果は、Google Cloud Platform(GCP)のエンドツーエンドのログベースのセキュリティ アラート パイプラインとなります。まず、管理コンソールで Cloud Identity ログのアラートを見ていきます。
Cloud Identity
お客様は Cloud Identity を使用して、Google Cloud デプロイメント全体でユーザーをプロビジョニング、管理、認証します。Cloud Identity は、組織内のユーザーが Google ID を取得する方法であり、この ID で Google Cloud リソースへのアクセスを許可されます。
それでは次の仮定について考えてみてください。もし不正なユーザーが Cloud Identity で管理者アクセス権を取得し、ユーザーを Google グループに追加し始めたらどうなるでしょうか?そして、それらのグループのいずれかに GCP 内の特権的なアクセス権が割り当てられたらどうなるでしょうか?Cloud Identity ログは、こうした状況を可視化し、認証と認可ベースの攻撃に対する最初の防御線として機能します。
Cloud Identity ログ
Cloud Identity ログは、GCP 環境に直接影響する可能性のあるイベントを追跡します。関連するログには、次のようなものがあります。
- 管理監査ログ: Google 管理コンソールで実行されたアクションを追跡します。たとえば、管理者がいつドメインにユーザーを追加したか、いつ設定を変更したかを確認できます。
- ログイン監査ログ: ユーザーがいつドメインにログインしたかを追跡します。
- グループ監査ログ: Google グループのグループ設定とグループ メンバーシップへの変更を追跡します。
- OAuth トークン監査ログ: サードパーティ アプリケーションの使用状況とデータ アクセス リクエストを追跡します。
- SAML 監査ログ(G Suite、Cloud Identity Premium のみ): SAML アプリケーションへのユーザーのログイン成功とログイン失敗を確認します。
各ログエントリの中心的な情報はイベント名と説明です。Cloud Identity のログは、デプロイメントで発生する多数の事前定義された「イベント」を追跡します。たとえば、ログイン監査ログは「ログイン失敗」や「不審なログイン」イベントを追跡します。ログイン失敗は、ユーザーがログインに失敗するたびに記録されます。不審なログインは、ユーザーが見慣れない IP アドレスを使用するなどの不審な状況でログインした場合に記録されます。Cloud Identity が追跡するイベントの数は非常に多く、それらのイベントは、管理コンソールの [レポート] > [監査ログ] セクションで確認できます。
Cloud Identity でアラートを設定する
脅威を検出し、悪意のあるアクティビティにタイムリーに対応するために、Cloud Identity ログのイベントについてアラートを生成できます。最初に行うべき防御は、管理コンソールでアラートを設定することです。アラートを作成するとき、このアラートがトリガーされたときにメールを受信するフィルタと受信者のリストを指定します。それでは、役立つアラートをいくつか見てみましょう。
例 1: ログイン イベントのアラート
たとえば、このシナリオでは、ユーザーが Google 認証情報を盗まれたことに気付かず、悪意のある人物がそれを使用して企業ネットワークの外部からそのユーザーとしてログインしようとしているとします。Cloud Identity は、このユーザーが見慣れない IP アドレスからログインしようとしていることを確認し、不審なログイン イベントとしてログに記録します。ユーザー アカウントが侵害された場合に対処できるように、この状況に対するアラートを作成しましょう。
管理コンソールの [レポート] > [監査ログ] セクションで、アラートを作成するログのタイプを選択します。ログイン監査ログを表示したら、「不審なログイン」イベント名を含むログのフィルタを作成します。
コンソールの右上にあるベル型のボタンを押すと、アラートを作成できます。このアラートがトリガーされるたびにメール通知を受ける受信者のリストを指定します。この例では、不審なログインがあった場合に「security@example.com」にメールアラートが届きます。通知されたユーザーは、セキュリティ上の問題を軽減するためのアクションを取ることができます。
同じ方法で、他のログイン監査イベントのアラートを作成できます。たとえば、「パスワードの漏洩」イベントタイプは、認証情報の侵害が検出され、パスワードのリセットが必要な場合にログに記録されます。また、政府が支援する攻撃イベントタイプは、政府が支援する攻撃者がユーザー アカウントを侵害しようとしたと Google が判断した場合に記録されます。こうしたイベントやその他のイベントに関するアラートは、ログイン関連のセキュリティの脅威を認識して対処するために役立ちます。
例 2: グループの変更に関するアラート
Google Cloud を利用している企業のお客様は、まずユーザーをグループに割り当て、次にそれらのグループを IAM ロールのメンバーとしてリストすることにより、IAM 権限を処理することをおすすめします。このように、Google Cloud アクセスのデプロビジョニングは、Cloud Identity のグループからユーザーを削除するのと同じくらい簡単です。
もちろん、IAM 権限のデプロビジョニングがユーザーをグループから削除するのと同じくらい簡単であるのと同様に、アクセスのプロビジョニングもユーザーをグループに追加するのと同じくらい簡単です。これが危険をもたらす可能性があるのは、悪意のあるユーザーが GCP で広範囲にわたる特権的なアクセス権を持つグループに追加される場合です。
設定に応じて、Cloud Identity のグループにユーザーを追加できる 4 つのロールがあります。
- 特権管理者(管理コンソールを通じて)
- グループ管理者(管理コンソールを通じて)
- グループ オーナー(Google グループを通じて)
- グループ マネージャー(Google グループを通じて)
Cloud Identity ログを使用してこのようなリスクを軽減する方法を、シナリオを使用して説明します。ボブは、A 社のセキュリティ リーダーです。Cloud Identity の特権管理者は、ボブを Google グループ「security-admin@example.com」のグループ マネージャーとして割り当てました。つまり、ボブはチームのメンバーをこのグループに追加したりこのグループから削除したりすることができます。このグループには GCP で強力なロールが割り当てられていて、セキュリティに関する強力な管理アクションを取ることができます。
たとえば、なんらかの方法で、悪意のある人物がボブの認証情報にアクセスし、ボブとしてログインして、勝手にユーザーをセキュリティ管理者グループに追加し始めたとします。そうすると、その不正なユーザーたちはすべて GCP 組織で特権的なアクセス権を保持することになります。これは良くありません。
ボブのようなシナリオの影響を緩和するには、管理コンソールでグループ メンバーシップの変更に関するアラートを設定する必要があります。Google グループのグループ管理者または管理コンソールの管理者が変更を加えた場合にトリガーするようにアラートを設定できます。
Google グループで行われたグループのアクションを監査するには、管理コンソールの [レポート] > [監査ログ] > [グループ] セクションに移動します。ここで、グループに対して実施されたアクションの監査ログを確認できます。次に、「グループへのユーザーの追加」イベント名でフィルタし、グループ名を指定できます。たとえば、「security-admin@example.com」のような機密性の高いグループです。
その後、このログが表示されたときに受信者の静的リストが自動的にメールで送信されるようにレポートルールを作成できます。
新しいレポートルールの詳細は、管理コンソールの [セキュリティ] > [ルール] > [セキュリティ管理者グループの変更] で確認できます。
Google グループだけが、グループにユーザーを追加する方法ではありません。管理者は管理コンソール内でもこれを行うことができ、これは管理者監査ログで追跡されます。グループ監査ログのイベントに基づいてトリガーするアラートを作成したときと同じように、管理者監査ログでグループ関連のイベントをフィルタできます。
次のステップ
Cloud Identity ログは、セキュリティ アラートに使用できるさまざまなイベントの追跡に役立ちます。組織でこのようなログを認識したら、ユースケースに適したアラートについて検討できます。たとえば、Cloud Identity で設定を構成するときに、特定の Cloud Identity 設定が変更されたことを管理者監査ログが示した場合にアラートを生成することで、設定を確実に維持することができます。
管理コンソールで Cloud Identity ログにアラートを設定することは、より安全な Google Cloud デプロイメントに向けた適切な第一歩です。しかしながら、組み込みの管理コンソール機能で許可されている範囲内でしかこれを行えません。このシリーズの次の投稿では、Cloud Identity ログを GCP の Cloud Logging に取り込み、他の GCP ログと同じように分析、エクスポート、保存できるようにする方法について説明します。これにより、さらに詳細な Cloud Identity ログ分析とアラートが可能になります。