Ainda há um longo caminho a seguir no desenvolvimento de softwares mais seguros, porém, a ideia de que os desenvolvedores não ligam para a segurança já se foi há algum tempo. Tenho visto muitas equipes de desenvolvimento mais conscientes das vulnerabilidades que podem afetar a segurança das aplicações e muitos já sabem o que fazer para evitar os problemas de segurança.
Porém, se os desenvolvedores estão se preocupando com a segurança, por que os softwares continuam inseguros? A resposta para isso pode estar na falta de sensibilização e processos estruturados. Para muitos desenvolvedores, o treinamento em boas práticas de segurança de aplicações não fez parte de seu desenvolvimento profissional, dificultando a assimilação das ameaças que podem afetar a aplicação.
Para a maioria, o que se observa é a ausência de uma iniciativa clara e definida para a promoção da segurança em aplicações que seja fomentado pela diretoria.
Essa falta de priorização tem consequências claras no cenário de segurança. Hoje os ataques à camada de aplicativos estão entre as maiores fontes de ameaças, e são um problema sério para as equipes de desenvolvimento e para as empresas. Os departamentos de TI e de segurança também levam parte da culpa por esse problema por não oferecerem aos desenvolvedores processos e ferramentas que permitam inserir a segurança mais cedo no ciclo de desenvolvimento, sem afetar a produtividade.
No fundo, o barco é o mesmo. Todos devem estar dentro dele, remando para a mesma direção.
A ascensão do DevOps e do DevSecOps
O DevOps, cultura de desenvolvimento que busca integrar o desenvolvimento de sistemas e operações de TI para deixar o processo ágil e enxuto, com a implementação de ciclos mais curtos, testes mais rápidos e um maior nível de automação, tem mudado esse cenário, permitindo a criação de softwares mais seguros.
Com o processo de desenvolvimento ágil, foi necessário que os processos de segurança no desenvolvimento também se adaptassem, trazendo a cultura de DevSecOps, que consiste no processo de inserir ações de segurança e pontos de controle em algumas etapas do desenvolvimento de aplicações, seguindo a mesma mentalidade ágil.
Os resultados do DevSecOps costumam ser satisfatórios para a empresa, uma vez que a ideia é construir aplicações mais resistentes desde o início do ciclo de desenvolvimento, em vez de adicionar recursos de proteção apenas no final, algo que pode ser extremamente custoso – um bug descoberto no período de desenvolvimento é relativamente baixo, porém, seu valor vai aumentando na medida em que o processo de desenvolvimento vai avançando, pois a mobilização das equipes é maior.
Porém, isso não é tarefa fácil, pois envolver as equipes de segurança ao processo de desenvolvimento pode causar atritos e desgastes que podem levar ao insucesso dos projetos. E quem perde é a empresa.
Cultura de segurança para sintonizar as equipes
Adotar uma cultura de DevOps e DevSecOps no desenvolvimento de aplicações ainda é um desafio, pois transformam o processo de desenvolvimento em algo multidisciplinar. Apesar disso, os desenvolvedores continuam assumindo a responsabilidade por todo o ciclo de desenvolvimento do software, da codificação à produção.
Para garantir aplicações mais seguras, portanto, não basta integrar equipes, é preciso que a empresa esteja disposta a investir em uma cultura de segurança, envolvendo as áreas de negócio, desenvolvimento e TI, de forma a instituir a segurança como um requisito do negócio, não apenas um recurso adicional. Sem isso, o atrito entre o time de desenvolvimento e a área de segurança continuará, uma vez que ninguém gosta de ter seu trabalho e intelecto criticado em um relatório colorido de alguma consultoria.
Culpar os desenvolvedores pelas falhas de segurança do software não vai ajudar muita coisa. O desenvolvimento da cultura de segurança apoiado pela diretoria, seguido por treinamentos específicos e estruturação de um processo contínuo de verificações reduz o atrito e torna a segurança transparente durante o ciclo de desenvolvimento.
*Por Leonardo Militelli, CEO da iBLISS