Web Vulnerabilities Methodology
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
Hoje em dia, aplicações web geralmente usam algum tipo de proxies intermediários, que podem ser (mal) utilizados 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.
Entrada do usuário
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 está esperando, algumas vulnerabilidades podem ou não se aplicar.
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.
Algumas das vulnerabilidades mencionadas requerem condições especiais, outras apenas requerem que o conteúdo seja refletido. Você pode encontrar alguns polygloths interessantes para testar rapidamente as vulnerabilidades em:
Reflecting Techniques - PoCs and Polygloths CheatSheetFuncionalidades 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.
Cabeçalhos HTTP
Dependendo dos cabeçalhos HTTP fornecidos pelo servidor web, algumas vulnerabilidades podem estar presentes.
Bypasses
Existem várias funcionalidades específicas onde algumas soluções alternativas podem ser úteis para contorná-las.
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.
Last updated