ZAP – Zed Attack Proxy

ZAP é um projeto da OWASP (Open Web Application Security Project). Ele é uma plataforma criada para que diversos testes de segurança em aplicações web possam ser feitos de forma dinâmica e automatizada.

É notável que não é possível construir aplicações web seguras se não tem meios de poder testar seu código a procura de brechas de segurança; para a grande parte dos programadores, testes de segurança ainda são coisas muito obscuras.

Utilizando o ZAP, desenvolvedores e especialistas em segurança podem validar diversos aspectos de uma aplicação web e varrer a infraestrutura do site a procura de falhas comuns, principalmente as relacionadas ao OWASP Top 10. ZAP  trabalha dinamicamente, aplicando diversas políticas customizadas de varredura, atuando  como proxy, interceptando as requisições enviadas pelo browser para a aplicação, analisando assim todo o conteúdo acessado, permitindo aplicação de filtros a procura de scripts mal formados e outras anomalias na aplicação que podem ocasionar diversas falhas de segurança.

Vamos verificar algumas das principais features disponíveis nesta poderosa ferramenta.

Uma vez que o ZAP funciona como um proxy, assim como outras ferramentas como WebScarab, ParosProxy e etc, você deve configurar seu browser para iniciar a navegação através do endereço de Proxy Local que está configurado em seu ZAP,  por padrão o valor é  127.0.0.1:8080.

Desta forma toda solicitação de navegação para um website, será interceptada pelo ZAP e ele irá gerar também um histórico de tudo que foi acessado no browser.

zap01

1.0   – Visão Geral das abas da ferramenta e suas funcionalidades.

Ele concentra diversas funcionalidades importantes que são grandes aliadas no momento de avaliar aspectos de segurança em aplicações. Vejamos abaixo algumas destas funcionalidades.

Spider Crawling

Esta funcionalidade consiste em executar uma copia de todos  os arquivos que são visualizáveis no index do servidor web. Quando você inicia o Spider, o ZAP irá fazer uma varredura em todas as pastas visíveis e que são de alguma forma relacionadas através do código da aplicação.

Muitas vezes efetuando um Spider Crawling no site da aplicação é possível baixar arquivos como:

– arquivos de base de dados .mdb;

– arquivos de backup que foram deixados para trás (.bak);

– arquivos de configuração que foram deixados com permissões erradas, muitas vezes arquivos que contém credenciais de acesso a bancos de dados e etc;

– toda uma infinidade de possibilidades que podem ter sido por ventura esquecidas no servidor web durante alguma fase de deploy da aplicação.

zap02

Varredura do Site

Utilizando a opção de varredura ativa do site, o ZAP irá lhe ajudar a procurar por strings vulneráveis a ataques de Cross-Site Scripting, SQL Injection, e etc.

A política de varredura pode ser customizada manualmente, de acordo com a vontade do usuário.  Devo alertar que o uso da Varredura dinâmica, efetua diversos ataques à aplicação, sendo assim nunca utilize isto em sites que você não possui permissão para efetuar a análise.

Outra varredura disponível na estrutura do ZAP é a varredura de portas, onde você pode efetuar um Scan de serviços TCP disponíveis na máquina. Isto pode ajudar a descobrir outros serviços que podem se tornar vetores de ataques mais estruturados, por exemplo FTP, e etc.

zap03

Alertas

Na aba de alertas o ZAP, irá exibir vulnerabilidades encontradas de forma passiva, enquanto você navega. Todas as falhas encontradas serão exibidas, e catalogadas de acordo com o nível de criticidade, e todos os forms onde a falha for encontrada, poderão ser visualizados de forma completa.

Geralmente as falhas mais mostradas são, falhas no gerenciamento de cookies de sessão, falha de criptografia em sessão padrão ativa, por exemplo aplicações que usam tokens de autenticação SESSIONID padrão e que podem ser facilmente quebrados e muitos outros. Os forms identificados com as vulnerabilidades aparecem com uma bandeirinha ao lado na barra lateral:

zap04

Sem dúvida o ZAP é uma aplicação que deve fazer parte do kit de desenvolvedores e especialistas em segurança que gostariam de automatizar algumas varreduras em aplicações.

Como ele é um proxy, você pode utiliza-lo concatenado com alguns outros como por exemplo, WebScarab ou o próprio ParosProxy que já faz parte da API do ZAP.

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s