GCP - Pub/Sub Enum

Apprenez et pratiquez le piratage AWS :Formation HackTricks AWS Red Team Expert (ARTE) Apprenez et pratiquez le piratage GCP : Formation HackTricks GCP Red Team Expert (GRTE)

Soutenez HackTricks

Pub/Sub

Google Cloud Pub/Sub est décrit comme un service facilitant l'échange de messages entre des applications indépendantes. Les composants principaux incluent des sujets auxquels les applications peuvent s'abonner. Les applications abonnées ont la capacité d'envoyer et de recevoir des messages. Chaque message comprend le contenu réel ainsi que des métadonnées associées.

Le sujet est la file d'attente où les messages vont être envoyés, tandis que les abonnements sont les objets que les utilisateurs vont utiliser pour accéder aux messages dans les sujets. Il peut y avoir plus d'1 abonnement par sujet et il existe 4 types d'abonnements :

  • Tirer (Pull) : L'utilisateur(s) de cet abonnement doit tirer pour les messages.

  • Pousser (Push) : Une URL de point de terminaison est indiquée et les messages seront envoyés immédiatement à celle-ci.

  • Table BigQuery : Comme Push mais en plaçant les messages dans une table BigQuery.

  • Stockage Cloud : Livrer les messages directement à un bucket existant.

Par défaut, un abonnement expire après 31 jours, bien qu'il puisse être défini pour ne jamais expirer.

Par défaut, un message est conservé pendant 7 jours, mais ce délai peut être augmenté jusqu'à 31 jours. De plus, s'il n'est pas ACKed en 10 secondes, il retourne à la file d'attente. Il peut également être défini que les messages ACKed doivent continuer à être stockés.

Un sujet est par défaut chiffré à l'aide d'une clé de chiffrement gérée par Google. Mais une CMEK (Customer Managed Encryption Key) de KMS peut également être sélectionnée.

Boîte aux lettres morte (Dead letter) : Les abonnements peuvent configurer un nombre maximal de tentatives de remise. Lorsqu'un message ne peut pas être livré, il est republié sur le sujet de la boîte aux lettres morte spécifié.

Instantanés & Schémas

Un instantané est une fonctionnalité qui capture l'état d'un abonnement à un moment spécifique. C'est essentiellement une sauvegarde cohérente des messages non reconnus dans un abonnement. En créant un instantané, vous préservez l'état de reconnaissance des messages de l'abonnement, vous permettant de reprendre la consommation de messages à partir du moment où l'instantané a été pris, même après que les messages originaux auraient été autrement supprimés. Si vous avez beaucoup de chance, un instantané pourrait contenir des informations sensibles anciennes à partir du moment où l'instantané a été pris.

Lors de la création d'un sujet, vous pouvez indiquer que les messages du sujet doivent suivre un schéma.

Énumération

# Get a list of topics in the project
gcloud pubsub topics list
gcloud pubsub topics describe <topic>
gcloud pubsub topics list-subscriptions <topic>
gcloud pubsub topics get-iam-policy <topic>

# Get a list of subscriptions across all topics
gcloud pubsub subscriptions list
gcloud pubsub subscriptions describe <subscription>
gcloud pubsub subscriptions get-iam-policy <subscription>

# Get list of schemas
gcloud pubsub schemas list
gcloud pubsub schemas describe <schema>
gcloud pubsub schemas list-revisions <schema>

# Get list of snapshots
gcloud pubsub snapshots list
gcloud pubsub snapshots describe <snapshot>

Cependant, vous pourriez obtenir de meilleurs résultats en demandant un ensemble de données plus large, y compris des messages plus anciens. Cela nécessite certaines conditions préalables et pourrait avoir un impact sur les applications, alors assurez-vous de savoir vraiment ce que vous faites.

Élévation de privilèges et Post-exploitation

GCP - Pub/Sub Post Exploitation

Pub/Sub Lite

Pub/Sub Lite est un service de messagerie avec un stockage zonal. Pub/Sub Lite coûte une fraction de Pub/Sub et est destiné aux pipelines de streaming à haut volume (jusqu'à 10 millions de messages par seconde) et aux systèmes pilotés par événements où le coût réduit est la considération principale.

Dans PubSub Lite, il y a des sujets et des abonnements, il n'y a pas de instantanés et de schémas et il y a :

  • Réservations : Les réservations Pub/Sub Lite sont une fonctionnalité qui permet aux utilisateurs de réserver de la capacité dans une région spécifique pour leurs flux de messages.

  • Opérations : Fait référence aux actions et tâches impliquées dans la gestion et l'administration de Pub/Sub Lite.

Énumération

# lite-topics
gcloud pubsub lite-topics list
gcloud pubsub lite-topics describe <topic>
gcloud pubsub lite-topics list-subscriptions <topic>

# lite-subscriptions
gcloud pubsub lite-subscriptions list
gcloud pubsub lite-subscriptions describe <subscription>

# lite-reservations
gcloud pubsub lite-reservations list
gcloud pubsub lite-reservations describe <topic>
gcloud pubsub lite-reservations list-topics <topic>

# lite-operations
gcloud pubsub lite-operations list
gcloud pubsub lite-operations describe <topic>

Apprenez et pratiquez le piratage AWS :Formation HackTricks AWS Red Team Expert (ARTE) Apprenez et pratiquez le piratage GCP : Formation HackTricks GCP Red Team Expert (GRTE)

Soutenez HackTricks

Last updated