Python Internal Read Gadgets
Last updated
Last updated
Μάθετε & εξασκηθείτε στο Hacking του AWS:Εκπαίδευση HackTricks AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο Hacking του GCP: Εκπαίδευση HackTricks GCP Red Team Expert (GRTE)
Διάφορες ευπάθειες όπως τα Python Format Strings ή η Ρύπανση Κλάσεων μπορεί να σας επιτρέψουν να διαβάσετε εσωτερικά δεδομένα της Python αλλά δεν θα σας επιτρέψουν να εκτελέσετε κώδικα. Συνεπώς, ένας pentester θα πρέπει να εκμεταλλευτεί αυτές τις δικαιώματα ανάγνωσης για να αποκτήσει ευαίσθητα προνόμια και να εξελίξει την ευπάθεια.
Η κύρια σελίδα μιας εφαρμογής Flask πιθανότατα θα έχει το app
παγκόσμιο αντικείμενο όπου αυτό το μυστικό είναι ρυθμισμένο.
Σε αυτήν την περίπτωση είναι δυνατή η πρόσβαση σε αυτό το αντικείμενο χρησιμοποιώντας οποιοδήποτε gadget για πρόσβαση σε παγκόσμια αντικείμενα από τη σελίδα Παράκαμψης των αμμοθονών της Python.
Στην περίπτωση όπου η ευπάθεια βρίσκεται σε διαφορετικό αρχείο Python, χρειάζεστε ένα gadget για να διασχίσετε αρχεία και να φτάσετε στο κύριο αρχείο για πρόσβαση στο παγκόσμιο αντικείμενο app.secret_key
για να αλλάξετε το μυστικό κλειδί του Flask και να είστε σε θέση να αναβαθμίσετε δικαιώματα γνωρίζοντας αυτό το κλειδί.
Ένα φορτίο όπως αυτό από αυτό το άρθρο:
Χρησιμοποιήστε αυτό το φορτίο για να αλλάξετε το app.secret_key
(το όνομα στην εφαρμογή σας μπορεί να είναι διαφορετικό) ώστε να μπορείτε να υπογράψετε νέα και περισσότερα προνόμια στα cookies του flask.
Χρησιμοποιώντας αυτό το φορτίο από αυτήν την ανάλυση θα μπορείτε να έχετε πρόσβαση στο machine_id και το uuid node, τα οποία είναι τα κύρια μυστικά που χρειάζεστε για να δημιουργήσετε το Werkzeug pin που μπορείτε να χρησιμοποιήσετε για να έχετε πρόσβαση στην python κονσόλα στο /console
αν η λειτουργία αποσφαλμάτωσης είναι ενεργοποιημένη:
Σημειώστε ότι μπορείτε να λάβετε τη τοπική διαδρομή των διακομιστών προς το app.py
δημιουργώντας κάποιο σφάλμα στην ιστοσελίδα που θα σας δώσει τη διαδρομή.
Αν η ευπάθεια βρίσκεται σε διαφορετικό αρχείο Python, ελέγξτε το προηγούμενο κόλπο του Flask για πρόσβαση στα αντικείμενα από το κύριο αρχείο Python.
Μάθετε & εξασκηθείτε στο AWS Hacking:Εκπαίδευση HackTricks AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: Εκπαίδευση HackTricks GCP Red Team Expert (GRTE)