Escolar Documentos
Profissional Documentos
Cultura Documentos
Rafael Augusto de Souza Cavalcante Genison Ribeiro de Paiva Junior Orientador: Danilo Rangel Arruda Leite
Objetivo da apresentao
Detalhar o funcionamento de ataques a aplicaes web usando XSS, alm de apresentar tcnicas que tornaro sua aplicao mais robusta e menos apta a este tipo de ataque.
Introduo
Navegadores web podem executar cdigos embutidos em pginas HTML Esses navegadores suportam vrias linguagens como: JavaScript VBScript ActiveX Etc Cross-Site um script exterior que entregue por um servidor infectado a clientes.
Introduo
O que Cross-Site-Scripting?
uma entrada maliciosa enviada por um atacante. Esta entrada armazenada pelo sistema e, em seguida, exibida para outros usurios.
Ataques possveis:
Roubo de credenciais de acesso Modificao de paginas web Executar comandos na maquina do cliente
Etc.
Metodologia do ataque
Atacante
Post Forum Message: Subject: Saiba como ganhar dinheiro fcil!!! Body: <script> codigo malicioso </script>
Servidor Web
Voc pode tirar uma duvida? Saiba como ganhar dinheiro fcil !!! <script> attack code </script> Re: messagem de erro na tela ..... Achei uma soluo! ..... Alguem mais pode ajudar? ..... mensagem de erro na tela... .....
Get /forum.jsp?fid=122&mid=2241
Esse apenas um 3. Usurio acessa essa mensagem exemplo entre muitos 4.cenriosentregue pelo servidor Messagem de ataque.
5. Browser executa o cdigo malicioso
Saiba como ganhar dinheiro fcil !!! <script> codigo malicioso </script>
Usuario
!!! Codigo malicioso !!!
Metodologias do ataque
O XSS permite atacantes executarem script no navegador da vtima, que pode:
Sequestrar sesses de usurios Desfigurar web sites Inserir contedo hostil Conduzir ataques de roubo de informaes pessoais
(phishing) Obter o controle do navegador do usurio usando um script mal intencionado (malware). Os scripts so geralmente escritos em Java Script, mas podem ser desenvolvidos em qualquer linguagem de script suportada pelo navegador da vtima
Metodologias do ataque
Como vimos, os atacantes injetam cdigos maliciosos para ter acesso aos dados compartilhados entre pgina web que o usurio navega e o servidor:
Cookies Campos de formulrios Etc.
Proteo
Validao para dados de entrada
Esta tcnica habilita a deteco de ataques
Aceita toda entrada como sendo vlida, mas trata as entradas invalidas como: tags html, xml e injeo sql
Codificao de sada
Usa uma abordagem de codificao sobre os caracteres (biblioteca Anti-XSS)
Configura cada pagina a ser produzida como sada e diminui a exposio de algumas ameaas.
Proteo
No use validao de lista-negra
Ignora poucos caracteres, como < , > ou frases do tipo script, javascript
O XSS possui um conjunto de variantes que torna simples ultrapassar validaes desse tipo
Concluso
Muitos sites ainda apresentam esse tipo de falha de segurana em diferentes graus. Assim como na proteo contra Sql Injection, simples chamadas de funes em lugares certos evitaro esta vulnerabilidade