GCP - Pub/Sub Post Exploitation
Pub/Sub
Para obtener más información sobre Pub/Sub, consulta la siguiente página:
pageGCP - Pub/Sub Enumpubsub.topics.publish
pubsub.topics.publish
Publica un mensaje en un tema, útil para enviar datos inesperados y activar funcionalidades inesperadas o explotar vulnerabilidades:
pubsub.topics.detachSubscription
pubsub.topics.detachSubscription
Útil para evitar que una suscripción reciba mensajes, tal vez para evitar ser detectado.
pubsub.topics.delete
pubsub.topics.delete
Útil para evitar que una suscripción reciba mensajes, tal vez para evitar ser detectado. Es posible eliminar un tema incluso si tiene suscripciones asociadas.
pubsub.topics.update
pubsub.topics.update
Utiliza este permiso para actualizar alguna configuración del tema y así interrumpirlo, como --clear-schema-settings
, --message-retention-duration
, --message-storage-policy-allowed-regions
, --schema
, --schema-project
, --topic-encryption-key
...
pubsub.topics.setIamPolicy
pubsub.topics.setIamPolicy
Otórgate permiso para llevar a cabo cualquiera de los ataques anteriores.
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)Obtén todos los mensajes en un servidor web:
Crear una suscripción y usarla para extraer mensajes:
pubsub.subscriptions.delete
pubsub.subscriptions.delete
Eliminar una suscripción podría ser útil para interrumpir un sistema de procesamiento de registros o algo similar:
pubsub.subscriptions.update
pubsub.subscriptions.update
Utiliza este permiso para actualizar alguna configuración y así almacenar los mensajes en un lugar al que puedas acceder (URL, tabla de Big Query, Bucket) o simplemente para interrumpirlo.
pubsub.subscriptions.setIamPolicy
pubsub.subscriptions.setIamPolicy
Otórgate los permisos necesarios para llevar a cabo cualquiera de los ataques comentados anteriormente.
pubsub.schemas.delete
pubsub.schemas.delete
Elimina un esquema para poder enviar mensajes que no cumplan con el esquema:
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)Ataque un esquema a un tema para que los mensajes no lo cumplan y, por lo tanto, el tema se vea interrumpido. Si no hay esquemas, es posible que necesites crear uno.
```bash # Attach new schema gcloud pubsub topics update projects//topics/ \ --schema=projects//schemas/ \ --message-encoding=json ``` ### `pubsub.schemas.setIamPolicy`
Otórgate los permisos necesarios para realizar cualquiera de los ataques comentados anteriormente.
pubsub.snapshots.create
, pubsub.snapshots.seek
pubsub.snapshots.create
, pubsub.snapshots.seek
Esto creará una instantánea de todos los mensajes no confirmados y los devolverá a la suscripción. No es muy útil para un atacante, pero aquí está:
Última actualización