Redação: Desvio de autenticação via divulgação de informações @ PortSwigger Academy
Este artigo para o laboratório Desvio de autenticação por meio da divulgação de informações faz parte da minha série passo a passo para a Web Security Academy de PortSwigger .
Caminho de aprendizado : Tópicos do lado do servidor → Divulgação de informações
Script Python: script.py
descrição do laboratório
Passos
Análise
O aplicativo do laboratório é um site de loja com produtos muito interessantes. Como de costume, o primeiro passo é verificar o site.
Depois de navegar um pouco e fazer login com as credenciais conhecidas, nada de muito interessante aparece. Hora de checar os pedidos no Burp. Nada muito interessante lá também.
O endpoint admin em alguns laboratórios anteriores foi encontrado em /admin
. Mas para evitar usar esse conhecimento, posso usar vários meios de descoberta de conteúdo. O Burp Professional vem com essa funcionalidade e várias boas ferramentas gratuitas também permitem a descoberta de conteúdo.
O que eu uso aqui é ffuf junto com as ótimas listas de palavras fornecidas por SecLists :
Visitando o terminal
Eu visito esta página para receber esta mensagem:
Nenhuma outra informação é dada.
Uma forma comum de propagar IPs de origem para um servidor web (usado em cenários de proxy ou balanceamento de carga) é o X-Forwarded-For
cabeçalho. Isso, no entanto, não funciona aqui (e a descrição do laboratório afirma que é um cabeçalho personalizado de qualquer maneira).
Dois verbos HTTP podem ser usados para obter informações adicionais OPTIONS
e TRACE
. Este último produz um resultado interessante:
Fornecer cabeçalho personalizado
Agora que conheço o cabeçalho, fica fácil acessar a interface administrativa. Preciso garantir que o cabeçalho personalizado seja enviado com cada solicitação, então adiciono uma Match and Replace
regra para sempre adicionar esse novo cabeçalho às solicitações.
Eu uso 127.0.0.1
como conteúdo para induzir o aplicativo a acreditar que a solicitação se originou de localhost
.
Agora é só recarregar a página no navegador, acessar o painel admin e deletar o usuário carlos
para resolver o laboratório:
Originalmente publicado em https://github.com .
New to Medium? Become a Medium member to access all stories on the platform and support me at no extra cost for you!