Dmitry Nikolaev - stock.adobe.co
Quais desafios de segurança cibernética os programadores enfrentam?
No marco do Dia Internacional do Programador, a Check Point Software fala sobre os riscos que os profissionais que constroem o mundo digital devem superar e compartilha três dicas para proteger o código.
13 de setembro marca o Dia Internacional do Programador, uma data que celebra o trabalho dos programadores de computador em todo o mundo. A comemoração acontece no dia 256 de cada ano, então em anos bissextos essa data pode mudar, mas a escolha foi feita deliberadamente com base nas complexidades matemáticas do código binário.
Atualmente, o trabalho dos programadores é a base do mundo digital. Não poderíamos imaginar um mundo conectado, em que milhões de pessoas usem dispositivos e aplicativos eletrônicos para fazer compras, transações bancárias, se informar, se divertir, se educar ou até mesmo trabalhar, se não fossem os bilhões de linhas de código que suportam este ambiente digital.
“Quase todos os negócios dependem de infraestrutura e serviços de TI criados (e às vezes mantidos) por esses profissionais. Os programadores de computador estão na vanguarda da inovação e seu trabalho está continuamente reformulando nossas abordagens aos negócios. Além disso, os efeitos da programação tornam os locais de trabalho e os recursos mais acessíveis, equitativos e diversos”, afirmam da Check Point Software.
Segundo a Câmara da Indústria Argentina de Software da Argentina (CESSI), a indústria ultrapassou 130 mil funcionários em 2021, aumentando sua folha de pagamento em 13% em relação a 2020; até 2030, CESSI projeta que haverá cerca de 500.000 programadores.
A segurança por trás dos aplicativos
Na complexa estrutura de programação, é muito difícil evitar lacunas abertas no código, abrindo caminho para a exploração de vulnerabilidades. Para não criar programas muito pesados ou hostis aos usuários, os desenvolvedores muitas vezes sacrificam a segurança pela experiência do usuário. “Muitas vezes, a segurança cibernética fica em segundo plano, mesmo quando isso significa expor seu código e sua empresa aos riscos de uma violação de dados dispendiosa”, alerta a Check Point Software.
O provedor de soluções de segurança detalha que as organizações tiveram um aumento de 59% nos ataques cibernéticos no segundo trimestre de 2022, em relação ao mesmo período de 2021. O aumento nos ataques mostra a relevância de incluir o que é chamado de segurança nativa, ou segurança de código, para impedir que as falhas de segurança sejam exploradas por invasores.
Práticas como DevSecOps (sigla em inglês que combina as palavras desenvolvimento, segurança e operações), visam integrar a segurança continuamente no ciclo de vida do DevOps (desenvolvimento e operações). “DevOps revolucionou a forma como o software é desenvolvido e implantado, introduzindo um ambiente mais colaborativo para desenvolvimento e preenchendo a lacuna entre desenvolvedores e operações. Ao mesmo tempo, garante a flexibilidade para atender às demandas de qualquer consumidor ou mercado”, diz um comunicado da Check Point Software.
“É extremamente importante que as empresas, mesmo as menores, tenham clareza sobre o impacto nos negócios que o abuso de código inseguro ou o uso das informações confidenciais que ele pode conter podem ter. A implementação de práticas de DevSecOps incorporará continuamente a segurança e, assim, reduzirá o risco. Para aproveitar ao máximo todos os benefícios, é muito importante implementar um ciclo de vida de DevOps adequadamente”, explica Alejandro Botter, gerente de engenharia da Check Point para o sul da América Latina.
“O objetivo no final do caminho é proteger o código no início do ciclo de vida do DevOps e não apenas de forma reativa no final”, conclui Botter.
Dicas de software da Check Point para proteger o código
- Dados confidenciais codificados
É comum que o desenvolvedor armazene temporariamente senhas, tokens e chaves de autenticação diretamente no código onde essas credenciais são usadas, pois simplifica esse processo. Por outro lado, do ponto de vista da segurança, é possivelmente uma das piores práticas, pois apresenta risco de exposição de dados confidenciais. O problema é que eles podem esquecer que armazenaram temporariamente essas senhas no código e, quando compartilham ou sofrem um ataque, essas informações confidenciais são expostas. Por esses motivos, essa prática não é recomendada. A Check Point, por meio da Spectral, fornece uma ferramenta para visualizar esse tipo de situação antes que seja tarde demais.
- Canal inseguro
Na engenharia de software, CI/CD ou CICD geralmente se refere às práticas combinadas de integração contínua e entrega contínua (também conhecida como implantação contínua) que é implementada com uma ou mais ferramentas. Um processo de CI/CD inseguro (ou pipeline) pode fazer com que segredos sejam vazados ou comprometidos por vários processos, como máquinas virtuais que executam ferramentas de CI/CD não monitoradas. Proteger o pipeline requer manter segredos com exposição muito limitada. Ferramentas ou serviços online devem ser integrados ao processo de CI/CD para fornecer uma camada adicional de proteção. Ferramentas e serviços online também devem ser empregados para proteger o processo de criação e ajudar a armazenar segredos como dados criptografados, usando a descriptografia "just-in-time" para limitar a exposição durante o armazenamento e o transporte. Essa camada adicional de segurança é ainda mais importante ao proteger materiais extremamente confidenciais, como certificados de assinatura de código.
- Software não corrigido
Hoje, o Git é o sistema de controle de versão moderno mais utilizado no mundo. O Git é frequentemente usado em combinação com outras ferramentas ou serviços para automatizar, proteger e fornecer análises em todo o processo de CI/CD. Atualmente, os cibercriminosos não se limitam a hackear diretamente um alvo. Muitas vezes, é mais fácil e ainda mais lucrativo realizar um ataque à cadeia de suprimentos em ferramentas ou serviços para comprometer várias entidades que os empregam. Para limitar a exposição a ataques da cadeia de suprimentos, é extremamente importante aplicar os patches de segurança da cadeia de ferramentas assim que forem lançados. Você também deve limitar o acesso ao serviço online ao mínimo necessário para operações confiáveis e, claro, realizar backups regulares.