Este artigo foi publicado na edição 24 da Revista Espírito Livre.
** **A OWASP (Open Web Application Security Project ou Projeto Aberto de Segurança em Aplicações Web) é uma organização mundial sem fins lucrativos focada em melhorar a segurança de softwares, em especial os softwares baseados na web. Sua missão é fazer com que a segurança das aplicações seja visível, de forma que pessoas e organizações possam fazer decisões conscientes a respeito dos verdadeiros riscos de segurança das aplicações.
Todos são livres para participar da organização e de sua comunidade, e esta caraterística atraiu a atenção de diversas empresas, tanto as que trabalham com software livre, como a Fundação Mozilla, quanto as empresas comerciais e proprietárias, como Microsoft, Adobe e Oracle. Além disso, diversas universidades americanas são membros da organização.
Outra característica é que ela tenta se organizar de uma maneira descentralizada através dos chamados “capítulos locais”. Estes “capítulos” são grupos locais formado por pessoas interessadas em ajudar a OWASP a atingir seus objetivos fomentando localmente os princípios e boas práticas pregadas pela organização. O Brasil atualmente conta com dois capítulos: Brasília e São Paulo. Adicionalmente, como forma de divulgação, são promovidos diversos eventos no mundo todo, inclusive no Brasil que, em 2010, teve sua segunda edição do OWASP AppSec.
Para alcançar seu objetivo, a OWASP desenvolve diversos projetos, tanto de software quanto de documentação, e todos eles são licenciados sob licensas livres, tornando o acesso a eles muito fácil e democrático. A seguir detalharei melhor alguns dos principais projetos.
O Top 10 é uma lista dos 10 ataques a segurança de aplicações web mais críticos existentes. Este é, provavelmente, o projeto mais famoso da OWASP e é atualizado frequentemente, sendo que a última versão é deste ano (2010) com a seguinte lista de ataques:
Além de ser um poderoso documento de conscientização, para cada uma das vulnerabilidades listadas são ensinadas formas de evitar que sua aplicação fique vulnerável. Vale muito a pena ler as explicações mais aprofundadas de cada vulnerabilidade e, principalmente, nas formas de prevenção.
O WebGoat é uma aplicação web feita em Java com diversas falhas de segurança feita para ensinar lições de segurança em aplicações web. Em cada lição, o usuário deve demonstrar que entende um problema de segurança explorando a vulnerabilidade do WebGoat. Por exemplo, uma das lições o usuário precisa fazer um ataque de *SQL Injection *para roubar números falsos de cartões de crédito. A aplicação é um ambiente de aprendizado realístico e provê aos usuários dicas e código que explicam cada lição.
O WebScarab é um aplicativo desktop feito em Java (portanto é multiplataforma) utilizado como um proxy web. Após configurar seu navegador para utilizar a porta aberta pelo WebScarab como proxy HTTP, você pode utilizá-lo para analisar todo o tráfego entre o navegador e a aplicação que está sendo acessada, bem como alterar o conteúdo do request enviado originalmente. Assim, ele pode ser utilizado para identificar falhas de segurança em sua aplicação web sem alterar a interface de usuário da mesma.
A ESAPI é uma API de controle de segurança que torna fácil aos desenvolvedores escreverem aplicações com baixo risco. Disponível para as plataformas como Java, .NET, Python e PHP, a ESAPI tem o seguinte design básico para todas as implementações:
O diagrama abaixo mostra todos os módulos os controles contemplados pela ESAPI.
O AntiSamy é uma API utilizada para evitar que código HTML e CSS malicioso afete sua aplicação e evitando, assim, um ataque de XSS. A API faz isso fazendo uma validação do HTML/CSS recebido do cliente e o valida através de uma whitelist, que é uma lista de elementos HTML/CSS seguros de serem aceitos pela aplicação. Ele tem suporte a mensagens de erro amigáveis e suas políticas de validação podem ser personalizadas.
Além de software, a OWASP elabora uma rica documentação sobre o assunto e uma parte desta documentação é composta por três importantes guias:
Como vimos ao longo deste artigo, a OWASP é uma organização bastante ativa e que desenvolve diversos projetos importantes para a melhoria na segurança das aplicações web. O melhor de tudo é que estes projetos são todos liberados sob licenças livres, que facilitam sua adoção e implantação inclusive em empresas.
Além disso, por sua natureza aberta, qualquer pessoa é livre para virar um contribuidor de melhorias e correções para os produtos. Existem projetos muito interessantes ainda em desenvolvimento e que podem ser um local divertido para aprender novas tecnologias e contribuir com o software livre.
Que fique claro, no entanto, que o que eu apresentei foi apenas uma pequena parte do que a OWASP desenvolve. Recomendo fortemente a todos os desenvolvedores de aplicações web que naveguem pelo site e descubram tudo que ela tem a oferecer.
Referências:
Créditos: Grande parte do conteúdo do artigo foi baseado no material do próprio site da OWASP.
No webmentions were found.
No bookmarks were found.
{% endif %}No likes were found.
{% endif %}No links were found.
{% endif %}No posts were found.
{% endif %}No replies were found.
{% endif %}No reposts were found.
{% endif %}No RSVPs were found.
{% endif %}No webmentions were found.
{% endif %}