Cross-Site Scripting (XSS): o que é e como um script malicioso rouba dados
Cross-Site Scripting, ou XSS, é uma vulnerabilidade que permite que um script malicioso seja executado dentro do navegador de outra pessoa, através de uma página que ela confia — o site legítimo da empresa. Acontece quando a aplicação exibe, sem tratamento adequado, algum conteúdo que veio de uma fonte não confiável: um comentário, um campo de busca, um parâmetro de URL.
Os três tipos principais
XSS refletido acontece quando o conteúdo malicioso vem de uma requisição imediata, geralmente através de um link malicioso que a vítima precisa clicar. XSS armazenado é mais grave: o conteúdo malicioso fica salvo no banco de dados da aplicação — num comentário, por exemplo — e é executado para qualquer pessoa que visualizar aquele conteúdo depois, sem precisar de nenhuma ação além de abrir a página. XSS via DOM acontece inteiramente no navegador, quando o próprio JavaScript da página manipula dados de forma insegura.
O que um script malicioso consegue fazer
Uma vez executado no contexto da página legítima, um script pode roubar cookies de sessão (potencialmente assumindo a conta da vítima), capturar o que é digitado em formulários, redirecionar para páginas falsas, ou modificar o conteúdo visível da página para enganar o usuário. O dano depende do que a aplicação expõe ao JavaScript — mas o ponto de partida é sempre o mesmo: conteúdo não confiável tratado como se fosse confiável.
O que realmente previne XSS
- Codificação de saída (output encoding) de qualquer dado exibido que venha de fonte externa
- Uso de frameworks modernos que já escapam conteúdo por padrão (React, Vue e similares reduzem bastante esse risco quando usados corretamente)
- Content Security Policy (CSP) como camada adicional de contenção
- Validação de entrada, mesmo sabendo que ela sozinha não é suficiente
Assim como SQL Injection, XSS não é uma vulnerabilidade nova nem exótica — é antiga, bem documentada, e ainda assim recorrente, geralmente porque uma única tela nova, feita fora do padrão do resto do sistema, esquece de aplicar a mesma disciplina de tratamento de dado que o restante da aplicação já tem.
Sua empresa resiste a um teste de invasão real?
Agende um diagnóstico técnico com a Sovereign Tech e descubra exatamente onde sua aplicação está exposta — antes que alguém mal-intencionado descubra primeiro.