O DevSecOps é uma demanda presente hoje porque as empresas de software sofrem alta pressão por atualizações constantes e velozes. Processos de desenvolvimento de meses e anos não são aceitos com a naturalidade de tempos passados.

Contudo, a implantação de metodologias ágeis como prática agregada ao processo tem limitações. A alternativa aqui é a adoção de processos rápidos em sua concepção com a segurança inclusa nas demandas estruturais do processo, ou seja, estamos falando de corrigir possíveis falhas antes mesmo delas nascerem. É disso que se trata o DevSecOps, que você vai entender melhor agora:

O que é DevSecOps?

É um processo de desenvolvimento de software (Dev) que combina segurança (Sec) e a operação em TI (Ops). Isso significa que o processo de desenvolvimento usa de uma metodologia proativa, no sentido de pensar a segurança e a eficiência operacional em cada linha de código.

O objetivo é melhorar a qualidade de entrega ao promover um maior alinhamento do desenvolvimento com a operação, com atenção especial à experiência de uso e, do mesmo modo, à segurança.

O modelo DevSecOps pode ajudar a evitar o lançamento de software com armadilhas que abrem caminho para violações, pois identifica as vulnerabilidades de segurança nas fases iniciais do ciclo de desenvolvimento — planejamento, projeto e codificação.

Quais suas diferenças para o DevOps?

O DevSecOps (desenvolvimento + segurança + operação) pode ser visto como a evolução do DevOps (desenvolvimento + operação). Essencialmente, o DevOps está concentrado em agregar as melhores práticas de desenvolvimento de software e, obviamente, envolve segurança.

Contudo, no caso do DevSecOps a segurança ganha um status especial e mais compatível com os desafios atuais de proteção. No lugar de apenas agregar rotinas de desenvolvimento para atender a critérios de segurança, a metodologia adotada pensa nessas práticas de maneira mais estrutural, ou seja, em vez de acionar mecanismos de segurança para corrigir vulnerabilidades, o objetivo é construir um código inatacável — dentro do possível.

O DevOps é uma cultura e prática de engenharia de software que visa unificar o desenvolvimento e a operação e, por isso, tem sido cada vez mais adotada, mas a segurança ainda é uma medida posterior nesse modelo. O DevSecOps é a alternativa que visa antecipar essa preocupação.

Qual sua importância no cenário de Transformação Digital?

As empresas agora têm um ambiente de desenvolvimento contínuo. Os sites de comércio eletrônico operam com alto tráfego todos os dias. No entanto, esse modelo não é escalonável além de um ponto determinado e não atende aos requisitos de empresas digitais da nova era sem agilidade e segurança.

A preocupação com a privacidade tem sido recorrente atualmente, e algumas empresas se veem forçadas a adotar políticas de auditoria e de correção para evitar problemas. Além de sujeitar a marca a uma avaliação negativa de seu público, as deficiências de segurança motivam iniciativas de regulação governamental para proteger os consumidores.

Essas novas normas já foram adotadas em vários países e na Comunidade Europeia, com o GDPR. No Brasil, já temos um projeto aprovado no Senado que visa impor sanções a problemas de violação.

Nesse contexto, as medidas de segurança tradicionais são impotentes para resolver o problema. Na maioria dos casos, elas funcionam mais como uma manifestação de boa vontade do que propriamente como ações efetivas.

Sendo assim, as empresas devem se esforçar para minimizar as vulnerabilidades, ou estarão sujeitas a toda espécie de problemas com sua reputação – sem falar na disseminação da Transformação Digital trazendo novos desafios no futuro.

Para ter uma ideia da magnitude dos desafios de segurança, basta pensar nas implicações do escalonamento da Internet das Coisas (IoT). Estamos nos referindo a um número interminável de sensores conectados em uma grande rede e coletando inúmeros dados.

Reagir a eventuais ataques seria como “enxugar gelo”. Para ter sucesso, essa ação reparadora demanda pela minimização de vulnerabilidade na concepção e desenvolvimento, senão como solucionaríamos esse problema?

