2.5 KiB
GCP - Secrets Manager Enum
{{#include ../../../banners/hacktricks-training.md}}
Secret Manager
Google Secret Manager は、パスワード、API キー、証明書、ファイル (最大 64KB) およびその他の機密データを保存するための金庫のようなソリューションです。
シークレットは 異なるデータを保存する異なるバージョンを持つことができます。
シークレットは デフォルトで Google 管理のキーを使用して暗号化されていますが、シークレットを暗号化するために KMS からキーを選択することも可能です。
ローテーションに関しては、日数ごとに pub-sub に送信されるメッセージを構成することが可能で、そのメッセージをリッスンするコードが シークレットをローテートできます。
自動削除のための日を設定することが可能で、指定された日が 到達すると、シークレットは自動的に削除されます。
Enumeration
# First, list the entries
gcloud secrets list
gcloud secrets get-iam-policy <secret_name>
# Then, pull the clear-text of any version of any secret
gcloud secrets versions list <secret_name>
gcloud secrets versions access 1 --secret="<secret_name>"
権限昇格
次のページでは、secretmanagerの権限を悪用して権限を昇格させる方法を確認できます。
{{#ref}} ../gcp-privilege-escalation/gcp-secretmanager-privesc.md {{#endref}}
ポストエクスプロイト
{{#ref}} ../gcp-post-exploitation/gcp-secretmanager-post-exploitation.md {{#endref}}
永続性
{{#ref}} ../gcp-persistence/gcp-secret-manager-persistence.md {{#endref}}
ローテーションの悪用
攻撃者は、ローテーションを停止するためにシークレットを更新したり(変更されないように)、ローテーションをはるかに少なくする(シークレットが変更されないように)ことができます。または、ローテーションメッセージを別のpub/subに公開する、または実行されるローテーションコードを変更することができます(これは別のサービスで発生し、恐らくCloud Function内で、攻撃者はCloud Functionまたは他のサービスに対して特権アクセスを必要とします)。
{{#include ../../../banners/hacktricks-training.md}}