Escolar Documentos
Profissional Documentos
Cultura Documentos
Cross-Site Scripting XSS (XSS)
Cross-Site Scripting XSS (XSS)
Geral
Descrição
Como se proteger ~
Além disso, é fundamental que você desative o suporte a HTTP TRACE em todos os
servidores web. Um atacante pode roubar dados de cookies via JavaScript mesmo
quando o document.cookie está desabilitado ou não é suportado no cliente. Este
ataque é montado quando um usuário posta um script malicioso para um fórum para
quando outro usuário clica no link, um assíncrono rastreamento de chamada HTTP é
acionado, que recolhe informações do cookie do usuário do servidor e, em seguida,
envia-o para outro servidor malicioso que coleta as informações do cookie para que
o atacante pode montar uma sessão de seqüestrar ataque. Isso é facilmente mitigado
através da remoção de suporte para HTTP TRACE em todos os servidores web.
<body onload=alert('test1')>
onmouseover
onerror
<IMG SRC=jAvascript:alert('test2')>
Há muitos tipos diferentes de notações UTF-8 que nos dão mais possibilidades.
<META HTTP-EQUIV="refresh"
CONTENT="0;url=data:text/html;base64,PHNjcmlwdD5hbGVydCgndGVzdDMnKTwvc2NyaXB0Pg">
Estes (um pouco modificado por mim) e outros exemplos podem ser encontrados em
http://ha.ckers.org/xss.html, que é uma verdadeira enciclopédia do ataque XSS
sintaxe alternativo.
EXEMPLOS
Exemplo 1 ~
O seguinte segmento de código JSP lê uma identificação do funcionário, eid, a
partir de uma solicitação HTTP a exibe para o usuário.
Exemplo 2 ~
O seguinte segmento de código JSP consulta um banco de dados para um empregado com
um determinado ID e imprime o nome do funcionário correspondente.
<%...
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from emp where id="+eid);
if (rs != null) {
rs.next();
String name = rs.getString("name");
%>
Como os exemplos mostram, vulnerabilidades XSS são causadas por um código que
inclui dados em unvalidated uma resposta HTTP. Existem três vectores, através da
qual um ataque XSS podem atingir uma vítima: