DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Segurança em Aplicações Java - Java Magazine 82

Neste artigo veremos alguns dos maiores riscos à segurança de aplicações web e como evitar que estes riscos se concretizem, apresentando alguns princípios arquiteturais genéricos e algumas soluções técnicas específicas a cada tipo de risco.






Segurança em Aplicações Java
Como fortalecer sua aplicação web
Toda e qualquer aplicação está sujeita a sofrer ataques mal-intencionados. O que faz a diferença é como você, desenvolvedor, evita que o atacante tenha sucesso

A Segurança da Informação (SI), segundo definida pela ISO/IEC 27002, é a proteção da informação de uma grande variedade de ameaças com o objetivo de garantir a continuidade do negócio e minimizar os seus riscos, ao mesmo tempo em que maximiza o retorno do investimento e as oportunidades de negócio.
Apesar de começarmos esse artigo com uma definição técnica, não temos a intenção de entrar profundamente nos conceitos e variações da SI como, por exemplo, diferenciar Segurança Computacional, Segurança da Tecnologia da Informação ou Proteção da Informação. Nosso objetivo será, a partir de uma abordagem pragmática, apresentar as vulnerabilidades mais comuns que afetam os sistemas computacionais da atualidade e propor algumas contramedidas para aumentar a segurança de nossas aplicações.
A riqueza do assunto de segurança em aplicações Java é enorme, tanto pelas vulnerabilidades que surgem por falhas no desenvolvimento ou quaisquer outras razões, quanto pelas possíveis soluções para cada tipo de ataque existente. O maior propósito deste artigo é despertar o interesse do leitor para esse aspecto por muitas vezes negligenciado no desenvolvimento. Apresentaremos tanto as armadilhas mais comuns quanto algumas recomendações de como evitar cair nelas, tudo com um enfoque exclusivo nas aplicações web.
Neste artigo vamos discutir algumas práticas genéricas que direta ou indiretamente levam à produção de aplicações mais seguras, e em seguida estudaremos os três maiores riscos de aplicações web conforme levantado pelo grupo do OWASP (veja o quadro “OWASP”).
Segurança em Camadas (Defense in Depth)
A Segurança em Camadas é uma estratégia de defesa de sistemas computacionais proposta pela NSA (National Security Agency) que visa à construção de várias camadas de proteção para isolar os possíveis atacantes daquilo que se quer proteger. Esse é um dos conceitos mais importantes da Segurança da Informação e deve-se tê-lo sempre em mente ao montar a arquitetura de um sistema, pois de nada adiantaria colocar um firewall de última geração, ter um antivírus atualizado, fazer a validação de dados no front end e back end de sua aplicação e, ao mesmo tempo, manter uma senha de acesso ao banco de dados armazenada sem criptografia.
Não existe um sistema 100% seguro. A melhor abordagem então é uma combinação de fatores para dificultar o acesso do atacante ao seu alvo, tornando o objetivo dele tão custoso que não valha a pena para ele. Se você fortalece e protege o seu sistema, o atacante irá procurar um alvo mais fácil.
Um exemplo de Segurança em Camadas pode ser visto na Figura 1. Claro que é possível adicionar ou diminuir algumas destas camadas. Tudo vai depender da relação de valor daquilo que se quer proteger versus o custo para instalar e manter esta proteção.

 
Figura 1. Exemplo de Segurança em Camadas.

A Segurança em Camadas extrapola o lado tecnológico e computacional, abrangendo também as Pessoas e os Processos. Veja a seção Links ao final do artigo para ter mais informações sobre esse conceito.

OWASP – The Open Web Application Security Project
Segundo a própria definição do grupo o OWASP “é uma organização não governamental e sem fins lucrativos que se dedica a melhorar a segurança das aplicações”. É um repositório de informações relacionadas à Segurança da Informação, contendo artigos, apresentações, pesquisas, vídeos e muito mais com o objetivo de dar condições às organizações de conceber, desenvolver, adquirir, operar e manter aplicações confiáveis.
Além desse repositório de informações o grupo oferece a oportunidade de criar projetos voltados à Segurança da Informação que contribuam de alguma maneira com a comunidade de Tecnologia da Informação. Basta para isso tornar-se membro – gratuitamente – do OWASP e participar de um projeto ou iniciar o seu próprio, submetendo-o à aprovação do Comitê Global de Projetos. Várias ferramentas estão disponíveis lá e para várias linguagens de programação de Java a .NET, de PHP a Python.
Anualmente o grupo apresenta um artigo com a lista dos 10 maiores riscos à segurança em aplicações web. Essa é uma lista que traz também recomendações de como evitar as falhas que levam à concretização do risco, por isso o OWASP faz questão de frisar que busca atingir a comunidade de desenvolvedores e não apenas a comunidade de segurança de aplicações. A lista divulgada em abril/2010 aponta as seguintes vulnerabilidades:
"


ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    2 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Flaviano De Figueiredo Maia.

Uma sugestão que melhora a leitura dos códigos java no artigo é melhor etruturá-los com identação e número de linhas.

Flaviano
 
[há +1 ano] - Responder

 

Devmedia - Equipe De Moderação
Flaviano, encaminhamos a sua sugestão para o departamento responsável. Obrigado pela mesma.
[há +1 ano] - Responder
 



Publicidade
Autor
Daniel R. Ambrosio

Bacharel e mestre em Ciência da Computação pela USP, tem MBA pela FGV e trabalha com Java há mais de 10 anos, parte destes na Alemanha.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03