# Bypass 403 & 401
Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
**Configuration instantanément disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Exécutez un test de pénétration complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les testeurs de pénétration - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur donner du temps pour creuser plus profondément, ouvrir des shells et s'amuser. {% embed url="https://pentest-tools.com/" %} ## Fuzzing des verbes/méthodes HTTP Essayez d'utiliser **différents verbes** pour accéder au fichier : `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK` * Vérifiez les en-têtes de réponse, peut-être que des informations peuvent être fournies. 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'extraire ces informations. * Utiliser un en-tête HTTP comme `X-HTTP-Method-Override: PUT` peut remplacer 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 proxies intermédiaires** qui pourraient être utiles. ## Fuzzing des en-têtes HTTP * **Changer l'en-tête Host** en une valeur arbitraire ([qui 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 des en-têtes HTTP** : Essayez d'utiliser des **en-têtes** de proxy HTTP, une force brute d'authentification HTTP Basic et NTLM (avec seulement quelques combinaisons) et d'autres techniques. Pour faire tout cela, j'ai créé l'outil [**fuzzhttpbypass**](https://github.com/carlospolop/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` 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` * 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 l'**HTTP Request Smuggling** ou des **en-têtes hop-by-hop**. * Fuzz des [**en-têtes HTTP spéciaux**](special-http-headers.md) à la recherche de réponses différentes. * **Fuzz des 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. ## Fuzzing du chemin Si _/chemin_ est bloqué : * Essayez d'utiliser _**/**_**%2e/chemin \_(si l'accès est bloqué par un proxy, cela pourrait contourner la protection). Essayez aussi**\_\*\* /%252e\*\*/chemin (double encodage d'URL) * Essayez le **contournement Unicode** : _/**%ef%bc%8f**chemin_ (Les caractères encodés en URL sont comme "/") donc une fois encodés à nouveau, cela sera _//chemin_ et peut-être aurez-vous déjà contourné la vérification du nom _/chemin_ * **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 toute [**cette liste**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/Unicode.txt) dans les situations suivantes : * /FUZZsecret * /FUZZ/secret * /secretFUZZ * **Autres contournements d'API** : * /v3/users\_data/1234 --> 403 Forbidden * /v1/users\_data/1234 --> 200 OK * {“id”:111} --> 401 Non autorisé * {“id”:\[111]} --> 200 OK * {“id”:111} --> 401 Non autorisé * {“id”:{“id”:111\}} --> 200 OK * {"user\_id":"\","user\_id":"\"} (Pollution de paramètres JSON) * user\_id=ATTACKER\_ID\&user\_id=VICTIM\_ID (Pollution de paramètres) ## **Manipulation de paramètres** * Changer la **valeur du paramètre** : De **`id=123` --> `id=124`** * Ajouter des paramètres supplémentaires à l'URL : `?`**`id=124` —-> `id=124&isAdmin=true`** * Supprimer les paramètres * Réorganiser les paramètres * Utiliser des caractères spéciaux. * Effectuer des tests de limite dans les paramètres - fournir des valeurs comme _-234_ ou _0_ ou _99999999_ (juste quelques exemples de valeurs). ## **Version du protocole** Si vous utilisez HTTP/1.1 **essayez d'utiliser 1.0** ou même testez s'il **prend en charge 2.0**. ## **Autres contournements** * Obtenez l'**IP** ou le **CNAME** du domaine et essayez de le **contacter directement**. * Essayez de **surcharger le serveur** en envoyant des requêtes GET courantes ([Cela a fonctionné pour ce gars avec Facebook](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)). * **Changer le protocole** : de http à https, ou de https à http * Allez sur [**https://archive.org/web/**](https://archive.org/web/) et vérifiez si dans le passé ce fichier était **accessible mondialement**. ## **Brute Force** * **Devinez le mot de passe** : Testez les identifiants courants suivants. Connaissez-vous quelque chose sur la victime ? Ou le nom du défi CTF ? * [**Brute force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Essayez l'authentification de base, digest et NTLM. {% code title="Identifiants courants" %} ``` admin admin admin password admin 1234 admin admin1234 admin 123456 root toor test test guest guest ``` {% endcode %} ## Outils Automatiques * [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) * [Extension Burp - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122) * [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
**Configuration instantanément disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance aux rapports. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur donner du temps pour creuser plus profondément, ouvrir des shells et s'amuser. {% embed url="https://pentest-tools.com/" %}
Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.