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

133 lines
10 KiB
Markdown
Raw Normal View History

2023-06-03 13:10:46 +00:00
# 403 et 401 Bypasses
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 20:35:28 +02:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-06-03 13:10:46 +00:00
* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>
<figure><img src="../../.gitbook/assets/image (1) (1) (2).png" alt=""><figcaption></figcaption></figure>
2023-06-03 13:10:46 +00:00
[**DragonJAR Security Conference es un evento internacional de ciberseguridad**](https://www.dragonjarcon.org/) avec plus d'une décennie qui se tiendra les 7 et 8 septembre 2023 à Bogotá, en Colombie. C'est un événement de contenu technique de grande envergure où les dernières recherches en espagnol sont présentées, attirant des pirates informatiques et des chercheurs du monde entier.\
Inscrivez-vous dès maintenant sur le lien suivant et ne manquez pas cette grande conférence !:
{% embed url="https://www.dragonjarcon.org/" %}
2023-06-03 13:10:46 +00:00
## Fuzzing des verbes/méthodes HTTP
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
Essayez d'utiliser **différents verbes** pour accéder au fichier : `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
* Vérifiez les en-têtes de réponse, peut-être que des informations peuvent être données. Par exemple, une réponse **200** à **HEAD** avec `Content-Length: 55` signifie que le **verbe HEAD peut accéder aux informations**. Mais vous devez toujours trouver un moyen d'exfiltrer ces informations.
* L'utilisation d'un en-tête HTTP comme `X-HTTP-Method-Override: PUT` peut écraser le verbe utilisé.
* Utilisez le verbe **`TRACE`** et si vous avez beaucoup de chance, peut-être que dans la réponse, vous pouvez également voir les **en-têtes ajoutés par les proxys intermédiaires** qui pourraient être utiles.
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
## Fuzzing des en-têtes HTTP
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
* **Changer l'en-tête Host** en une valeur arbitraire ([cela a fonctionné ici](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
* Essayez d'**utiliser d'autres User Agents** pour accéder à la ressource.
* **Fuzz HTTP Headers** : Essayez d'utiliser des **en-têtes** de proxy HTTP, une force brute d'authentification HTTP Basic et NTLM (avec quelques combinaisons seulement) et d'autres techniques. Pour tout cela, j'ai créé l'outil [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass).
2022-04-05 18:24:52 -04:00
* `X-Originating-IP: 127.0.0.1`
* `X-Forwarded-For: 127.0.0.1`
2022-04-06 08:57:29 +00:00
* `X-Forwarded: 127.0.0.1`
* `Forwarded-For: 127.0.0.1`
2022-04-05 18:24:52 -04:00
* `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`
2021-11-16 01:22:19 +00:00
* `Host: localhost`
2023-06-03 13:10:46 +00:00
Si le **chemin est protégé**, vous pouvez essayer de contourner la protection du chemin en utilisant ces autres en-têtes :
* `X-Original-URL: /admin/console`
* `X-Rewrite-URL: /admin/console`
2023-06-03 13:10:46 +00:00
* Si la page est **derrière un proxy**, peut-être que c'est le proxy qui vous empêche d'accéder aux informations privées. Essayez d'abuser de la **falsification de requête HTTP** ou des **en-têtes hop-by-hop**.
* Fuzz [**les en-têtes HTTP spéciaux**](special-http-headers.md) à la recherche de différentes réponses.
* **Fuzz les en-têtes HTTP spéciaux** tout en fuzzant les **méthodes HTTP**.
* **Supprimez l'en-tête Host** et peut-être pourrez-vous contourner la protection.
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
## Fuzzing de chemin
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
Si _/path_ est bloqué :
2021-09-19 15:52:48 +00:00
2023-06-03 13:10:46 +00:00
* Essayez d'utiliser _**/**_**%2e/path \_(si l'accès est bloqué par un proxy, cela pourrait contourner la protection). Essayez également**\_\*\* /%252e\*\*/path (double encodage URL)
* Essayez le **contournement Unicode** : _/**%ef%bc%8f**path_ (Les caractères encodés en URL sont comme "/") donc lorsqu'ils sont encodés à nouveau, cela sera _//path_ et peut-être que vous aurez déjà contourné la vérification du nom _/path_
2023-06-03 13:10:46 +00:00
* **Autres contournements de chemin** :
* 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)
* Utilisez
2023-06-03 13:10:46 +00:00
````
```
# Bypasses 403 et 401
2021-09-19 15:52:48 +00:00
Lorsque vous essayez d'accéder à une ressource protégée, vous pouvez rencontrer des codes d'erreur HTTP 403 et 401. Le code d'erreur 403 signifie que vous n'êtes pas autorisé à accéder à la ressource, tandis que le code d'erreur 401 signifie que vous devez vous authentifier pour accéder à la ressource.
2022-05-01 13:25:53 +00:00
## Bypass de l'erreur 403
### Utilisation de l'extension de fichier
Si l'extension de fichier est bloquée, vous pouvez essayer de contourner cette restriction en utilisant une extension de fichier différente. Par exemple, si `file.php` est bloqué, vous pouvez essayer d'accéder à la même ressource en utilisant `file.php%20`.
### Utilisation de caractères spéciaux
Si certains caractères spéciaux sont bloqués, vous pouvez essayer de les remplacer par leur équivalent HTML. Par exemple, si `?` est bloqué, vous pouvez essayer d'utiliser `%3F` à la place.
### Utilisation de l'URL encodé
Si l'URL est bloquée, vous pouvez essayer d'utiliser l'URL encodé. Par exemple, si `http://example.com/secret` est bloqué, vous pouvez essayer d'accéder à la même ressource en utilisant `http%3A%2F%2Fexample.com%2Fsecret`.
## Bypass de l'erreur 401
### Utilisation de mots de passe courants
Si vous êtes invité à vous authentifier, vous pouvez essayer d'utiliser des mots de passe courants tels que `admin`, `password`, `1234`, `admin1234`, `123456`, `root`, `toor`, `test` ou `guest`.
### Utilisation de l'attaque de force brute
2022-05-01 13:25:53 +00:00
Si vous ne connaissez pas le mot de passe, vous pouvez essayer d'utiliser l'attaque de force brute pour deviner le mot de passe. Cependant, cette méthode peut prendre beaucoup de temps et peut être détectée par les systèmes de sécurité.
2023-06-03 13:10:46 +00:00
```
````
## Outils automatiques
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)
2023-06-03 13:10:46 +00:00
* [Extension Burp - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
2022-04-28 16:01:33 +00:00
<figure><img src="../../.gitbook/assets/image (1) (1) (2).png" alt=""><figcaption></figcaption></figure>
2023-06-03 13:10:46 +00:00
[**DragonJAR Security Conference est un événement international de cybersécurité**](https://www.dragonjarcon.org/) qui a plus d'une décennie et qui se tiendra les 7 et 8 septembre 2023 à Bogotá, en Colombie. C'est un événement de contenu technique important où les dernières recherches en espagnol sont présentées, attirant des hackers et des chercheurs du monde entier.\
Inscrivez-vous dès maintenant sur le lien suivant et ne manquez pas cette grande conférence ! :
{% embed url="https://www.dragonjarcon.org/" %}
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 20:35:28 +02:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-06-03 13:10:46 +00:00
* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>