Desde que as empresas começaram a enviar seus funcionários para trabalhar remotamente, os profissionais de segurança tiveram que se familiarizar a uma série de ataques cibernéticos que passaram a ser mais frequentes e a vulnerabilidades que se sobressaíram durante a crise, como as reveladas em aplicativos como Zoom e Microsoft Teams.
No caso do Zoom, que só no mês de maio cresceu 30 vezes, boa parte das falhas detectadas se tornou conhecida devido a configurações padrão do aplicativo, que tinham o objetivo de levar conveniência ao usuário – deixando a segurança e a privacidade de lado. Isso permitiu, por exemplo, que hackers pudessem adivinhar URLs do Zoom e ganhar acesso a conferências com pouquíssimas barreiras.
No caso do Microsoft Teams, foi divulgada recentemente uma vulnerabilidade que permitia aos hackers usarem GIFs maliciosos para obter dados de usuários e, finalmente, assumir a lista inteira de contas das equipes de uma organização.
Com o súbito aumento no uso desses aplicativos, as empresas responsáveis pelo seu desenvolvimento têm anunciado uma série de atualizações para corrigir vulnerabilidades exploradas pelos hackers.
Ao contar com a segurança inserida em todos os estágios do desenvolvimento de aplicativos, no entanto, é possível solucionar vulnerabilidades com mais rapidez, evitando falhas que possam ser exploradas. Essa é uma das principais lições deixadas pela pandemia de coronavírus aos desenvolvedores.
O papel da segurança nos diferentes estágios de desenvolvimento
Existem várias maneiras de incorporar a segurança, mas uma das etapas mais críticas para eliminar vulnerabilidades é remover a codificação de credenciais, secrets e chaves de acesso do código do aplicativo. Essas credenciais são importantes para que os aplicativos possam acessar bancos de dados, plataformas na nuvem e outros recursos confidenciais.
Em vez de codificar essas credenciais privilegiadas no aplicativo, é preciso protegê-las, gerenciá-las e monitorá-las usando uma plataforma de gerenciamento de secrets. Os repositórios de código são muito usados, mas com o gerenciamento de secrets, mesmo quando o código é inadvertidamente exposto, não há credenciais comprometidas.
Um dos desafios disso é que os desenvolvedores precisam codificar seus aplicativos para buscar as senhas e credenciais necessárias para acessar os recursos. Embora seja relativamente fácil substituir credenciais codificadas por uma API no início do processo de desenvolvimento, isso pode gerar retrabalho se a equipe esperar até que as credenciais sejam codificadas. Isso, porém, pode ser facilmente resolvido no início do ciclo de vida do desenvolvimento.
Especialmente quando inserem a segurança mais tarde no processo, é comum que os desenvolvedores vejam a segurança como um obstáculo. Neste contexto, a melhor forma de fazer os times de segurança e DevOps trabalharem juntos é transformar os profissionais de segurança em parceiros dos desenvolvedores por meio do desenvolvimento de habilidades básicas para entender o processo de desenvolvimento para que ambos possam se comunicar na mesma linguagem.
Ao mesmo tempo, a equipe de segurança precisa ajudar os desenvolvedores a entenderem as vulnerabilidades de segurança e os desafios de corrigi-las, comunicando os problemas em termos que os desenvolvedores possam facilmente relacionar ao restante do trabalho.
Com isso, ambos os times podem trabalhar juntos com sucesso na construção de aplicações mais seguras, reconhecendo a importância de incorporar a segurança o quanto antes na jornada do DevOps.
Geraldo Bravo, executivo de vendas da CyberArk.