PHP SSRF
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ορισμένες συναρτήσεις όπως file_get_contents(), fopen(), file(), md5_file() δέχονται URLs ως είσοδο που θα ακολουθήσουν, κάνοντάς τις πιθανές ευπάθειες SSRF αν ο χρήστης μπορεί να ελέγξει τα δεδομένα:
Όπως εξηγείται σε αυτή την ανάρτηση του blog, ακόμη και η λειτουργία του Wordpress wp_safe_remote_get
είναι ευάλωτη σε DNS rebinding, καθιστώντας την δυνητικά ευάλωτη σε επιθέσεις SSRF. Η κύρια επικύρωση που καλεί είναι wp_http_validate_url, η οποία ελέγχει ότι το πρωτόκολλο είναι http://
ή https://
και ότι η θύρα είναι μία από τις 80, 443, και 8080, αλλά είναι ευάλωτη σε DNS rebinding.
Άλλες ευάλωτες λειτουργίες σύμφωνα με την ανάρτηση είναι:
wp_safe_remote_request()
wp_safe_remote_post()
wp_safe_remote_head()
WP_REST_URL_Details_Controller::get_remote_url()
download_url()
wp_remote_fopen()
WP_oEmbed::discover()
Επιπλέον, σε ορισμένες περιπτώσεις μπορεί να είναι ακόμη δυνατό να σταλούν αυθαίρετες κεφαλίδες μέσω "ευπαθειών" CRLF στις προηγούμενες λειτουργίες:
Για περισσότερες πληροφορίες σχετικά με αυτήν την ευπάθεια CRLF, ελέγξτε αυτό το σφάλμα https://bugs.php.net/bug.php?id=81680&edit=1
Σημειώστε ότι αυτές οι συναρτήσεις μπορεί να έχουν άλλες μεθόδους για να ορίσουν αυθαίρετους κεφαλίδες σε αιτήματα, όπως:
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)