Redação: Desvio de autenticação via divulgação de informações @ PortSwigger Academy

Nov 25 2022
Este artigo para o laboratório Desvio de autenticação por meio da divulgação de informações faz parte da minha série de orientações para a Web Security Academy de PortSwigger. Caminho de aprendizado: Tópicos do lado do servidor → Divulgação de informações Script Python: script.

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-Forcabeç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 OPTIONSe 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 Replaceregra para sempre adicionar esse novo cabeçalho às solicitações.

Eu uso 127.0.0.1como 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 carlospara 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!

Dos relatórios da Infosec: Muito está surgindo na Infosec todos os dias, o que é difícil de acompanhar. Junte-se ao nosso boletim semanal para obter todas as últimas tendências da Infosec na forma de 5 artigos, 4 tópicos, 3 vídeos, 2 repositórios e ferramentas do GitHub e 1 alerta de trabalho GRATUITAMENTE!