GCP - Pub/Sub Post Exploitation
Pub/Sub
Für weitere Informationen über Pub/Sub siehe die folgende Seite:
GCP - Pub/Sub Enumpubsub.topics.publish
pubsub.topics.publish
Veröffentliche eine Nachricht in einem Thema, nützlich, um unerwartete Daten zu senden und unerwartete Funktionen auszulösen oder Schwachstellen auszunutzen:
pubsub.topics.detachSubscription
pubsub.topics.detachSubscription
Nützlich, um zu verhindern, dass ein Abonnement Nachrichten empfängt, möglicherweise um eine Entdeckung zu vermeiden.
pubsub.topics.delete
pubsub.topics.delete
Nützlich, um zu verhindern, dass ein Abonnement Nachrichten empfängt, möglicherweise um eine Erkennung zu vermeiden. Es ist möglich, ein Thema zu löschen, selbst wenn Abonnements daran angehängt sind.
pubsub.topics.update
pubsub.topics.update
Verwenden Sie diese Berechtigung, um einige Einstellungen des Themas zu ändern und es zu stören, wie --clear-schema-settings
, --message-retention-duration
, --message-storage-policy-allowed-regions
, --schema
, --schema-project
, --topic-encryption-key
...
pubsub.topics.setIamPolicy
pubsub.topics.setIamPolicy
Geben Sie sich selbst die Berechtigung, um eine der vorherigen Angriffe durchzuführen.
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)Holen Sie sich alle Nachrichten auf einem Webserver:
Erstellen Sie ein Abonnement und verwenden Sie es, um Nachrichten abzurufen:
pubsub.subscriptions.delete
pubsub.subscriptions.delete
Löschen eines Abonnements könnte nützlich sein, um ein Log-Verarbeitungssystem oder etwas Ähnliches zu stören:
pubsub.subscriptions.update
pubsub.subscriptions.update
Verwenden Sie diese Berechtigung, um einige Einstellungen zu aktualisieren, damit Nachrichten an einem Ort gespeichert werden, auf den Sie zugreifen können (URL, Big Query-Tabelle, Bucket) oder um sie einfach zu stören.
pubsub.subscriptions.setIamPolicy
pubsub.subscriptions.setIamPolicy
Geben Sie sich selbst die benötigten Berechtigungen, um eine der zuvor genannten Angriffe durchzuführen.
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)Einen Schema an ein Topic anhängen, sodass die Nachrichten es nicht erfüllen und daher das Topic gestört wird. Falls keine Schemas vorhanden sind, müssen Sie möglicherweise eines erstellen.
pubsub.schemas.delete
pubsub.schemas.delete
Dies könnte so aussehen, als ob das Löschen eines Schemas es Ihnen ermöglichen würde, Nachrichten zu senden, die nicht dem Schema entsprechen. Da das Schema jedoch gelöscht wird, wird tatsächlich keine Nachricht in das Thema gelangen. Das ist also NUTZLOS:
pubsub.schemas.setIamPolicy
pubsub.schemas.setIamPolicy
Geben Sie sich selbst die Berechtigungen, die erforderlich sind, um einen der zuvor genannten Angriffe durchzuführen.
pubsub.snapshots.create
, pubsub.snapshots.seek
pubsub.snapshots.create
, pubsub.snapshots.seek
Dies wird einen Snapshot aller nicht bestätigten Nachrichten erstellen und sie zurück zum Abonnement setzen. Nicht sehr nützlich für einen Angreifer, aber hier ist es:
Last updated