# GCP - API Keys Enum

{{#include ../../../banners/hacktricks-training.md}}

## 基本情報

Google Cloud Platform (GCP) では、API キーは **プリンシパルなしでアプリケーションを識別する** シンプルな暗号化された文字列です。これは、ユーザーコンテキストを必要としない **Google Cloud APIs** にアクセスするために使用されます。つまり、アプリケーションがユーザーデータではなく自分のデータにアクセスするシナリオでよく使用されます。

### 制限

API キーに **制限を適用する** ことで、セキュリティを強化できます。たとえば、特定の **IP アドレス、ウェブ、Android アプリ、iOS アプリ** のみで使用されるようにキーを制限したり、GCP 内の **特定の API やサービス** に制限したりできます。

### 列挙

API キーの **制限を確認する** ことが可能です（GCP API エンドポイントの制限を含む）。動詞リストまたは describe を使用します:
```bash
gcloud services api-keys list
gcloud services api-keys describe <key-uuid>
gcloud services api-keys list --show-deleted
```
> [!NOTE]
> 削除されたキーは30日が経過する前に復元可能であるため、削除されたキーをリストすることができます。

### 権限昇格とポストエクスプロイト

{{#ref}}
../gcp-privilege-escalation/gcp-apikeys-privesc.md
{{#endref}}

### 認証なしの列挙

{{#ref}}
../gcp-unauthenticated-enum-and-access/gcp-api-keys-unauthenticated-enum.md
{{#endref}}

### 永続性

{{#ref}}
../gcp-persistence/gcp-api-keys-persistence.md
{{#endref}}

{{#include ../../../banners/hacktricks-training.md}}
