O que é o DevSecOps? Por que é difícil fazer?

Texto traduzido e adaptado de “What is DevSecOps? Why it’s hard to do well“, escrito por Lucian Constantin

O DevSecOps é uma mudança de cultura na indústria de software que visa incorporar a segurança aos ciclos de disponibilização rápida, típicos do desenvolvimento e implantação de aplicações modernas, também conhecido como movimento do DevOps. Adotar essa mentalidade de shift-left testing exige que as organizações fechem essa brecha que geralmente existe entre as equipes de desenvolvimento e segurança, a ponto de muitos dos processos de segurança serem automatizados e gerenciados pela própria equipe de desenvolvimento.

Nos últimos dez anos, houve o surgimento de nuvens públicas, contêineres e o modelo de micro serviços, o que levou ao surgimento da cultura DevOps, onde os desenvolvedores agora podem provisionar e dimensionar a infraestrutura de que precisam.

Embora a cultura DevOps tenha trazido muita inovação ao desenvolvimento de software, a segurança geralmente não era capaz de acompanhar a nova velocidade na qual o código estava sendo produzido e lançado. O DevSecOps é a tentativa de corrigir isso e integrar totalmente os testes de segurança nos pipelines de integração contínua (CI) e entrega contínua (CD), além disso construir também o conhecimento e as habilidades necessárias na equipe de desenvolvimento para que os resultados dos testes e da correção possam também ser feito internamente.

Três aspectos principais criam um ambiente DevSecOps real:

  • O teste de segurança é realizado pela equipe de desenvolvimento.
  • Os problemas encontrados durante esse teste são gerenciados pela equipe de desenvolvimento.
  • A correção desses problemas permanece dentro da equipe de desenvolvimento.

De acordo com Chris Wysopal, co-fundador e diretor de tecnologia da empresa de testes de segurança de aplicativos Veracode, a razão pela qual é difícil alcançar o último passo é que os desenvolvedores precisam desenvolver o conjunto de habilidades necessárias para corrigir erros relacionados à segurança sem orientação externa e isso leva tempo. 

De acordo com Brian Fox, CTO da empresa de automação DevOps e governança de código aberto Sonatype, a integração entre desenvolvimento e segurança também precisa ocorrer no nível de gerenciamento. “Quando a missão de segurança não está totalmente alinhada com a integração completa ao desenvolvimento, de cima para baixo, não acho que você termine com a coisa certa”, disse Fox à CSO. “Você acaba enfrentando esses confrontos no nível gerencial às vezes em que os objetivos são diferentes, mesmo que as pessoas estejam trabalhando no mesmo time”.

Ferramentas e testes do DevSecOp

Nos últimos dois anos, os fornecedores tradicionais de segurança de aplicativos mudaram seus produtos para atender aos dois casos de uso: Para fornecer análises e relatórios necessários aos CISOs e também ter a flexibilidade e a facilidade de uso esperadas pelos desenvolvedores. Alguns provedores de serviços baseados em nuvem voltados para desenvolvedores como o GitHub começaram a adicionar testes de segurança diretamente aos seus serviços . Quando não está disponível como um recurso nativo, geralmente está disponível no mercado do serviço como uma integração de um fornecedor de terceiros

Segundo Wysopal, mais empresas estão integrando verificações de segurança automatizadas como parte dos pipelines de CI / CD, mas os resultados podem não ser imediatamente aparentes devido ao que ele chama de “dívida de segurança”, que é o número de vulnerabilidades que entram na produção porque os desenvolvedores optaram por não corrigi-los.

Isso pode acontecer por vários motivos, incluindo não poder corrigi-los imediatamente, nem planejar corrigi-los porque existem outras atenuações em vigor ou não corrigi-las porque têm uma gravidade mais baixa. Em seu relatório State of Software Security 2019 , que se baseia em dados coletados de verificações realizadas em 85.000 aplicativos ao longo de um ano, a Veracode revela que o tempo médio de correção para vulnerabilidades encontradas nos aplicativos é de 171 dias em comparação ao tempo médio de 59 dias uma década atrás, quando o primeiro relatório saiu. No entanto, isso é distorcido pela dívida acumulada em títulos e o tempo médio para correção permaneceu praticamente o mesmo.

“Assim como as dívidas financeiras, escapar da dívida de segurança requer necessariamente mudança de hábitos para pagar os saldos”, concluiu a empresa no relatório. “A integração do desenvolvimento de software e operações de TI (DevOps) e a integração da segurança nesses processos (geralmente chamados DevSecOps) nos últimos anos certamente mudaram os hábitos”.

Outro benefício de uma verdadeira mudança de cultura em relação ao DevSecOps deve ser que o número de vulnerabilidades sérias que existem no código também diminua. 

Para acessar mais conteúdos como este e ficar por dentro das notícias em segurança da informação, acesse nosso portal e, acompanhe nossas postagens nas redes sociais (instagramfacebooktwitteryoutube).