Leitura complementar: Os desafios da Cibersegurança: como evitar os males da inovação?

Além disso, também existe a questão da agilidade. Independentemente do aspecto da segurança, o alinhamento entre desenvolvimento e operação é indispensável para manter a competitividade ao atender rapidamente os requisitos impostos por um mercado volátil, em constante transformação.

Como implementar a cultura DevSecOps de forma funcional e efetiva?

O DevSecOps requer colaboração entre os grupos de desenvolvimento, segurança e operações, envolvendo todos os aspectos do projeto. Porém, isso pode causar certa resistência de parte da equipe, seja por um baixo conhecimento sobre segurança do time de desenvolvimento, seja pela ideia de que essa preocupação atrasará o processo.

Porém, quando uma empresa acelera o desenvolvimento ao pular etapas para identificar falhas em código não testado, obtém ganhos impensáveis ​​nos modelos tradicionais. Isso porque a maioria das violações de segurança explora uma vulnerabilidade do software.

As equipes de segurança devem determinar se as ferramentas existentes podem ser integradas em um ambiente DevSecOps. Além disso, precisam identificar soluções alternativas onde forem necessárias e procedimentos/controles que necessitam ser atualizados ou adaptados.

Conforme as organizações adotam o DevSecOps, é aconselhável que tomem as seguintes medidas:

  • adaptem as ferramentas e processos de testes de segurança aos desenvolvedores;
  • concentrem-se na identificação e remoção de vulnerabilidades críticas desde o desenvolvimento;
  • treinem todos os desenvolvedores sobre os fundamentos da codificação segura.

No entanto, a adoção do DevSecOps envolve questões culturais que precisam ser trabalhadas para tornar a preocupação com a segurança um comportamento natural. As equipes devem construir sinergia, e o processo precisa ser totalmente compreendido. A mesma característica sistêmica do produto desenvolvido deve ser incorporada ao próprio desenvolvimento.

Essa pode ser uma tarefa mais complexa em grandes empresas de software, uma vez que nelas existe uma interação menor entre os departamentos. Mas o modelo tradicional, no qual as áreas da organização atuam com certa independência, não é compatível com a prática do DevSecOps e tão pouco a qualquer softwarehouse, não importa o porte.

Além disso, a escalabilidade na nuvem exige a incorporação de controles de segurança em uma dimensão proporcional. A modelagem contínua de ameaças e o gerenciamento de compilações de sistemas são necessários à medida que os negócios impulsionados pela tecnologia evoluem em ritmo acelerado.

Diante dessa realidade, alguns componentes são fundamentais ao pensar em uma abordagem DevSecOps:

  • gradualidade de código: entrega em partes menores para rápida identificação de deficiências;
  • gerenciamento de demandas: aumento da eficiência e da velocidade;
  • monitoramento de conformidade: provisão para auditoria de conformidade a qualquer momento;
  • investigação de ameaças: identificação e resposta imediata a potenciais ameaças;
  • avaliação de vulnerabilidades: identificação de problemas e monitoramento do tempo de resposta e de correção;
  • treinamento: é uma das principais ações de mudança. A cultura não muda sem conhecimento.

Para concluir, considere que a implantação do DevSecOps passa pela consciência de que ela vai exigir dedicação constante. Esse é mais um daqueles processos que têm começo, mas não fim. Mesmo depois de implantado, o modelo precisará ser aprimorado.

Preparada para o DevSecOps?

Esdras Moreira

CEO na Introduce Formado em Redes de Computadores, com especializações em Gestão de Pessoas, Coaching e MBA em Marketing. É co-founder da introduceti.com.br, que conduz o crescimento dos negócios através de estratégias e tecnologias. Além disso é investidor no projeto Globin.it, Middas e Grupo 3Minds.

tecnologiaTecnologia
Mercado As lições de empreendedorismo que tivemos em 2018
Economia Um estudo sobre a economia compartilhada no Brasil e no mundo