GCP - API Keys Unauthenticated Enum

Support HackTricks

API Keys

Para más información sobre las API Keys, consulta:

GCP - API Keys Enum

Técnicas OSINT

Las API Keys de Google son ampliamente utilizadas por cualquier tipo de aplicaciones que se ejecutan del lado del cliente. Es común encontrarlas en el código fuente de sitios web o solicitudes de red, en aplicaciones móviles o simplemente buscando expresiones regulares en plataformas como Github.

La expresión regular es: AIza[0-9A-Za-z_-]{35}

Búscalo, por ejemplo, en Github siguiendo: https://github.com/search?q=%2FAIza%5B0-9A-Za-z_-%5D%7B35%7D%2F&type=code&ref=advsearch

Verificar el proyecto GCP de origen - apikeys.keys.lookup

Esto es extremadamente útil para verificar a qué proyecto GCP pertenece una API key que has encontrado:

# If you have permissions
gcloud services api-keys lookup AIzaSyD[...]uE8Y
name: projects/5[...]6/locations/global/keys/28d[...]e0e
parent: projects/5[...]6/locations/global

# If you don't, you can still see the project ID in the error msg
gcloud services api-keys lookup AIzaSy[...]Qbkd_oYE
ERROR: (gcloud.services.api-keys.lookup) PERMISSION_DENIED: Permission 'apikeys.keys.lookup' denied on resource project.
Help Token: ARD_zUaNgNilGTg9oYUnMhfa3foMvL7qspRpBJ-YZog8RLbTjCTBolt_WjQQ3myTaOqu4VnPc5IbA6JrQN83CkGH6nNLum6wS4j1HF_7HiCUBHVN
- '@type': type.googleapis.com/google.rpc.PreconditionFailure
violations:
- subject: ?error_code=110002&service=cloudresourcemanager.googleapis.com&permission=serviceusage.apiKeys.getProjectForKey&resource=projects/89123452509
type: googleapis.com
- '@type': type.googleapis.com/google.rpc.ErrorInfo
domain: apikeys.googleapis.com
metadata:
permission: serviceusage.apiKeys.getProjectForKey
resource: projects/89123452509
service: cloudresourcemanager.googleapis.com
reason: AUTH_PERMISSION_DENIED

Fuerza Bruta en endpoints de API

Como puede que no sepas qué APIs están habilitadas en el proyecto, sería interesante ejecutar la herramienta https://github.com/ozguralp/gmapsapiscanner y verificar a qué puedes acceder con la clave de API.

Support HackTricks

Last updated