Testando Vulnerabilidades XSS
Com a captura de tráfego web configurada, você agora pode usar o Burp Suite para testar vulnerabilidades de Cross-Site Scripting (XSS). XSS é um problema comum de segurança web onde atacantes injetam scripts maliciosos em páginas web que são então executados no navegador de um usuário. Esta etapa se concentra em identificar potenciais falhas de XSS, enviando entradas de teste e analisando as respostas.
Para iniciantes, XSS ocorre quando uma aplicação web falha em sanitizar a entrada do usuário, permitindo que código prejudicial (como JavaScript) seja injetado e executado. Existem diferentes tipos de XSS, mas aqui você testará o XSS refletido, onde a entrada maliciosa é imediatamente refletida na resposta do servidor sem ser armazenada.
Como você está no shell do container Kali Linux (entrado automaticamente ao abrir o terminal), certifique-se de que o Burp Suite e o Firefox ainda estejam em execução a partir das etapas anteriores. Caso contrário, reinicie-os com burpsuite e firefox & respectivamente.
No Firefox, navegue para um site de teste que aceite entrada do usuário, como uma caixa de pesquisa ou formulário. Para este laboratório, se nenhum site de teste específico for fornecido na VM do LabEx, você pode usar um site de teste público como http://testphp.vulnweb.com se acessível. Digite a URL na barra de endereço do Firefox e pressione Enter.
Assim que a página carregar, localize um campo de entrada, como uma barra de pesquisa. Insira uma string de teste simples como test<xss> no campo e envie o formulário. Essa entrada é inofensiva, mas ajuda a verificar se a aplicação reflete a entrada de volta sem sanitizá-la.
Mude para o Burp Suite, vá para a aba Proxy e selecione a sub-aba HTTP history (Histórico HTTP). Encontre a requisição correspondente ao envio do seu formulário. Clique nela para visualizar os detalhes. No painel Request (Requisição), procure o parâmetro onde sua entrada test<xss> foi enviada (pode estar em um campo como search ou query).
Em seguida, no painel Response (Resposta), procure sua string de entrada test<xss>. Se você vir a string exata refletida na resposta sem ser escapada (por exemplo, não convertida para test<xss>), a aplicação pode ser vulnerável ao XSS refletido.
Saída Esperada no Burp Suite (visual, não terminal):
No painel Response, se você vir test<xss> como está no conteúdo HTML, isso indica uma potencial vulnerabilidade. Se aparecer como test<xss>, a entrada foi sanitizada, reduzindo o risco de XSS.
Se você identificar uma potencial vulnerabilidade, clique com o botão direito na requisição na aba HTTP history e selecione Add to site map (Adicionar ao mapa do site) para organizá-la para relatórios na próxima etapa. Este processo de teste de XSS, enviando dados de teste e analisando respostas, constrói suas habilidades em avaliação de vulnerabilidades. Mantenha o Burp Suite e o Firefox abertos enquanto você passa para a etapa final.