権限昇格: AlloyDB の過剰な権限付与

このドキュメントでは、Security Command Center の脅威の検出結果のタイプについて説明します。脅威の検出結果は、クラウド リソースで潜在的な脅威が検出されたときに、脅威検出機能によって生成されます。脅威の検出結果の完全なリストについては、脅威の検出結果のインデックスをご覧ください。

概要

AlloyDB for PostgreSQL データベースに対するすべての権限(またはデータベース内のすべての関数またはプロシージャ)が 1 人以上のデータベース ユーザーに付与されています。

対処方法

この検出結果の対処方法は次のとおりです。

ステップ 1: 検出結果の詳細を確認する

  1. 検出結果の確認の説明に従って、Privilege Escalation: AlloyDB Over-Privileged Grant の検出結果を開きます。
  2. 検出結果の詳細パネルの [概要] タブで、次のセクションの情報を確認します。

    • 検出された内容(特に次のフィールド):
      • データベース表示名: 影響を受けた AlloyDB for PostgreSQL インスタンスのデータベース名。
      • データベースのユーザー名: 過剰な権限を付与した PostgreSQL ユーザー。
      • データベース クエリ: 実行され、権限が付与された PostgreSQL クエリ。
      • データベース譲受人: 過剰な権限の譲受人。
    • 影響を受けているリソース(特に次のフィールド):
      • リソースの完全な名前: 影響を受けた AlloyDB for PostgreSQL インスタンスのリソース名。
      • 親の完全な名前: AlloyDB for PostgreSQL インスタンスのリソース名。
      • プロジェクトの完全な名前: AlloyDB for PostgreSQL インスタンスを含む Google Cloud プロジェクト。
    • 関連リンク(特に次のフィールド):
      • Cloud Logging URI: Logging エントリへのリンク。
      • MITRE ATT&CK 方式: MITRE ATT&CK ドキュメントへのリンク。
  3. 検出結果の完全な JSON を表示するには、[JSON] タブをクリックします。

ステップ 2: データベース権限を確認する

  1. AlloyDB for PostgreSQL インスタンスに接続します。
  2. 次のアクセス権限を一覧表示します。
    • データベース。\l または \list メタコマンドを使用して、[データベース表示名] にあるデータベース(ステップ 1 を参照)に割り当てられた権限を確認します。
    • 関数またはプロシージャ。\df メタコマンドを使用して、[データベース表示名] にあるデータベース(ステップ 1 を参照)内の関数またはプロシージャに割り当てられている権限を確認します。

ステップ 3: ログを確認する

  1. Google Cloud コンソールで、Cloud Logging の URI のリンク(ステップ 1 を参照)をクリックして、[ログ エクスプローラ] に移動します。[ログ エクスプローラ] ページに、該当する Cloud SQL インスタンスに関するすべてのログが表示されます。
  2. [ログ エクスプローラ] で次のフィルタを使用して、データベースに対して実行されたクエリを記録する、PostgreSQL pgaudit ログを確認します。
    • protoPayload.request.database="var class="edit">database"

ステップ 4: 攻撃とレスポンスの手法を調査する

  1. この検出結果タイプに対応する MITRE ATT&CK フレームワーク エントリ(Exfiltration Over Web Service)を確認します。
  2. 追加の修復手順が必要かどうかを判断するために、調査結果を MITRE の調査と組み合わせます。

ステップ 5: レスポンスを実装する

次の対応計画は、この検出結果に適切な場合もありますが、運用に影響する可能性もあります。調査で収集した情報を慎重に評価して、検出結果を解決する最適な方法を判断してください。

  • 過剰な権限が付与されたインスタンスのオーナーに連絡してください。
  • 調査が完了するまでは、[データベース譲受人] に含まれる譲受人のすべての権限を取り消すことをおすすめします。
  • データベース(ステップ 1 の [データベースの表示名])へのアクセスを制限するには譲受人(ステップ 1 の [データベース譲受人])から不要な権限を取り消します。

次のステップ