Sie sind auf Seite 1von 9

Universidade So Judas Tadeu

TESTES DE SEGURANA EM APLICATIVOS WEB

Anderson Jos Raimundo

ABRIL DE 2011

Introduo

Os aplicativos web cada vez mais vm fazendo parte da sociedade como um todo, desde o acesso ao e-mail at realizar consultas bancrias, tudo est na web, qualquer pessoas pode ter acesso ao aplicativo. Com aumento da popularidade e sua importncia, surgem as necessidade de satisfazer os usurios. No entanto, muitos aplicativos web no foram desenvolvidos adotando uma metodologia adequada: pouca documentao presso para concluir o projeto e falta de eficincia para testar o aplicativo. Um teste mal feito pode significar um caminho aberto para problemas como fraude, incorrees e bloqueio de sites. Muitas vezes os usurios deixem de acessar um determinado site devido a sua funcionalidade e principalmente pela interface, isso tudo pode causar prejuzos a imagem da organizao. [Trayah e Rios, 2003]. As aplicaes web mais simples possuem pginas estticas, cujo contedo no pode ser modificado e sua navegao entre pginas so mais simples. Alm, disso seu desempenho no considerado requisito essencial. Nas aplicaes mais complexas, existe a possibilidade de o usurio interagir com o contedo apresentado nas pginas, o que exige, no geral, alto desempenho. [Costa, 2008]. No entanto, um dos maiores problemas dos aplicativos web a falta de segurana. Infelizmente, a segurana no manteve o mesmo ritmo de crescimento que os aplicativos web. A segurana uma propriedade do sistema, ela tem a ver com a realizao de testes e garantia do qualquer outra coisa. [Hope e Walker, 2009]. Os testes de aplicaes web se revestem de caractersticas peculiares, ainda mais envolvendo a segurana, uma vez que se trata de aplicaes que so colocados na internet e o acesso aberto por qualquer usurio [Trayah e Rios, 2003]. Normalmente simples testar a funcionalidade de um aplicativo web; basta seguirmos os caminhos que devemos seguir at um determinado ponto que deseja chegar. Quando no temos certeza de como vai ser o comportamento, existem formas de descobrir, por exemplo, sabemos que os nmeros de CPF no devem possuir letras, o depsito bancrio no deve ser negativo, sempre na base de um teste funcional. Os testes de segurana de software so essenciais para garantir a

confidencialidade, integridade e disponibilidade das informaes que so tratadas pelo software. Considerando tudo isso, este relatrio apresentar o as fases de teste de segurana em um aplicativo web e a utilizao da ferramenta chamada Netsparker, uma ferramenta scanner de segurana.

Materiais e Mtodos
Testes de segurana de software garantem que requisitos de segurana de software foram garantidos mesmo quando estes requisitos no fazem parte das especificaes funcionais. Segundo Pressman (2006), esses testes so projetados para encontrar as vulnerabilidades no ambiente do lado do cliente, nas comunicaes de rede que ocorrem quando os dados so passados do cliente para o servidor e de volta e no ambiente do alvo do servidor. A segurana uma jornada longa. Jamais chega a um acordo onde se declara que o software est seguro e o teste est concludo. Quando se realiza o teste funcional, geralmente tem dados de entra esperando que v gerar resultados. Em segurana j no tem a mesma certeza. [Hope, Walther, 2009]. Alm disso, ao realizar o teste de segurana em um aplicativo web, a comunicao a principal preocupao, ou seja, entre o cliente e servidor para que o prprio usurio no seja enganado por um site de web que age como se fosse um legtimo servidor autentico. Seu objetivo principal roubar senha e ou informaes pessoais. Recentemente, foi realizado teste de segurana em um aplicativo web da qual qualquer usurio pode ter acesso, trata-se do site de uma Faculdade de Aruj localizada na regio da Grande So Paulo, apesar de sua interface simples, o site apresenta algumas funcionalidades como busca de notcias e downloads de arquivos. A figura 1 a seguir apresenta a pgina inicial do site.

Figura 1 - Pgina inicial do site da Faculdade de Aruj

Um dos motivos que foi necessria a realizao do teste foi que na poca que foi desenvolvido os testes no foram realizados, o que deixa em evidncia uma possvel vulnerabilidade e risco de ser invadido. Para fazer a aplicao do teste, foram realizados levantamentos de informaes sobre a aplicao: o que ela faz? Como funciona? Foi examinada cada aspecto de suas funcionalidades. A principal ferramenta utilizada para teste de segurana foi netsparker que um aplicativo de scanner de segurana, que pode rastrear e detectar de vulnerabilidades em todos os tipos de aplicaes web. O netsparker pode identificar como injeo de sql, Cross-site Scripting (XSS), autenticao, pginas inexistentes e entre outros. Existem dois tipos de verses de netsparker: Comunity Edition e Professional, a diferena principal entre as duas verses so que a Professional tem todos os recursos disponveis para utilizao da ferramenta enquanto a Comunity Edition no tem todos os recursos, como salvar o escaneamento realizado e emisso de relatrios.

