GCP - Pub/Sub Enum

Erlernen Sie das Hacken von AWS von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Pub/Sub

Google Cloud Pub/Sub wird als Dienst beschrieben, der den Austausch von Nachrichten zwischen unabhängigen Anwendungen erleichtert. Die Kernkomponenten umfassen Themen, denen Anwendungen abonnieren können. Abonnierte Anwendungen haben die Möglichkeit, Nachrichten zu senden und zu empfangen. Jede Nachricht besteht aus dem tatsächlichen Inhalt sowie zugehörigen Metadaten.

Das Thema ist die Warteschlange, in die Nachrichten gesendet werden, während die Abonnements die Objekte sind, die Benutzer verwenden, um Nachrichten in den Themen abzurufen. Es kann mehr als 1 Abonnement pro Thema geben, und es gibt 4 Arten von Abonnements:

  • Pull: Der/die Benutzer dieses Abonnements muss/müssen nach Nachrichten suchen.

  • Push: Es wird ein URL-Endpunkt angegeben, und Nachrichten werden sofort dorthin gesendet.

  • BigQuery-Tabelle: Ähnlich wie Push, aber die Nachrichten werden in einer BigQuery-Tabelle gespeichert.

  • Cloud Storage: Nachrichten werden direkt an einen vorhandenen Bucket gesendet.

Standardmäßig läuft ein Abonnement nach 31 Tagen ab, obwohl es auf "nie ablaufen" eingestellt werden kann.

Standardmäßig wird eine Nachricht 7 Tage lang aufbewahrt, aber diese Zeit kann auf bis zu 31 Tage verlängert werden. Wenn sie nicht innerhalb von 10 Sekunden bestätigt (ACKed) wird, wird sie wieder in die Warteschlange gestellt. Es kann auch festgelegt werden, dass bestätigte Nachrichten weiterhin gespeichert werden sollen.

Ein Thema wird standardmäßig mit einem von Google verwalteten Verschlüsselungsschlüssel verschlüsselt. Es kann jedoch auch ein CMEK (Kundenverwalteter Verschlüsselungsschlüssel) von KMS ausgewählt werden.

Dead Letter: Abonnements können eine maximale Anzahl von Zustellungsversuchen konfigurieren. Wenn eine Nachricht nicht zugestellt werden kann, wird sie an das angegebene Dead Letter-Thema weitergeleitet.

Snapshots & Schemas

Ein Snapshot ist eine Funktion, die den Zustand eines Abonnements zu einem bestimmten Zeitpunkt erfasst. Es handelt sich im Wesentlichen um ein konsistentes Backup der nicht bestätigten Nachrichten in einem Abonnement. Durch das Erstellen eines Snapshots bewahren Sie den Nachrichtenbestätigungsstatus des Abonnements, sodass Sie die Nachrichtenkonsumption ab dem Zeitpunkt des Snapshots fortsetzen können, auch nachdem die Originalnachrichten gelöscht worden wären. Wenn Sie sehr viel Glück haben, könnte ein Snapshot alte sensible Informationen enthalten, die zum Zeitpunkt des Snapshots vorhanden waren.

Beim Erstellen eines Themas können Sie angeben, dass die Themenachrichten einem Schema folgen müssen.

Aufzählung

# 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>

Jedoch könnten Sie bessere Ergebnisse erzielen, indem Sie um einen größeren Datensatz bitten, einschließlich älterer Nachrichten. Dies erfordert einige Voraussetzungen und könnte sich auf Anwendungen auswirken, daher stellen Sie sicher, dass Sie wirklich wissen, was Sie tun.

Privilege Escalation & Post Exploitation

pageGCP - Pub/Sub Post Exploitation

Pub/Sub Lite

Pub/Sub Lite ist ein Messaging-Dienst mit zonaler Speicherung. Pub/Sub Lite kostet nur einen Bruchteil von Pub/Sub und ist für hochvolumige Streaming-Pipelines und ereignisgesteuerte Systeme gedacht, bei denen niedrige Kosten im Vordergrund stehen.

In PubSub Lite gibt es Themen und Abonnements, es gibt keine Snapshots und Schemas, und es gibt:

  • Reservierungen: Pub/Sub Lite Reservierungen ist eine Funktion, die es Benutzern ermöglicht, Kapazitäten in einer bestimmten Region für ihre Nachrichtenströme zu reservieren.

  • Operationen: Bezieht sich auf die Aktionen und Aufgaben im Zusammenhang mit der Verwaltung und Administration von Pub/Sub Lite.

Enumeration

# 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>
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated