GCP - Storage Post Exploitation
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
Cloud Storage
Cloud Storage の詳細については次のページを参照してください:
パブリックアクセスを付与する
外部ユーザー(GCPにログインしているかどうかに関係なく)にバケットのコンテンツへのアクセスを許可することが可能です。ただし、デフォルトではバケットは公開設定にするオプションが無効になっています:
# Disable public prevention
gcloud storage buckets update gs://BUCKET_NAME --no-public-access-prevention
# Make all objects in a bucket public
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=allUsers --role=roles/storage.objectViewer
## I don't think you can make specific objects public just with IAM
# Make a bucket or object public (via ACL)
gcloud storage buckets update gs://BUCKET_NAME --add-acl-grant=entity=AllUsers,role=READER
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME --add-acl-grant=entity=AllUsers,role=READER
もし ACLs to a bucket with disabled ACLs を与えようとすると、次のエラーが発生します: ERROR: HTTPError 400: Cannot use ACL API to update bucket policy when uniform bucket-level access is enabled. Read more at https://cloud.google.com/storage/docs/uniform-bucket-level-access
ブラウザから公開された bucket にアクセスするには、URL https://<bucket_name>.storage.googleapis.com/ または https://<bucket_name>.storage.googleapis.com/<object_name> にアクセスしてください。
storage.objects.delete (storage.objects.get)
オブジェクトを削除するには:
gcloud storage rm gs://<BUCKET_NAME>/<OBJECT_NAME> --project=<PROJECT_ID>
storage.buckets.delete, storage.objects.delete & storage.objects.list
バケットを削除するには:
gcloud storage rm -r gs://<BUCKET_NAME>
HMAC Keys を無効化
storage.hmacKeys.update permission は HMAC keys を無効化することを許可し、storage.hmacKeys.delete permission は Cloud Storage の service accounts に関連付けられた HMAC keys を identity が削除できるようにします。
# Deactivate
gcloud storage hmac update <ACCESS_ID> --deactivate
# Delete
gcloud storage hmac delete <ACCESS_ID>
storage.buckets.setIpFilter & storage.buckets.update
storage.buckets.setIpFilter と storage.buckets.update の権限があれば、アイデンティティは Cloud Storage バケットの IP アドレスフィルタを設定でき、どの IP 範囲またはアドレスがバケットのリソースにアクセスできるかを指定できます。
IP フィルタを完全にクリアするには、次のコマンドを使用できます:
gcloud storage buckets update gs://<BUCKET_NAME> --project=<PROJECT_ID>
フィルタリングされた IP を変更するには、次のコマンドを使用できます:
gcloud storage buckets update gs://<BUCKET_NAME> \
--ip-filter-file=ip-filter.json \
--project=<PROJECT_ID>
JSON ファイルはフィルタ自体を表しており、次のようなものです:
{
"mode": "Enabled",
"publicNetworkSource": {
"allowedIpCidrRanges": ["<IP>/<MASK>"]
},
"allowCrossOrgVpcs": false,
"allowAllServiceAgentAccess": false
}
storage.buckets.restore
次を使用してバケットを復元する:
gcloud storage restore gs://<BUCKET_NAME>#<GENERATION> \
--project=<PROJECT_ID>
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
HackTricks Cloud