Pode-se considerar que netsparker a primeira ferramenta livre de falsospositivos, ou seja, a ferramenta confirma as vulnerabilidades sob demanda, o que sempre aponta atividade como ataque. Suas caractersticas principais so que assim que consegue identificar o problema o netsparker permite que o usurio possa explorar a vulnerabilidade, alm de dar sugestes para a possvel correo. Suas principais desvantagens so que somente funciona somente no sistema operacional Windows e seu idioma somente em ingls.

Figura 2 - Tela do Sistema Netsparker

Para utilizar o netsparker, primeiramente deve estar conectado na internet caso no seja de conexo local, e para executar o aplicativo basta clicar no boto chamado Start new Scan, para exibir a janela de Target URL para inserir a pgina de internet que vai ser escaneada e aps disso clicar no boto Start Scan, para realizar a varredura da URL solicitada.

Figura 3 - Boto Star New Cam na parte inferior esquerda da imagem

Figura 4 - Tela de Target URL

Resultados
Os resultados de o escaneamento apresentado a seguir no foram animadores, foram encontradas 19 (dezenove) vulnerabilidades, sendo que o mais grave deles foi a injeo de sql. A figura 5 apresenta o Grfico de Vulnerabilidade (Vulnerability Chart) apresentada pelo Netsparker:

Figura 5 - Grfico de Vulnerabilidade

O grfico acima apresenta os nveis de gravidade: information (informao), low (baixa), mdium (mdia), important (importante) e critical (crtica), das 19 vulnerabilidades encontradas, 10 so de gravidade crtica, o que representa 52,6% do total, ou seja, mais da metade so de risco gravssimo; 4 vulnerabilidades foram encontradas para os nveis de gravidade baixa e informao o que representa

21,05% do total de cada uma e uma somente para nvel de gravidade importante que significa 5,3% do total. Das 10 vulnerabilidades de gravidade crtica 4 envolve injeo de sql, ou seja h grande risco do site sofrer algum risco de ataque.

Figura 6 - Vulnerabilidades emitidas

Alm disso, foi realizado o clculo da quantidade de possibilidade de ataque e o resultado apresentado no foi animador: o site da Faculdade corre risco de sofrer 1457 ataques, a seguir o clculo realizado pelo Netsparker:

Figura 7 - Clculo de Possibilidade de ataque

Foi concludo o teste de escaneamento inicial que o site, no geral, est bastante vulnervel a ataques, e que ser necessria a realizaes de correes para evitar danos futuros.

Concluso
Do ponto de vista da ferramenta utilizada, apesar das limitaes, j que verso gratuita, possui funcionalidades importantes, que permitiu a realizao do teste de segurana de forma satisfatria. A grande vantagem de utilizar essa ferramenta que livre de falso-positivo o que acarreta ganho de tempo para anlise de falha, comparando-se com outras ferramentas web scanners, que, na maioria so ferramentas livres, ainda apresentam falhas, embora tenham evoludo bastante nos ltimos tempos. Recomenda-se que seja realizada a utilizao da ferramenta toda vez que houver modificao no aplicativo web, para que no futuro no ocorra problemas maiores e de no ter o site com algum risco de sofrer ataque. A anlise de dados, no contexto do processo de teste de segurana serviu para observar tendncias e identificar oportunidades de melhorias, tanto nas

funcionalidades do site quanto no desempenho dele. Assim passa a evitar repetio de erros no futuro de outros aplicativos web. A utilizao da ferramenta de grande importncia para melhoria da segurana do site, visto que, por mais que seja eficiente a web scanner, nem sempre podem encontrar as falhas de segurana num aplicativo web, sempre h o que testar para chegar, o melhor possvel a segurana do aplicativo web.

Referncias
COSTA, M. L.S.; MALDONADO J. C. Processos de desenvolvimento de portais web. Uma reviso sistemtica. Relatrio tcnico, ICM-USP/SC, So Carlos/SP, Brasil, 2008. HOPE, P., WALTHER, B. Web Segura Guia de Teste e Solues. Rio de Janeiro, Ed. Alta Books, 2009. PRESSMAN, Roger S. Engenharia de Software. 6 ed., So Paulo: McGrawHill,2006. TRAYAH R. MOREIRA Filho, RIOS Emerson, Projeto e Engenharia de Software Teste de Software 2 ed.; Ed. Alta Books, 2003.

Ferramenta Netsparker

http://www.mavitunasecurity.com/communityedition/