GCP_HAS_SERVICE_ACCOUNT_KEY
Summary
Description
Identification
gcloud CLI
# List all user-managed keys for a specific service account
PROJECT_ID="my-project"
SA_EMAIL="sa@$PROJECT_ID.iam.gserviceaccount.com"
gcloud iam service-accounts keys list \
--iam-account=$SA_EMAIL \
--managed-by=user \
--project=$PROJECT_ID \
--format="table(name.basename(), validAfterTime, validBeforeTime, keyAlgorithm)"
# Find all SAs in a project that have user-managed keys
for SA in $(gcloud iam service-accounts list --project=$PROJECT_ID --format="value(email)"); do
KEYS=$(gcloud iam service-accounts keys list --iam-account=$SA --managed-by=user --project=$PROJECT_ID --format="value(name)" 2>/dev/null)
if [ ! -z "$KEYS" ]; then
echo "SA with user-managed keys: $SA"
echo "$KEYS"
fi
doneGCP Console
Exploitation
gcloud CLI
Mitigation
Detection
References
Last updated
Was this helpful?