Você está na página 1de 10

Vunerabilidade em sistemas web Cross-Site-Scripting

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

1. Atacante envia um cdigo malicioso 2.

Esse apenas um 3. Usurio acessa essa mensagem exemplo entre muitos 4.cenriosentregue pelo servidor Messagem de ataque.
5. Browser executa o cdigo malicioso

Servidor armazena a mensagem

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

Cuidado com os erros de converso


Faz o tratamento decodificando e convertendo strings para apresentao da pgina
Alguns erros podem ser usados para ultrapassar esquemas da validao dos dados de entrada

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

Você também pode gostar