GCP - Logging Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
このサービスは、ユーザーがGCPからのログデータとイベントを保存、検索、分析、監視、アラートを行うことを可能にします。
Cloud Loggingは他のGCPサービスと完全に統合されており、すべてのGCPリソースからのログの集中リポジトリを提供します。さまざまなGCPサービス(App Engine、Compute Engine、Cloud Functionsなど)からログを自動的に収集します。また、Cloud LoggingエージェントやAPIを使用することで、オンプレミスや他のクラウドで実行されているアプリケーションにもCloud Loggingを使用できます。
主な機能:
ログデータの集中管理: 様々なソースからのログデータを集約し、アプリケーションとインフラストラクチャの全体像を提供します。
リアルタイムログ管理: 即時分析と応答のためにログをリアルタイムでストリーミングします。
強力なデータ分析: 高度なフィルタリングと検索機能を使用して、大量のログデータを迅速に処理します。
BigQueryとの統合: 詳細な分析とクエリのためにログをBigQueryにエクスポートします。
ログベースのメトリクス: 監視とアラートのためにログデータからカスタムメトリクスを作成します。
基本的に、シンクとログベースのメトリクスは、ログがどこに保存されるべきかを決定します。
Cloud Loggingは多様な運用ニーズに合わせて高度に構成可能です:
ログバケット(ウェブ上のログストレージ): Cloud Loggingでバケットを定義してログ保持を管理し、ログエントリがどのくらいの期間保持されるかを制御します。
デフォルトで、バケット_Default
と_Required
が作成されます(片方はもう片方が記録していないものを記録しています)。
_Requiredは:
データの保持期間はバケットごとに設定され、少なくとも1日でなければなりません。ただし、_Requiredの保持期間は400日であり、変更することはできません。
ログバケットはCloud Storageに表示されません。
ログシンク(ウェブのログルーター): フィルターに基づいて、Pub/Sub、BigQuery、またはCloud Storageなどのさまざまな宛先にログエントリをエクスポートするためのシンクを作成します。
デフォルトでは、バケット\_Default
と\_Required
のためのシンクが作成されます:
_Required logging.googleapis.com/projects//locations/global/buckets/_Required LOG_ID("cloudaudit.googleapis.com/activity") OR LOG_ID("externalaudit.googleapis.com/activity") OR LOG_ID("cloudaudit.googleapis.com/system_event") OR LOG_ID("externalaudit.googleapis.com/system_event") OR LOG_ID("cloudaudit.googleapis.com/access_transparency") OR LOG_ID("externalaudit.googleapis.com/access_transparency") _Default logging.googleapis.com/projects//locations/global/buckets/_Default NOT LOG_ID("cloudaudit.googleapis.com/activity") AND NOT LOG_ID("externalaudit.googleapis.com/activity") AND NOT LOG_ID("cloudaudit.googleapis.com/system_event") AND NOT LOG_ID("externalaudit.googleapis.com/system_event") AND NOT LOG_ID("cloudaudit.googleapis.com/access_transparency") AND NOT LOG_ID("externalaudit.googleapis.com/access_transparency")
デフォルトでは、Admin Write 操作(Admin Activity 監査ログとも呼ばれる)が記録され(メタデータや構成情報を書き込む)、無効にすることはできません。
その後、ユーザーは Data Access 監査ログ を有効にできます。これには Admin Read、Data Write、Data Write が含まれます。
各ログタイプの詳細については、ドキュメントを参照してください: https://cloud.google.com/iam/docs/audit-logging
ただし、これはデフォルトで GetIamPolicy
アクションやその他の読み取りアクションが 記録されていない ことを意味します。したがって、デフォルトでは、環境を列挙しようとする攻撃者は、システム管理者がより多くのログを生成するように設定していなければ、捕まることはありません。
コンソールでより多くのログを有効にするには、システム管理者は https://console.cloud.google.com/iam-admin/audit にアクセスし、それらを有効にする必要があります。2つの異なるオプションがあります:
デフォルト構成: デフォルト構成を作成し、すべての Admin Read および/または Data Read および/または Data Write ログを記録し、免除されたプリンシパルを追加することが可能です:
サービスを選択: または、ログを生成したいサービスとその特定のサービスのログの種類および免除されたプリンシパルを選択することができます。
また、デフォルトではこれらのログのみが生成されていることに注意してください。より多くのログを生成するとコストが増加します。
gcloud
コマンドラインツールは GCP エコシステムの不可欠な部分であり、リソースやサービスを管理することができます。gcloud
を使用してログ設定を管理し、ログにアクセスする方法は次のとおりです。
**cloudresourcemanager
**のログを確認する例(権限をブルーフォースするために使用されるもの): https://console.cloud.google.com/logs/query;query=protoPayload.serviceName%3D%22cloudresourcemanager.googleapis.com%22;summaryFields=:false:32:beginning;cursorTimestamp=2024-01-20T00:07:14.482809Z;startTime=2024-01-01T11:12:26.062Z;endTime=2024-02-02T17:12:26.062Z?authuser=2&project=digital-bonfire-410512
**testIamPermissions
**のログはありません:
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する: HackTricks Training GCP Red Team Expert (GRTE)