Your SlideShare is downloading. ×
As limitações dos testes automatizados de segurança em aplicações web
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

As limitações dos testes automatizados de segurança em aplicações web

505
views

Published on

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
505
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. As Limitações dos Testes Automatizados de Segurança em Aplicações Web por Eduardo Vianna de Camargo Neves 03 de novembro de 2011O Cenário de InsegurançaDe acordo com o relatório “State of Web Application Security” publicado pelo Ponemom 1Institute em abril de 2010 , 70% dos entrevistados nesta pesquisa informaram que nãoacreditam que as empresas onde trabalham alocam os recursos necessários para adequar asegurança das aplicações web, e 34% das vulnerabilidades identificadas não são corrigidas. Osresultados dessa amostragem podem ser ainda comparados com dados do Gartner Group queposiciona 75% dos ataques realizados tendo como alvo este tipo de componente e oscrescentes casos de vazamentos de informações como resultados de ataques contra aplicações 2web .Como resposta a este cenário, as empresas realizam testes de segurança em suas aplicaçõesweb como parte de um processo de melhoria, onde uma ou mais abordagens podem serempregadas para identificar vulnerabilidades e apresentar recomendações que aumentem onível de proteção destes componentes. Porém, as falhas continuam a ser identificadas e quandochegam ao público, colocam as empresas afetadas em situações onde suas marcas são 3negativamente expostas e a chance de retaliação legal de Governos e pessoas é real .Um dos diversos motivos que geram este tipo de situação, é a falta de entendimento entre aabordagem que deve ser utilizada para conduzir os testes de segurança e os resultadosesperados. Além da quantidade de esforço alocado ser proporcional à efetividade naidentificação de vulnerabilidades – e muitas vezes este fator ignorado – existem diferentesformas de testes a serem conduzidos.Além da óbvia semântica que diferencia testes automatizados ou manuais, a forma de usodestas abordagens e o entendimento dos resultados gerados, são aspectos fundamentais parauma avaliação de segurança adequada e resultados que possam efetivamente ser utilizadospara elevar o nível de proteção em uma aplicação web.O Papel dos Testes de Segurança AutomatizadosConhecidas no mercado como web security scanners, as ferramentas utilizadas para a execuçãode testes de segurança automatizados são comercializadas por diversos fabricantes, comcaracterísticas e tecnologias proprietárias as diferenciando, mas em comum, todas funcionamvasculhando o conteúdo e estrutura do web site e comparando os resultados obtidos com suasbases de dados, onde comportamentos que indicam vulnerabilidades potenciais e apresentandoos resultados em um relatório configurado para estabelecer níveis de criticidade, auxiliando os1 Disponível após registro em http://www.imperva.com/resources/analyst.html2 Dados disponíveis após assinatura em http://www.gartner.com/technology/home.jsp3 Como ocorrido recentemente com a AT&T, conforme notícia publicada pelo Portal G1 emhttp://g1.globo.com/tecnologia/noticia/2010/06/site-diz-que-falha-em-ipad-vazou-dados-sigilosos-de-114-mil-usuarios.html.
  • 2. Camargo Neves RMSresponsáveis na tomada de decisão de onde corrigir primeiro. Com isso, um web securityscanner identifica com velocidade muitas vezes superior a uma análise manual, as falhas nodesenvolvimento da aplicação web (ex.: falha de autenticação) e vulnerabilidades que estejampresentes em bases de dados (ex.: abertura para execução de exploits em PHP).Apesar de serem excelentes ferramentas para serem incluídas no processo de testes eobrigatoriamente ser parte da caixa de ferramentas de um analista de segurança, algumasobservações devem ser consideradas no uso deste tipo de produto: A cobertura dos testes é genérica e resulta na identificação somente de falhas conhecidas, não considerando os problemas gerados por falhas na lógica utilizada para a construção da aplicação web e customizações que tenham sido feitas no código-fonte do produto. A velocidade na obtenção dos resultados pode dar uma falsa sensação de redução de tempo para a conclusão do processo. Existem etapas prévias de configuração do produto que devem ser consideradas, e o tempo dedicado de um técnico para a avaliação de resultados com remoção de falsos positivos e análise de falsos negativos.Em processos onde é necessário realizar um teste somente por questões de compliance com umpadrão e existe uma forte limitação de orçamento para a empresa ir além dos testesautomatizados, a melhor opção acaba sendo optar por um teste automatizado, uma vez que umteste manual realizado por um profissional sem experiência nunca vai alcançar o mesmo nívelde eficiência entregue por uma boa ferramenta automatizada.Porém, é fundamental entender que o papel fundamental de um web security scanner é fornecerao analista de segurança resultados que serão posteriormente analisados para adequar aqualidade das vulnerabilidades identificadas – o que supera a simples remoção de falsopositivos e entra na investigação de causa das mesmas – e ainda fornecer subsídios para testesmanuais complementares.Os Testes Manuais de SegurançaOs testes manuais de segurança são muitas vezes ignorados pelos responsáveis na segurançade uma aplicação web, pois parecem apresentar resultados factíveis somente quando o técnicoque realiza as análises tem um conhecimento que agrega competências em diversas práticasque vão de protocolo HTTP até programação na linguagem utilizada para o desenvolvimento daaplicação web em questão.O motivo deste equívoco é colocar todos os testes manuais em um mesmo cenário, uma vezque existem abordagens complementares que são diferentes, devem ser adotadas de acordocom o tipo de resultado que se quer e cuja alocação de esforço pode ser dimensionada deforma pontual com resultados vantajosos.As Limitações dos Testes Automatizados de Segurança em Aplicações Web Página 2
  • 3. Camargo Neves RMSExistem dois tipos de testes que podem ser aprofundados ou enriquecidos com novoscomponentes de acordo com o objeto de análise: Web Penetration Test: Conduzido de forma similar aos testes realizados pelos web security scanners, buscam vulnerabilidades que possam ser exploradas, porém incluem testes que não são realizados por ferramentas, tais como na lógica de negócio utilizada no produto, e nos relacionamentos que possam existir entre as vulnerabilidades. Code Review: Foca na análise de segurança do código-fonte da aplicação web, buscando falhas que possam ser exploradas pela manipulação deste. Não só exige um bom conhecimento de programação do analista responsável, como ainda deve ser usada somente em casos específicos, tais como na avaliação contínua de releases de uma aplicação web.ConclusãoUtilizar uma abordagem que utilize as vantagens geradas pela amplitude de um web securityscanner com a profundidade possibilitada pelos testes manuais é a melhor opção em qualquercenário onde o objetivo seja identificar falhas de segurança em uma aplicação web, e nãosomente realizar um processo que seja considerado para um evento de compliance compadrões de mercado. Em resumo, a abordagem ideal deve sempre considerar três etapasmínimas: Avaliação do nível de segurança através do uso de um web security scanner adequadamente configurado para o ambiente informatizado em questão. Considerar os resultados desta avaliação como base para testes manuais, que devem não só fazer uma revisão de qualidade das vulnerabilidades identificadas como ainda explorar falhas potenciais nos elementos de suporte envolvidos, tais como Servidores Web e Bancos de Dados. Produzir relatórios de resultados que permitam ao leitor ir além das vulnerabilidades técnicas – relacionando quais são as conseqüências das mesmas para o negócio que é suportado pela aplicação web – e que contenham ações que resolvam efetivamente o problema, eliminando a vulnerabilidade e se possível apontando a causa que deve ser posteriormente corrigida. Estabelecer o nível de segurança de uma aplicação web somente com os resultados dos testes realizados por este tipo de ferramenta é um convite para estabelecer uma falsa sensação de segurança e deixar vulnerabilidades criticas abertas e disponíveis para serem exploradas em um ataque. Criar e manter um nível de proteção adequado em uma aplicação web é um processo, onde é necessário ir além do óbvio e conhecer não só os componentes das camadas de arquitetura, redes de dados e aplicações envolvidas. É fundamental entender como a aplicação funciona, qual é o nível de interação com os seus usuários e como falhas potenciais podem ser exploradas por pessoas que realmente queiram alocar esforços para cometer uma fraude contra o produto.As Limitações dos Testes Automatizados de Segurança em Aplicações Web Página 3
  • 4. Camargo Neves RMSSobre o AutorEduardo V. C. Neves, CISSP, trabalha com Segurança da Informação desde 1998. Iniciou suacarreira profissional em uma das principais empresas de consultoria do mercado brasileiro,posteriormente trabalhando como executivo de uma empresa Fortune 100 por quase 10 anos. Em2008 fundou uma das primeiras empresas nacionais especializada em Segurança de Aplicações ehoje se dedica a prestar serviços de consultoria nas práticas de Risk Management e BusinessContinuity. Serve ainda como voluntário no OWASP e (ISC)2 e contribui para iniciativas deevangelização nas práticas de proteção da informação para federações e associações no Brasil.Pode ser contatado pelo e-mail eduardo@camargoneves.com.As Limitações dos Testes Automatizados de Segurança em Aplicações Web Página 4