2010 CWE/SANS Top 25 Most Dangerous Programming Errors

O SANS, o Mitre e alguns fabricantes de software de segurança nos EUA e Europa se juntaram e criaram uma relação com as 25 maiores vulnerabilidades de aplicações, assim como o OWASP compila a relação Top Ten de vulnerabilidades (também de aplicações).
Para ler a relação das 25 maiores vulnerabilidades (em inglês), clique aqui.
Comentário meu:
Os desenvolvedores não são os únicos culpados pelas vulnerabilidades existentes nos ativos de informação, mas com certeza tem grande responsabilidade, já que cada vez mais as empresas precisam desenvolver ou customizar suas aplicações web internas e externas, por exemplo. Para comprovar isso basta verificar o número de vagas abertas para programadores nas principais linguagens e bancos de dados usados hoje em dia. Além disso, como há uma tendência crescente de exibição de conteúdo dinâmico em portais e intranets, cada vez mais utiliza-se acesso a bancos de dados e a outros sites para relacionar as informações.
Um dos problemas dessa história é que alguns recrutadores vêem os desenvolvedores como commodities, como sacas de café, por exemplo. Se precisam que uma aplicação seja desenvolvida, vão nos sites de vagas de TI e contratam um, sem levar em consideração o conhecimento em segurança da informação e segurança no desenvolvimento de aplicações (principalmente nas linguagens e bancos de dados que serão usados). Quero dizer que, contratar um serviço personalizado como esse, levando em consideração as regras de negócio (ou necessidades do cliente), as linguagens de programação que serão utilizadas, as particularidades da infraestrutura existente e ainda as vulnerabilidades intrínsecas da comunicação na Internet, não é a mesma coisa que comprar bananas no supermercado. Por outro lado, as empresas investem pouco na capacitação de seus colaboradores, deixando a cargo do indivíduo se manter atualizado no que tange tecnologia e ainda, antenado em relação à segurança da informação, que para a maioria das pessoas é um mundo completamente novo.
O processo de desenvolvimento também está mal formatado em muitos lugares. Deixam para pensar em segurança em uma determinada etapa do projeto, quando muitas vezes já não é mais possível corrigir as vulnerabilidades encontradas, pois seria necessário desconstruir um trabalho de meses. Quando chega nesse nível de complicação, o software acaba indo para a “prateleira” com alguns bugs (leia-se vulnerabilidades) que serão corrigidas no projeto que criará a versão seguinte. Para reduzir esse risco, segurança da informação tem que acompanhar o desenvolvimento em todas as suas etapas.
Guias como esse e o do OWASP servem para preencher essa lacuna de conhecimento, divulgar as vulnerabilidades e permitir a criação de checklists para verificação de código-fonte. Vale a pena conferir ambos os trabalhos!

A Cisco lançou neste mês de dezembro o seu relatório anual sobre segurança da informação, relatando as ameaças de 2009 e tendências globais e recomendações de segurança para 2010.
