10 KiB
Metodologia de Vulnerabilidades Web
{% hint style="success" %}
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Suporte ao HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para os repositórios do HackTricks e HackTricks Cloud.
Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios. Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
Em cada Pentest Web, existem vários lugares ocultos e óbvios que podem ser vulneráveis. Este post tem como objetivo ser uma lista de verificação para confirmar que você pesquisou vulnerabilidades em todos os lugares possíveis.
Proxies
{% hint style="info" %} Hoje em dia, aplicações web geralmente usam algum tipo de proxy intermediário, que pode ser (mal) utilizado para explorar vulnerabilidades. Essas vulnerabilidades precisam de um proxy vulnerável para estar em vigor, mas geralmente também precisam de alguma vulnerabilidade extra no backend. {% endhint %}
- Abusando cabeçalhos hop-by-hop
- Envenenamento de Cache/Engano de Cache
- HTTP Request Smuggling
- H2C Smuggling
- Inclusão do Lado do Servidor/Injeção do Lado da Edge
- Descobrindo Cloudflare
- Injeção de XSLT do Lado do Servidor
- Bypass de Proteções de Proxy / WAF
Entrada do usuário
{% hint style="info" %}
A maioria das aplicações web permitem que os usuários insiram alguns dados que serão processados posteriormente.
Dependendo da estrutura dos dados que o servidor espera, algumas vulnerabilidades podem ou não se aplicar.
{% endhint %}
Valores Refletidos
Se os dados introduzidos podem de alguma forma ser refletidos na resposta, a página pode ser vulnerável a vários problemas.
- Injeção de Template do Lado do Cliente
- Injeção de Comando
- CRLF
- Markup Pendente
- Inclusão de Arquivo/Traversal de Caminho
- Redirecionamento Aberto
- Poluição de Protótipo para XSS
- Inclusão do Lado do Servidor/Injeção do Lado da Edge
- Falsificação de Requisição do Lado do Servidor
- Injeção de Template do Lado do Servidor
- Reverse Tab Nabbing
- Injeção de XSLT do Lado do Servidor
- XSS
- XSSI
- XS-Search
Algumas das vulnerabilidades mencionadas requerem condições especiais, outras apenas requerem que o conteúdo seja refletido. Você pode encontrar alguns poliglotas interessantes para testar rapidamente as vulnerabilidades em:
{% content-ref url="pocs-and-polygloths-cheatsheet/" %} pocs-and-polygloths-cheatsheet {% endcontent-ref %}
Funcionalidades de Busca
Se a funcionalidade pode ser usada para buscar algum tipo de dado no backend, talvez você possa (mal) utilizá-la para buscar dados arbitrários.
Formulários, WebSockets e PostMsgs
Quando um websocket envia uma mensagem ou um formulário permitindo que os usuários realizem ações, vulnerabilidades podem surgir.
- Falsificação de Requisição entre Sites
- Sequestro de WebSocket entre Sites (CSWSH)
- Vulnerabilidades de PostMessage
Cabeçalhos HTTP
Dependendo dos cabeçalhos HTTP fornecidos pelo servidor web, algumas vulnerabilidades podem estar presentes.
- Clickjacking
- Bypass de Política de Segurança de Conteúdo
- Hacking de Cookies
- CORS - Configurações Incorretas & Bypass
Bypasses
Existem várias funcionalidades específicas onde algumas soluções alternativas podem ser úteis para contorná-las.
- Bypass de 2FA/OTP
- Bypass do Processo de Pagamento
- Bypass de Captcha
- Bypass de Login
- Condição de Corrida
- Bypass de Limite de Taxa
- Bypass de Redefinição de Senha Esquecida
- Vulnerabilidades de Registro
Objetos Estruturados / Funcionalidades Específicas
Algumas funcionalidades exigirão que os dados estejam estruturados em um formato muito específico (como um objeto serializado de linguagem ou XML). Portanto, é mais fácil identificar se a aplicação pode ser vulnerável, pois precisa processar esse tipo de dado.
Algumas funcionalidades específicas também podem ser vulneráveis se um formato específico da entrada for usado (como Injeções de Cabeçalho de Email).
Arquivos
Funcionalidades que permitem o upload de arquivos podem ser vulneráveis a vários problemas.
Funcionalidades que geram arquivos incluindo entrada do usuário podem executar código inesperado.
Usuários que abrem arquivos enviados por outros usuários ou gerados automaticamente incluindo entrada do usuário podem ser comprometidos.
Gerenciamento de Identidade Externa
Outras Vulnerabilidades Úteis
Essas vulnerabilidades podem ajudar a explorar outras vulnerabilidades.
Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios. Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
{% hint style="success" %}
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Suporte ao HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para os repositórios do HackTricks e HackTricks Cloud.