# Bypasses de 403 & 401
Aprenda hacking no AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)! Outras formas de apoiar o HackTricks: * Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com) * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos * **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** * **Compartilhe suas técnicas de hacking enviando PRs para os repositórios github do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
**Configuração imediatamente disponível para avaliação de vulnerabilidade & pentesting**. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas & recursos que vão desde reconhecimento até relatórios. Não substituímos pentesters - desenvolvemos ferramentas personalizadas, módulos de detecção & exploração para dar a eles mais tempo para investigar mais a fundo, obter shells e se divertir. {% embed url="https://pentest-tools.com/" %} ## Fuzzing de Verbos/Métodos HTTP Tente usar **verbos diferentes** para acessar o arquivo: `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK` * Verifique os cabeçalhos de resposta, talvez alguma informação possa ser dada. Por exemplo, uma **resposta 200** para **HEAD** com `Content-Length: 55` significa que o verbo **HEAD pode acessar a informação**. Mas você ainda precisa encontrar uma maneira de exfiltrar essa informação. * Usar um cabeçalho HTTP como `X-HTTP-Method-Override: PUT` pode sobrescrever o verbo usado. * Use o verbo **`TRACE`** e se você tiver muita sorte talvez na resposta você possa ver também os **cabeçalhos adicionados por proxies intermediários** que podem ser úteis. ## Fuzzing de Cabeçalhos HTTP * **Altere o cabeçalho Host** para algum valor arbitrário ([que funcionou aqui](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31)) * Tente [**usar outros User Agents**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) para acessar o recurso. * **Fuzz Cabeçalhos HTTP**: Tente usar Cabeçalhos de Proxy HTTP, autenticação básica HTTP e força bruta NTLM (com apenas algumas combinações) e outras técnicas. Para fazer tudo isso, criei a ferramenta [**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` Se o **caminho estiver protegido**, você pode tentar burlar a proteção do caminho usando esses outros cabeçalhos: * `X-Original-URL: /admin/console` * `X-Rewrite-URL: /admin/console` * Se a página estiver **atrás de um proxy**, talvez seja o proxy que está impedindo você de acessar as informações privadas. Tente abusar do [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **ou** [**cabeçalhos hop-by-hop**](../../pentesting-web/abusing-hop-by-hop-headers.md)**.** * Fuzz [**cabeçalhos HTTP especiais**](special-http-headers.md) procurando por respostas diferentes. * **Fuzz cabeçalhos HTTP especiais** enquanto faz fuzzing de **Métodos HTTP**. * **Remova o cabeçalho Host** e talvez você consiga burlar a proteção. ## Fuzzing de Caminho Se _/caminho_ estiver bloqueado: * Tente usar _**/**_**%2e/caminho \_(se o acesso estiver bloqueado por um proxy, isso pode burlar a proteção). Tente também**\_\*\* /%252e\*\*/caminho (codificação de URL dupla) * Tente **bypass Unicode**: _/**%ef%bc%8f**caminho_ (Os caracteres codificados em URL são como "/") então, quando decodificados, será _//caminho_ e talvez você já tenha burlado a verificação de nome _/caminho_ * **Outros bypasses de caminho**: * site.com/segredo –> HTTP 403 Proibido * site.com/SEGREDO –> HTTP 200 OK * site.com/segredo/ –> HTTP 200 OK * site.com/segredo/. –> HTTP 200 OK * site.com//segredo// –> HTTP 200 OK * site.com/./segredo/.. –> HTTP 200 OK * site.com/;/segredo –> HTTP 200 OK * site.com/.;/segredo –> HTTP 200 OK * site.com//;//segredo –> HTTP 200 OK * site.com/segredo.json –> HTTP 200 OK (ruby) * Use toda [**esta lista**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/Unicode.txt) nas seguintes situações: * /FUZZsegredo * /FUZZ/segredo * /segredoFUZZ * **Outros bypasses de API:** * /v3/dados_usuarios/1234 --> 403 Proibido * /v1/dados_usuarios/1234 --> 200 OK * {“id”:111} --> 401 Não autorizado * {“id”:\[111]} --> 200 OK * {“id”:111} --> 401 Não autorizado * {“id”:{“id”:111\}} --> 200 OK * {"user\_id":"\","user\_id":"\"} (Poluição de Parâmetro JSON) * user\_id=ID\_ATACANTE\&user\_id=ID\_VITIMA (Poluição de Parâmetro) ## **Manipulação de Parâmetros** * Altere **valor do parâmetro**: De **`id=123` --> `id=124`** * Adicione parâmetros adicionais à URL: `?`**`id=124` —-> `id=124&isAdmin=true`** * Remova os parâmetros * Reordene os parâmetros * Use caracteres especiais. * Realize testes de limite nos parâmetros — forneça valores como _-234_ ou _0_ ou _99999999_ (apenas alguns valores de exemplo). ## **Versão do Protocolo** Se estiver usando HTTP/1.1 **tente usar 1.0** ou até teste se ele **suporta 2.0**. ## **Outros Bypasses** * Obtenha o **IP** ou **CNAME** do domínio e tente **contatá-lo diretamente**. * Tente **sobrecarregar o servidor** enviando requisições GET comuns ([Funcionou para este cara com o Facebook](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)). * **Altere o protocolo**: de http para https, ou de https para http * Vá para [**https://archive.org/web/**](https://archive.org/web/) e verifique se no passado aquele arquivo estava **acessível mundialmente**. ## **Força Bruta** * **Adivinhe a senha**: Teste as seguintes credenciais comuns. Você sabe algo sobre a vítima? Ou o nome do desafio CTF? * [**Força bruta**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Tente autenticação básica, digest e NTLM. {% code title="Credenciais comuns" %} ``` admin admin admin password admin 1234 admin admin1234 admin 123456 root toor test test guest guest ``` ## Ferramentas Automáticas * [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) * [Extensão Burp - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122) * [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
**Configuração imediatamente disponível para avaliação de vulnerabilidade & pentesting**. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas & recursos que vão desde reconhecimento até relatórios. Não substituímos pentesters - desenvolvemos ferramentas personalizadas, módulos de detecção & exploração para dar a eles mais tempo para investigar mais a fundo, explorar sistemas e se divertir. {% embed url="https://pentest-tools.com/" %}
Aprenda hacking em AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)! Outras formas de apoiar o HackTricks: * Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com) * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos * **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** * **Compartilhe suas técnicas de hacking enviando PRs para os repositórios github do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).