Transformação Digital no Desenvolvimento de Aplicações: o início
Para as novas gerações, a transformação digital pode parecer uma realidade que sempre esteve presente. E mesmo quando falamos sobre a importância de Appsec na Transformação Digital, pode soar algo óbvio.
Mas aqueles que viveram o cenário dos negócios antes dos anos 2000, provavelmente se lembram de como estas mudanças foram um marco e causaram uma verdadeira reviravolta no universo empresarial.
Pensar em comprar coisas pela Internet, movimentar suas contas, trocar imagens e músicas: estes fatores já foram considerados mudanças revolucionárias que guiaram totalmente a forma como os negócios são pensados hoje.
Este movimento, que mais tarde passou a ser chamado de Digital Transformation, consistia no uso da tecnologia em prol de mudanças e melhorias na forma como um negócio é pensado.
O que é Digital Transformation?
Para resumir, podemos dizer que Digital Transformation é a utilização das tecnologias digitais em todas as áreas dos negócios, fundamentalmente modificando o negócio para entregar mais valor ao cliente.
Mas não podemos deixar de citar que Digital Transformation implica em uma mudança cultural, o que acaba gerando a necessidade das empresas passarem por constantes ajustes internos.
Quando falamos em mudança cultural, podemos aproveitar a visão de James Bilefield, que defende que “a cultura é a parte mais difícil de se mudar na organização“. Isso vai de encontro com a ideia de que grandes mudanças dentro das estruturas dos negócios devem, inevitavelmente, ser acompanhadas por mudanças culturais.
Como vimos, a transformação digital não é algo tão novo, este processo já vem sendo moldado desde os primeiros momentos das grandes empresas digital no início dos anos 2000.
Neste artigo bastante interessante publicado no Wallstreet Journal no ano de 2011, Marc Andreessen já dizia que o “software está engolindo o mundo” em uma clara referência às mudanças que até então estavam acontecendo de forma muito rápida.
Principais mudanças da Transformação Digital
Já sabemos que as mudanças causadas pela introdução da Digital Transformation no mercado foram muitas, portanto vamos focar naquelas que realmente dizem respeito ao mundo de AppSec na Transformação Digital.
No início do movimento digital, a principal preocupação dos executivos e dos técnicos era proteger suas fronteiras físicas.
Este comportamento era basicamente uma reprodução do modelo até então adotado pelas grandes nações, que colocavam barreiras de proteção para que o mundo exterior interferisse o mínimo possível em seu sistema.
No entanto, se analisarmos o cenário digital atual, este tipo de comportamento já não condiz com a realidade.
Isso porque a Digital Transformation nos dias de hoje está muito mais ligada a um complexo conjunto de ações, que devem ser feitas em vários setores da empresa para manter o negócio ativo.
Mas no início, a área de segurança era basicamente uma grande área de técnicos, voltados quase que exclusivamente para a proteção da rede e seus limites físicos. Ou seja, pouco se preocupava com software.
Já nos dias de hoje, o que percebemos é que o software, como ponto de preocupação e mesmo de superfície de ataque, já superou as preocupações com segurança em estrutura de redes, como nos mostrou o relatório da Verizon em 2018 sobre investigações de vazamento de dados.
Porém, isso não quer dizer que não devemos nos preocupar com segurança em um nível estrutural, mas sim que as prioridades mudaram, dando mais visibilidade à proteção de software.
Essas mudanças, inclusive, são bastante previsíveis: o software hoje é centro das operações de empresas que adotaram a Digital Transformation.
Application Security na Digital Transformation
Já sabemos que uma falha em um software pode levar as empresas a sofrerem grandes perdas.
Por isso, Legislações, Normas e Regulamentações estão surgindo e sendo atualizadas a cada dia, de maneiras distintas em vários países.
Essa realidade tem trazido à tona discussões acerca da proteção de dados dos usuários de sistemas digitais. Afinal, são eles que acabam sendo as principais vítimas dessas falhas.
Mas se avaliarmos a partir de uma perspectiva do desenvolvimento, a Digital Transformation trouxe grandes mudanças e novas formas de se pensar em segurança de aplicações.
A partir dessa demanda, novas metodologias foram criadas, novos processos desenvolvidos, e tudo com o objetivo de entregar produtos digitais cada vez mais seguros para o consumidor final.
No entanto, mesmo com estas evoluções, temos que perceber que as mudanças podem também trazer pontos desfavoráveis.
Podemos perceber que o mercado se tornou cada vez mais exigente e mais rápido, e isso teve um impacto muito grande sobre a produção de softwares.
Portanto, com a rapidez que hoje se atribui à produção de software, mesmo com muitas metodologias nos mostrando as melhores práticas, as áreas de desenvolvimento são quase que obrigadas a pular etapas.
O que acaba acontecendo, nestes casos, é que esta otimização no processo de produção de software pode acabar levando a área de desenvolvimento a desconsiderar etapas que seriam muito importantes para AppSec na transformação digital. E isso precisa ser revisto com uma certa urgência.
AppSec na Transformação Digital: o desafio
Apesar de muitos já terem percebido que a falta de atenção adequada com o desenvolvimento de software possa estar levando a aplicação a um nível de risco, são poucos os que realmente buscam soluções neste processo.
Por isso, acreditamos fortemente que precisamos ajudar o mercado a ver o desenvolvimento de software como uma das primeiras barreiras que devem ser levantadas quando o assunto é segurança.
Se imaginarmos que hoje a grande maioria de negócios está na Internet, e estes negócios são suportados por aplicações expostas diretamente a ela, proteger estas mesmas aplicações é uma missão urgente.
Como minimizar os riscos?
Já sabemos que a transformação digital já está acontecendo e é inútil tentar impedi-la. Neste ponto, a melhor medida é ter cuidado para que estas melhorias não tragam consigo mais riscos que o necessário.
Mas por que isso não está sendo feito da forma correta?
Para que a transformação digital aconteça de forma segura dentro das empresas, acreditamos que alguns pontos devam ser observados, e vamos listar estes pontos abaixo.
1. Conheça o grau de exposição
Muitas empresas ainda não possuem uma visão clara do quanto estão expostas. Esta visão é muito reforçada pela ideia equivocada de que a aplicação em si não já se encontra segura, e por experiência sabemos que isso não é verdade.
Em uma pesquisa realizada pelo Instituto Ponemon podemos notar que há uma grande diferença quando questionamos gestores técnicos e não técnicos quanto a suas impressões sobre a real situação da segurança em seus negócios.
Para os gestores não técnicos, a segurança relacionada a aplicativos está sendo bem conduzida e os problemas de vulnerabilidades em suas aplicações são pequenos e irrelevantes.
Por outro lado, quando o mesmo questionamento é feito aos gestores técnicos, podemos ver que o entendimento é completamente diferente. Isso porque estes não conseguem dizer com tanta certeza e confiança como é o grau de segurança de suas aplicações.
Se só tivéssemos este dado na pesquisa, já seria um grande ponto de alerta. Mas a pesquisa aponta ainda mais dados sobre cybersecurity que fazem valer a leitura de todo o documento.
2. Acompanhe mudanças no processo de desenvolvimento
Por sua essência mutável, a Digital Transformation exige dos desenvolvedores de software a constante evolução e a rápida disponibilização de novas soluções.
Estes fatores sozinhos já são bastante significativos para dificultar a produção de um software com planejamento, recurso e tempo adequados para que o resultado seja um software seguro.
No entanto, a questão da velocidade na produção de software leva as empresas a por vezes buscar atalhos, utilizando-se de metodologias mais recentes de desenvolvimento.
Podem até mesmo chegar a usar partes de softwares de terceiros, que muitas vezes não recebem a atenção adequada com relação a segurança deste código.
Este procedimento só irá chamar a atenção quando o software estiver em produção e apresentar vulnerabilidades e ou for afetado por um vazamento de dados. Ou seja, em ambos os casos, o cenário é bastante desfavorável.
A adoção de metodologias como DevOps gerou grande adesão por parte das empresas com base em produtos digitais.
No entanto, o método pode acabar agregando também pontos negativos, já que mesmo adotando o desenvolvimento contínuo, pontos básicos de segurança são deixados de lado em detrimento da velocidade de entrega de produtos.
3. Melhore a Segurança de Aplicações
Acreditamos que é muito importante ter um olhar cuidadoso com o objetivo de melhorar o processo de desenvolvimento, mas para isso é preciso observar alguns pontos que irão garantir uma transição menos trabalhosa para essa evolução.
A adoção de um processo bem estruturado e que não impacte no prazo de entrega, criando uma esteira de produção aliada à constante revisão, nos parece ser uma boa solução.
Por isso acreditamos que o processo de Continuous Application Security pode ser uma dos alicerces que trarão mais segurança para este processo de mudanças digitais que as empresas vêm buscando e vai de encontro com AppSec na transformação digital.
4. Invista em treinamentos
É imprescindível dar o conhecimento necessário para as equipes de desenvolvimento. As técnicas evoluem, assim como a tecnologia, e é por isso que temos que manter um constante calendário de treinamentos atualizados e alinhados com as melhores práticas do mercado.
Essa é a melhor forma de garantir que os desenvolvedores da sua equipe estarão em contato com conhecimento atualizado sobre os cuidados necessários quando falamos em segurança de aplicação e desenvolvimento seguro.
Aqui existem alguns bons exemplos de que treinamentos regulares podem trazer melhores resultados.
Você pode também investir na formação de líderes de segurança dentro das equipes de Desenvolvimento contratando um reforço externo. Os Security Champions são profissionais que ajudam a fomentar a cultura da segurança de dentro para fora nas empresas. Falamos um pouco mais sobre eles neste artigo de nosso blog.
Ainda usando como base a pesquisa que citamos anteriormente do Instituto Ponemon, 60% dos executivos técnicos responderam entender que mesmo confiando na evolução de ferramentas e no uso de inteligência artificial, equipes bem treinadas podem reduzir o grau de exposição de seus produtos.
É interessante observar que mesmo tendo este grau de entendimento, poucas são as empresas que possuem um cronograma periódico de treinamento. E isso mesmo considerando treinamentos oferecidos pela própria empresa ou baseados em conteúdos ofertados digitalmente.
A criação e execução de um cronograma de treinamento pode ser o grande diferencial para as empresas.
5. Teste a estrutura regularmente
Um segundo ponto, mas não menos importante é entendermos a necessidade de constantes testes em nossa estrutura e em nossas aplicações.
Isso porque a realização periódica destes testes pode trazer para a empresa uma visão mais clara de como está a segurança de sua estrutura e de suas aplicações.
Vale lembrar que os testes podem ser executados tanto por analistas internos treinados ou mesmo por empresas terceiras, especializadas na realização deste tipo de pentests e validação de segurança.
Podemos dizer ainda que outro grande benefício da realização dos testes de maneira sistemática é a construção de um banco de dados. Isso poderia então ajudar a identificar problemas nas mais diversas áreas de desenvolvimento, principalmente no que se refere ao conhecimento dos desenvolvedores.
AppSec na Transformação Digital: atualização contínua
Claro que apenas estes cuidados não resolverão sozinhos todos os problemas das equipes de desenvolvimento, mas já ajudam significativamente na construção de um melhor cenário de segurança.
Acreditamos que estes sejam pontos básicos, que devem ser observados para que um movimento interno de segurança tenha início e este movimento inicial pode ser um suporte importante para a digital transformation das empresas.
Isso quer dizer que precisamos perceber que a evolução de um modelo de negócio pode ser conduzido de forma a garantir que todos os aspectos do negócio evoluíram juntos.
Portanto não podemos ter como premissa que a evolução do negócio deve ser puxada por uma área e as demais têm que buscar acompanhar. Dessa forma, acreditamos que uma abordagem conjunta, principalmente olhando a Application Security com mais atenção, pode trazer um resultado bem mais vigoroso e duradouro.