hacktricks/network-services-pentesting/pentesting-web/403-and-401-bypasses.md

159 lines
13 KiB
Markdown
Raw Normal View History

# 403 & 401 Bypasses
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Υποστήριξη HackTricks</summary>
2024-01-02 18:28:27 +00:00
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
**Άμεσα διαθέσιμη ρύθμιση για αξιολόγηση ευπαθειών & pentesting**. Εκτελέστε μια πλήρη pentest από οπουδήποτε με 20+ εργαλεία & δυνατότητες που κυμαίνονται από αναγνώριση έως αναφορά. Δεν αντικαθιστούμε τους pentesters - αναπτύσσουμε προσαρμοσμένα εργαλεία, μονάδες ανίχνευσης & εκμετάλλευσης για να τους δώσουμε πίσω λίγο χρόνο για να εμβαθύνουν, να ανοίξουν shells και να διασκεδάσουν.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
## HTTP Verbs/Methods Fuzzing
2024-02-10 22:40:18 +00:00
Δοκιμάστε να χρησιμοποιήσετε **διαφορετικούς ρήματα** για να αποκτήσετε πρόσβαση στο αρχείο: `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
2024-02-10 22:40:18 +00:00
* Ελέγξτε τις κεφαλίδες απόκρισης, ίσως κάποιες πληροφορίες να μπορούν να δοθούν. Για παράδειγμα, μια **200 απόκριση** σε **HEAD** με `Content-Length: 55` σημαίνει ότι το **HEAD verb μπορεί να αποκτήσει πρόσβαση στις πληροφορίες**. Αλλά πρέπει ακόμα να βρείτε έναν τρόπο να εξάγετε αυτές τις πληροφορίες.
* Χρησιμοποιώντας μια HTTP κεφαλίδα όπως `X-HTTP-Method-Override: PUT` μπορεί να αντικαταστήσει το ρήμα που χρησιμοποιείται.
* Χρησιμοποιήστε το **`TRACE`** ρήμα και αν είστε πολύ τυχεροί ίσως στην απόκριση να δείτε επίσης τις **κεφαλίδες που προστέθηκαν από ενδιάμεσους διακομιστές** που μπορεί να είναι χρήσιμες.
2024-02-10 22:40:18 +00:00
## HTTP Headers Fuzzing
2024-02-10 22:40:18 +00:00
* **Αλλάξτε την κεφαλίδα Host** σε κάποια αυθαίρετη τιμή ([που λειτούργησε εδώ](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
* Δοκιμάστε να [**χρησιμοποιήσετε άλλους User Agents**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) για να αποκτήσετε πρόσβαση στον πόρο.
* **Fuzz HTTP Headers**: Δοκιμάστε να χρησιμοποιήσετε HTTP Proxy **Headers**, HTTP Authentication Basic και NTLM brute-force (με λίγους μόνο συνδυασμούς) και άλλες τεχνικές. Για να κάνω όλα αυτά έχω δημιουργήσει το εργαλείο [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass).
2024-02-10 22:40:18 +00:00
* `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**](../../pentesting-web/http-request-smuggling/) **ή** [**κεφαλίδες hop-by-hop**](../../pentesting-web/abusing-hop-by-hop-headers.md)**.**
* Fuzz [**ειδικές HTTP κεφαλίδες**](special-http-headers.md) αναζητώντας διαφορετική απόκριση.
* **Fuzz ειδικές HTTP κεφαλίδες** ενώ κάνετε fuzzing **HTTP Methods**.
* **Αφαιρέστε την κεφαλίδα Host** και ίσως μπορέσετε να παρακάμψετε την προστασία.
## Path **Fuzzing**
Αν _/path_ είναι αποκλεισμένο:
* Δοκιμάστε να χρησιμοποιήσετε _**/**_**%2e/path \_(αν η πρόσβαση αποκλείεται από έναν διακομιστή μεσολάβησης, αυτό θα μπορούσε να παρακάμψει την προστασία). Δοκιμάστε επίσης**\_\*\* /%252e\*\*/path (διπλή κωδικοποίηση URL)
* Δοκιμάστε **Unicode bypass**: _/**%ef%bc%8f**path_ (Οι κωδικοποιημένοι χαρακτήρες 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)
* Χρησιμοποιήστε όλη [**αυτή τη λίστα**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/Unicode.txt) στις παρακάτω καταστάσεις:
* /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)
## **Parameter Manipulation**
* Αλλάξτε **τιμή παραμέτρου**: Από **`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](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
* **Αλλάξτε το πρωτόκολλο**: από http σε https, ή για https σε http
* Πηγαίνετε στο [**https://archive.org/web/**](https://archive.org/web/) και ελέγξτε αν στο παρελθόν αυτό το αρχείο ήταν **παγκοσμίως προσβάσιμο**.
2024-02-10 22:40:18 +00:00
## **Brute Force**
2024-02-10 22:40:18 +00:00
* **Μαντέψτε τον κωδικό πρόσβασης**: Δοκιμάστε τα παρακάτω κοινά διαπιστευτήρια. Ξέρετε κάτι για το θύμα; Ή το όνομα της πρόκλησης CTF;
* [**Brute force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Δοκιμάστε βασική, digest και NTLM αυθεντικοποίηση.
2024-02-10 22:40:18 +00:00
{% code title="Κοινά διαπιστευτήρια" %}
2022-05-01 13:25:53 +00:00
```
admin admin
admin password
admin 1234
admin admin1234
admin 123456
root toor
test test
guest guest
```
{% endcode %}
2024-02-10 22:40:18 +00:00
## Αυτόματα Εργαλεία
2022-04-22 08:32:18 +00:00
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
* [Burp Extension - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
2023-10-21 12:30:38 +00:00
* [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
* [NoMoreForbidden](https://github.com/akinerk/NoMoreForbidden)
2022-04-28 16:01:33 +00:00
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
**Άμεσα διαθέσιμη ρύθμιση για αξιολόγηση ευπαθειών & pentesting**. Εκτελέστε ένα πλήρες pentest από οπουδήποτε με 20+ εργαλεία & χαρακτηριστικά που κυμαίνονται από αναγνώριση έως αναφορά. Δεν αντικαθιστούμε τους pentesters - αναπτύσσουμε προσαρμοσμένα εργαλεία, μονάδες ανίχνευσης & εκμετάλλευσης για να τους δώσουμε πίσω λίγο χρόνο για να εμβαθύνουν, να ανοίξουν shells και να διασκεδάσουν.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
{% hint style="success" %}
Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Υποστήριξη HackTricks</summary>
2024-01-02 18:28:27 +00:00
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}