GCP - Logging Post Exploitation
基本情報
詳細については以下を確認してください:
GCP - Logging Enum監視を妨害する他の方法については以下を確認してください:
GCP - Monitoring Post Exploitationデフォルトのログ記録
デフォルトでは、読み取りアクションを実行するだけでは捕まりません。詳細についてはLogging Enumセクションを確認してください。
除外されたプリンシパルを追加
https://console.cloud.google.com/iam-admin/audit/allservicesおよびhttps://console.cloud.google.com/iam-admin/auditで、ログを生成しないプリンシパルを追加することが可能です。攻撃者はこれを悪用して捕まるのを防ぐことができます。
ログを読む - logging.logEntries.list
logging.logEntries.list
logging.logs.delete
logging.logs.delete
ログの書き込み - logging.logEntries.create
logging.logEntries.create
logging.buckets.update
logging.buckets.update
logging.buckets.delete
logging.buckets.delete
説明
この権限は、ログバケットを削除するために使用されます。ログバケットは、ログデータを保存するためのコンテナです。この操作を実行するには、適切なIAMロールが必要です。
影響
ログバケットを削除すると、そのバケットに保存されているすべてのログデータが失われます。これにより、監査証跡が消去され、潜在的な不正行為の痕跡が隠される可能性があります。
推奨事項
ログバケットの削除を制限するために、最小権限の原則を適用します。
ログデータのバックアップを定期的に作成し、重要なログが失われないようにします。
logging.buckets.get
logging.buckets.get
説明
この権限は、特定のログバケットのメタデータを取得するために使用されます。メタデータには、バケットの名前、作成日時、保存されているログの種類などが含まれます。
影響
攻撃者がこの権限を持っている場合、ログバケットの構成情報を収集し、さらなる攻撃の計画に利用することができます。
推奨事項
ログバケットのメタデータへのアクセスを制限し、最小権限の原則を適用します。
不要な権限を持つユーザーやサービスアカウントを定期的に監査します。
logging.buckets.list
logging.buckets.list
説明
この権限は、プロジェクト内のすべてのログバケットのリストを取得するために使用されます。
影響
攻撃者がこの権限を持っている場合、プロジェクト内のすべてのログバケットを特定し、どのバケットが最も価値があるかを判断することができます。
推奨事項
ログバケットのリストへのアクセスを制限し、最小権限の原則を適用します。
定期的にアクセス権をレビューし、不要な権限を削除します。
logging.links.delete
logging.links.delete
logging.views.delete
logging.views.delete
ログビューの削除
logging.views.delete
権限を持つユーザーは、ログビューを削除できます。ログビューを削除すると、特定のログに対するアクセスが制限されるため、攻撃者が痕跡を隠すのに役立ちます。
ログビューの削除方法
ログビューのリストを取得: 利用可能なログビューをリストアップします。
ログビューの削除:
gcloud
コマンドを使用して特定のログビューを削除します。
影響と対策
ログビューの削除は、監査ログの可視性を低下させる可能性があります。これを防ぐために、以下の対策を講じることが重要です。
最小権限の原則: 不要な権限を持つユーザーを制限します。
監査ログの監視: ログビューの変更を監視し、異常なアクティビティを検出します。
まとめ
logging.views.delete
権限は強力であり、悪用されると重大なセキュリティリスクを引き起こす可能性があります。適切なアクセス制御と監視を行うことで、これらのリスクを軽減することができます。
logging.views.update
logging.views.update
logging.logMetrics.update
logging.logMetrics.update
logging.logMetrics.delete
logging.logMetrics.delete
ログベースのメトリクスの削除
logging.logMetrics.delete
権限を持つと、攻撃者はログベースのメトリクスを削除できます。これにより、特定のログイベントの追跡を回避することが可能になります。
logging.sinks.delete
logging.sinks.delete
ログシンクの削除
logging.sinks.delete
権限を持つと、攻撃者はログシンクを削除できます。これにより、ログデータの転送を停止させ、監視を回避することが可能になります。
logging.exclusions.create
logging.exclusions.create
ログ除外ルールの作成
logging.exclusions.create
権限を持つと、攻撃者は特定のログエントリを除外するルールを作成できます。これにより、特定のアクティビティがログに記録されないようにすることが可能になります。
logging.exclusions.delete
logging.exclusions.delete
ログ除外ルールの削除
logging.exclusions.delete
権限を持つと、攻撃者は既存のログ除外ルールを削除できます。これにより、以前に除外されていたログエントリが再び記録されるようになります。
logging.logs.delete
logging.logs.delete
ログの削除
logging.logs.delete
権限を持つと、攻撃者は特定のログを完全に削除できます。これにより、特定のアクティビティの痕跡を完全に消すことが可能になります。
logging.logEntries.delete
logging.logEntries.delete
ログエントリの削除
logging.logEntries.delete
権限を持つと、攻撃者は特定のログエントリを削除できます。これにより、特定のアクティビティの痕跡を部分的に消すことが可能になります。
logging.sinks.delete
logging.sinks.delete
logging.sinks.delete
権限を持つユーザーは、ログシンクを削除することができます。ログシンクが削除されると、そのシンクに送信されるはずだったログは失われます。これは、攻撃者が自身の活動を隠すために使用する可能性があります。
logging.sinks.update
logging.sinks.update
logging.sinks.update
権限を持つユーザーは、既存のログシンクを更新することができます。攻撃者はこの権限を利用して、ログを別の場所に送信するようにシンクを変更し、自身の活動を隠すことができます。
logging.sinks.create
logging.sinks.create
logging.sinks.create
権限を持つユーザーは、新しいログシンクを作成することができます。攻撃者はこの権限を利用して、ログを自身が管理する場所に送信する新しいシンクを作成することができます。
logging.logs.delete
logging.logs.delete
logging.logs.delete
権限を持つユーザーは、特定のログエントリを削除することができます。攻撃者はこの権限を利用して、自身の活動に関するログを削除することができます。
logging.logs.update
logging.logs.update
logging.logs.update
権限を持つユーザーは、既存のログエントリを更新することができます。攻撃者はこの権限を利用して、ログエントリを改ざんし、自身の活動を隠すことができます。
logging.logs.create
logging.logs.create
logging.logs.create
権限を持つユーザーは、新しいログエントリを作成することができます。攻撃者はこの権限を利用して、偽のログエントリを作成し、調査を混乱させることができます。
logging.sinks.update
logging.sinks.update
Last updated