Aplicações em Java ainda valem a pena ?
Autor: Rafael Wolf | Publicado: 2012-08-01T19:25:00-07:00

Depois de protagonizar o primeiro grande ataque a sistemas com Mac OS neste ano, quando uma vulnerabilidade crítica permitiu a infecção de mais de 600 mil Macs, o Java volta a ficar na berlinda. Desta vez, um pesquisador do Centro de Proteção aMalwares da Microsoft publicou um artigo intitulado "Como se proteger de malwares baseados em Java" onde aconselha os usuários a trabalharem sempre com as releases mais recentes da Virtual Machine e, quando for possível, que a deixem desativada para proteger seus sistemas. No caso de não utilizar aplicações Java, a recomendação é de remover completamente o JRE.

Na mesma linha mas um pouco mais radical, Woody Leonhard defendeu em artigo publicado na InfoWorld.com que a melhor opção é mesmo abandonar a tecnologia, substituindo-a o mais rápido possível. O texto abaixo é uma tradução do artigo onde ele expressa sua opinião:

Quatro meses atrás, eu critiquei o Java -- ou, mais apropriadamente, o uso do Java Runtime Environment (JRE) -- no post "É hora de por o Java pra fora da cidade".Quatro meses depois, a situação não melhorou um milímetro. De fato, ela piorou, se piorar é uma opção para o vetor de infecção número 1 em PCs e Macs.Na semana passada, o pesquisador Matt Oh do Centro de Proteção Contra Malware da Microsoft publicou um artigo no TechNet sobre como se proteger contra os malwares baseados em Java. Para enfatizar o ponto, ele deu uma palestra no Black Hat 2012 no mesmo dia, dizendo que a situação com o Java está se deteriorando -- e não somente no Windows."Estamos vendo cada vez mais vulnerabilidades no Java sendo exploradas ... e uma vulnerabilidade no Java pode às vezes ser explorada em multiplas plataformas," disse o pesquisador.O principal ponto de preocupação para Oh são as brechas no sandbox. Se autores de malware conseguirem escapar do sandbox de execução do Java/JRE, eles podem tomar o controle de um sistema, esteja ele executando em Windows, Mac OS X ou Unix. Uma única vulnerabilidade no Java -- como a brecha de segurança "confusão de tipos" CVE-2012-1723, descoberta há apenas algumas semanas, e a velha CVE-2012-0507, que levou à rede de robôs Flashback, com mais de 600 mil Macs infectados neste ano -- pode resultar numa exploração bem sucedida que burle as defesas do sistema operacional simplesmente porque ele está executando o Java.

"A confusão de tipos é uma vulnerabilidade que ocorre quando a verificação de segurança dos tipos feita pelo JRE falha ao se deparar com tipos errados fornecidos a instruções que na verdade trabalham com outros tipos... Alguns dos tipos do Java, como o ClassLoader, podem ser alvos desse ataque. Se a segurança de tipos dessas classes é quebrada, você pode acessar alguns métodos que não deveriam estar acessíveis a processos externos à classe. Esta violação na segurança de tipos leva, em última análise, ao comprometimento do sandbox do Java," disse Oh.Para piorar, o fato do programa ser escrito em Java torna mais fácil esconder a violação usando as próprias ferramentas disponíveis e bem documentadas da linguagem para embaralhar o código.A recomendação de Oh é que você esteja sempre com o JRE mais atualizado e que o desabilite sempre que possível. Se você não usa aplicações Java, então desinstale o JRE.Minha recomendação para TI é um pouco mais proativa: é hora de retirar seus usuários da esteira do JRE/JVM. Se você tem um produto que requer o JRE, migre-o. Se seus planos de negócio incluem aplicações Java, modifique os planos. Se você ou sua equipe de desenvolvimento programam aplicações client Java, é hora de ampliar suas habilidades.

Ao continuar usando Java, você está colocando sua empresa e seus clientes em risco.

Embora eu entenda as razões dele e concorde com sua argumentação - que é irretocável, considerando-se a agudez da crise atual - acredito que ainda seja cedo pra tomar uma decisão tal radical quanto simplesmente abdicar das aplicações feitas em Java. Digo isso porque me parece que a Oracle vem mantendo um plano razoavelmente consistente de atualizações, apesar de às vezes pecar na velocidade das correções. Veja, por exemplo, o projeto JigSaw e os planos para levar Java para o iOS. 

O ideal, creio, é seguir as recomendações de Matt Oh: manter sempre atualizado o JRE e eventualmente desligá-lo (se possível) quando brechas críticas forem detectadas e a correção demorar.



Fonte: Balaio Tecnológico