GCP - Pub/Sub Post Exploitation
Pub/Sub
Per maggiori informazioni su Pub/Sub controlla la seguente pagina:
GCP - Pub/Sub Enumpubsub.topics.publish
pubsub.topics.publish
Pubblica un messaggio in un topic, utile per inviare dati inaspettati e attivare funzionalità inaspettate o sfruttare vulnerabilità:
pubsub.topics.detachSubscription
pubsub.topics.detachSubscription
Utile per impedire a un abbonamento di ricevere messaggi, magari per evitare il rilevamento.
pubsub.topics.delete
pubsub.topics.delete
Utile per impedire a un abbonamento di ricevere messaggi, magari per evitare il rilevamento. È possibile eliminare un topic anche con abbonamenti ad esso collegati.
pubsub.topics.update
pubsub.topics.update
Utilizza questo permesso per aggiornare alcune impostazioni del topic per interromperlo, come --clear-schema-settings
, --message-retention-duration
, --message-storage-policy-allowed-regions
, --schema
, --schema-project
, --topic-encryption-key
...
pubsub.topics.setIamPolicy
pubsub.topics.setIamPolicy
Concediti il permesso di eseguire uno qualsiasi degli attacchi precedenti.
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)
pubsub.subscriptions.create,
pubsub.topics.attachSubscription
, (pubsub.subscriptions.consume
)Ottieni tutti i messaggi in un server web:
Crea un abbonamento e usalo per pull messages:
pubsub.subscriptions.delete
pubsub.subscriptions.delete
Eliminare un abbonamento potrebbe essere utile per interrompere un sistema di elaborazione dei log o qualcosa di simile:
pubsub.subscriptions.update
pubsub.subscriptions.update
Utilizza questo permesso per aggiornare alcune impostazioni in modo che i messaggi siano memorizzati in un luogo a cui puoi accedere (URL, Big Query table, Bucket) o semplicemente per interromperlo.
pubsub.subscriptions.setIamPolicy
pubsub.subscriptions.setIamPolicy
Concediti i permessi necessari per eseguire uno qualsiasi degli attacchi precedentemente commentati.
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)
pubsub.schemas.attach
, pubsub.topics.update
,(pubsub.schemas.create
)Attacca uno schema a un topic in modo che i messaggi non lo soddisfino e quindi il topic venga interrotto. Se non ci sono schemi, potrebbe essere necessario crearne uno.
pubsub.schemas.delete
pubsub.schemas.delete
Potrebbe sembrare che eliminando uno schema sarai in grado di inviare messaggi che non soddisfano lo schema. Tuttavia, poiché lo schema verrà eliminato, nessun messaggio entrerà effettivamente nel topic. Quindi questo è INUTILE:
pubsub.schemas.setIamPolicy
pubsub.schemas.setIamPolicy
Concediti i permessi necessari per eseguire uno qualsiasi degli attacchi precedentemente commentati.
pubsub.snapshots.create
, pubsub.snapshots.seek
pubsub.snapshots.create
, pubsub.snapshots.seek
Questo creerà uno snapshot di tutti i messaggi non ACKed e li rimetterà nell'abbonamento. Non molto utile per un attaccante, ma eccolo qui:
Last updated