Da segurança de aplicativos à segurança da cadeia de suprimentos de software: é necessária uma nova abordagem

Todas as mensagens

A abordagem tradicional para proteger produtos de software concentra-se na eliminação de vulnerabilidades em códigos personalizados e na proteção de aplicativos contra riscos conhecidos em dependências de terceiros. No entanto, este método é inadequado e não aborda toda a gama de ameaças representadas pela cadeia de fornecimento de software. Negligenciar a segurança de todos os aspectos desta cadeia, desde a produção até a distribuição e implantação, expõe as organizações a ataques como malware, violações de dados e roubo de propriedade intelectual. Ignorar esta etapa crítica é um grave desrespeito à segurança da organização.

Neste artigo, examinaremos a tendência crescente de ataques cibernéticos direcionados à cadeia de fornecimento de software, bem como os recentes avanços regulatórios e estruturas de melhores práticas que surgiram em resposta a esse perigo crescente. Também esclareceremos a necessidade de uma nova estratégia para proteger sua cadeia de fornecimento de software, que supere as atuais medidas de segurança de aplicativos. Ilustraremos por que os investimentos atuais em segurança de aplicações oferecem alguma proteção, mas não mitigam completamente os riscos de segurança cibernética nesta área. Por fim, descreveremos o que é necessário para complementá-los para uma proteção integral.

Para o white paper completo clique aqui >>>

Por que proteger a cadeia de fornecimento de software é importante

O uso de ferramentas, bibliotecas e software de código aberto de terceiros no desenvolvimento de software aumenta a complexidade da cadeia de fornecimento de software e o risco de possíveis vulnerabilidades e ataques. Os invasores podem atingir um elo específico da cadeia de abastecimento para obter acesso a informações confidenciais ou interromper operações. Estes ataques podem ter um impacto significativo nas organizações e nos seus parceiros da cadeia de abastecimento. 

As consequências de vários ataques à cadeia de suprimentos de software tem sido manchete nos últimos anos. Como consequência, Gartner previu Recentemente, até 2025, 45% das organizações em todo o mundo terão sofrido ataques nas suas cadeias de fornecimento de software, um aumento três vezes superior ao registado em 2021. 

À medida que a segurança da cadeia de suprimentos de software ganha atenção, vários fornecedores de soluções de segurança de aplicativos estão se reformulando para oferecer soluções nesse espaço. Mas será que a segurança da cadeia de fornecimento de software é simplesmente um novo termo para a segurança de aplicações tradicionais ou é um segmento de mercado distinto com características e tecnologias únicas? Ter um programa de segurança de aplicações (AppSec) implementado é suficiente para abordar a segurança da cadeia de fornecimento de software ou as organizações precisam adotar padrões e tecnologias separados para garantir a segurança de seu software e de sua cadeia de fornecimento? Esta questão será explorada mais detalhadamente no artigo.

Estruturas emergentes de regulamentação e melhores práticas

A Ordem Executiva dos EUA sobre Segurança Cibernética e outros regulamentos semelhantes refletem a importância crescente da segurança da cadeia de fornecimento de software e a necessidade de as organizações tomarem medidas adequadas para proteger o seu software e a sua cadeia de fornecimento. O interesse crescente demonstrado pelos principais intervenientes na introdução colectiva de medidas para combater a ameaça é um desenvolvimento positivo e indica um reconhecimento crescente da necessidade de uma abordagem coordenada e transversal a toda a indústria para enfrentar a ameaça crescente.

Algumas das principais iniciativas para abordar a segurança da cadeia de fornecimento de software incluem: Melhorar as práticas de desenvolvimento de software; melhorar a visibilidade da cadeia de abastecimento; implementação de práticas seguras de aquisição de software; e desenvolver capacidades de inteligência contra ameaças. Globalmente, estas iniciativas visam aumentar a segurança do software e da cadeia de abastecimento, reduzindo o risco de ataques e garantindo que o software está livre de vulnerabilidades e códigos maliciosos.

Abaixo está uma breve visão geral das principais iniciativas:

  1. SP 800-21 do NIST O Secure Software Development Framework (SSDF) visa aumentar a segurança da cadeia de fornecimento de software para fornecedores governamentais dos EUA. Oferece práticas de desenvolvimento seguras para SDLC das organizações para minimizar vulnerabilidades e ameaças futuras. As diretrizes são personalizáveis ​​e independentes do setor. Leia isso whitepaper para saber mais sobre o impacto do SSDF na indústria de software.
  2. O Escritório de Gestão e Orçamento dos Estados Unidos (OMB) divulgou, em 2022, dois memorandos sobre segurança da cadeia de fornecimento de software e o papel dos SBOMs na garantia da segurança e integridade da cadeia de fornecimento de software. As organizações devem cumprir até 2024 e garantir a segurança do seu software e da sua cadeia de fornecimento. As agências federais devem implementar diretrizes, incluindo o compartilhamento de informações e a obtenção de artefatos de fornecedores.
  3. Os níveis da cadeia de suprimentos para artefatos de software (SLSA) Framework é um conjunto abrangente de controles e padrões de segurança projetados para garantir a integridade das cadeias de fornecimento de software. Foi desenvolvido pela OpenSSF, Google e outras partes interessadas em segurança cibernética. Seguindo esta estrutura de ponta a ponta, alterações não autorizadas em pacotes de software podem ser evitadas. A adoção do SLSA pode ajudar a proteger contra ataques comuns à cadeia de suprimentos. 
  4. A Lei de Resiliência Cibernética da UE visa melhorar a resiliência cibernética das organizações na UE. Exige que as organizações disponibilizem SBOMs para todos os produtos de software que utilizam, a fim de ajudá-las a identificar e resolver potenciais vulnerabilidades de segurança desde o início. A lei também exige que as organizações relatem vulnerabilidades ENISA/CERT-UE
  5. O Centro de Segurança da Internet (CIS) desenvolveu o Guia de Segurança da Cadeia de Fornecimento de Software CIS, que cobre as fases da cadeia de fornecimento de software, desde a contribuição do código até a entrega aos consumidores finais. O guia fornece as melhores práticas para proteger a cadeia de fornecimento de software, incluindo o estabelecimento de um programa de segurança, a implementação de práticas de desenvolvimento seguro, a realização de avaliações regulares de segurança dos fornecedores, a implementação de controles de segurança para distribuição e implantação e o monitoramento contínuo de vulnerabilidades e ataques.
  6. Loja de assinaturas é um projeto de código aberto focado na segurança das cadeias de fornecimento de software. Ele fornece um método para proteger melhor as cadeias de fornecimento de software de forma aberta, transparente e acessível. A chave para proteger as cadeias de fornecimento de software é assinar digitalmente os vários artefatos que compõem os aplicativos. A Sigstore pretende tornar a assinatura de software onipresente e mais fácil, fornecendo uma solução simplificada e mais rápida, em comparação com as soluções tradicionais de assinatura digital. O projeto também cria um log de atividades aberto e imutável.

O objetivo e as tarefas da disciplina AppSec

A equipe AppSec em organizações produtoras de software maduras concentra-se na proteção do software por meio de treinamento de desenvolvedores, revisão de código, verificação automática e monitoramento de dependências. As ferramentas mais comuns são testes de software de aplicativos estáticos e dinâmicos (SAST e DAST) para testar aplicativos e análise de composição de software (SCA) para detectar vulnerabilidades conhecidas em dependências de código aberto. 

Para lidar com o cenário de ameaças em evolução, várias soluções mais recentes foram concebidas e adotadas. Uma dessas soluções é o uso de ferramentas de detecção de segredos, que auxiliam as organizações na identificação de segredos como credenciais, chaves de API e dados confidenciais que podem ter sido divulgados involuntariamente no código. Além disso, novas ferramentas de verificação foram criadas para detectar vulnerabilidades em contêineres e infraestrutura como código (IaC) em ambientes de computação em nuvem, permitindo que as organizações garantam a segurança de seus aplicativos durante a transição para a nuvem.

Para gerenciar a vasta gama de ferramentas de segurança, surgiram soluções de orquestração para fornecer uma visão unificada da segurança em todo o SDLC. Estas soluções centralizam a gestão de ferramentas e políticas de segurança, agilizando o processo de segurança e reduzindo o risco de vulnerabilidades perdidas.

Triagem, desduplicação e priorização de alertas de segurança estão entre os principais desafios enfrentados pelos proprietários de AppSec. Pode ser complicado gerenciar o volume de alertas e determinar quais deles exigem atenção imediata e quais podem ser desconsiderados. Além disso, os proprietários de AppSec precisam avaliar o impacto das vulnerabilidades em seus sistemas específicos, o que requer um conhecimento profundo da pilha de tecnologia e dos aplicativos.

A abordagem AppSec abrange o SDLC desde a escrita do código até a construção, empacotamento e teste e é crucial para reduzir vulnerabilidades tanto no código personalizado quanto nos componentes de código aberto, mitigando assim a responsabilidade dos produtores e operadores de software. Os principais fornecedores neste espaço incluem Veracode, Checkmarx, Snyk, Synopsis e Fossa.

O diagrama abaixo oferece uma visão geral simplificada do mercado AppSec, apresentando vários participantes importantes. 

Diagrama

Uma visão simplificada do cenário do mercado AppSec

Embora as soluções AppSec possam ser eficazes na detecção de vulnerabilidades conhecidas e padrões de código inseguros, elas tendem a ser reativas em vez de proativas; eles não reduzem proativamente a superfície de ataque. Além disso, o alto volume de alertas falsos positivos gerados pelos scanners pode dificultar o foco dos desenvolvedores nas questões de segurança mais críticas. O processo de digitalização também pode ser demorado e atrapalhar o cronograma de desenvolvimento, acrescentando atrito ao processo de desenvolvimento e retardando o lançamento de novo software.

O papel emergente da segurança da cadeia de fornecimento de software

As soluções AppSec ignoram áreas do SDLC que podem ser vulneráveis ​​a ataques e que afetam a cadeia de fornecimento de software. Essas áreas incluem ferramentas de desenvolvimento, repositórios de código, sistemas de gerenciamento de código-fonte, servidores de construção e sistemas de registro de artefatos, que podem conter vulnerabilidades e configurações incorretas.

Por outro lado, do ponto de vista dos consumidores de software, uma preocupação comum é que software de terceiros possa introduzir vulnerabilidades de segurança difíceis de detectar e mitigar. É importante que os consumidores avaliem e examinem minuciosamente o software que utilizam, bem como monitorizem-no e atualizem-no regularmente para reduzir estes riscos.

Para superar estes desafios, tanto os produtores como os consumidores de software precisam de adoptar uma abordagem mais ampla. Os produtores de software devem integrar-se em todas as fases do SDLC e aproveitar ferramentas automatizadas para enfrentar ameaças à segurança.

  • Gerenciamento de postura CI/CD – Para proteger a cadeia de fornecimento de software, o SDLC seguro é crucial. O gerenciamento de postura CI/CD automatiza a descoberta e aplica práticas de segurança. A visibilidade do SDLC e o uso seguro da infraestrutura em ambientes de desenvolvimento são um desafio para as empresas atualmente. O gerenciamento de postura de CI/CD deve incluir autenticação de servidor, restrições em repositórios/buckets públicos e expiração de chave. Limitar práticas de desenvolvimento arriscadas, como a execução de recursos não verificados e a referência a imagens alteradas externamente, melhora a segurança do software e reduz o risco de ataque à cadeia de fornecimento.
  • Atestado e Proveniência – Manter a segurança da cadeia de fornecimento de software requer atestado (verificação da autenticidade do software) e rastreamento de proveniência (origem, propriedade e custódia). O atestado e a procedência informam as decisões de confiança, reduzindo o risco de adulteração, vulnerabilidades e segurança inadequada no desenvolvimento, ao mesmo tempo que garantem a conformidade com os padrões do setor.
    Para implementar efetivamente o atestado e a procedência, as evidências de fontes como gerenciadores de código-fonte, ferramentas de CI, servidores de construção, etc. devem ser coletadas e assinadas criptograficamente. As evidências incluem identidade do desenvolvedor, prova de revisão de código, hashes de arquivos/artefatos e postura de segurança das ferramentas. As políticas sobre atestados garantem desenvolvimento e construção seguros, validação de adulteração e conformidade com padrões como SSDF e SLSA.
    As APIs e soluções de observabilidade existentes não podem coletar evidências, assinar atestados e criar rastros de proveniência. Novos agentes devem ser desenvolvidos para rastrear os dados gerados durante o SDLC e assinar evidências de integridade e autenticidade.

Para o mesmo fim, para além do SDLC, tanto os produtores como os consumidores de software precisam de procurar meios para alcançar o seguinte:

  • Conformidade contínua – A verificação contínua ajuda a manter a conformidade e a proteger contra vulnerabilidades mesmo após a implantação. Isso envolve monitoramento contínuo e verificação da segurança dos componentes de software durante todo o processo de desenvolvimento e implantação de software. Um SBOM é uma ferramenta importante para verificação contínua que lista os componentes de software e suas versões usadas em um projeto. Os SBOMs facilitam verificações de vulnerabilidades, ajudam as organizações a se manterem à frente de possíveis ameaças à segurança e garantem a conformidade com regulamentações e padrões como o SSDF.
  • Compartilhe SBOMs e atestados e monitore riscos continuamente – Ter SBOMs e monitorar continuamente riscos potenciais é crucial para manter a segurança e a conformidade do software. Os SBOMs fornecem aos consumidores uma forma de gerir riscos, detectar vulnerabilidades, rejeitar componentes de baixa reputação e garantir a segurança da cadeia de abastecimento através de atestados.

Os quatro pontos acima são os quatro pilares da Segurança da Cadeia de Fornecimento de Software e os critérios para a escolha de uma solução nesta área.

Diagrama

Cenário do mercado de segurança da cadeia de suprimentos de software sobre AppSec

Conclusão

À medida que o desenvolvimento de software e a utilização de componentes de terceiros continuam a expandir-se, a necessidade de uma abordagem abrangente e integrada à segurança da cadeia de fornecimento de software tornou-se cada vez mais importante. As medidas tradicionais de AppSec ainda são importantes, mas já não são suficientes para proteger totalmente contra o cenário de ameaças em evolução, e as organizações devem adotar uma abordagem mais holística para garantir a segurança da sua cadeia de fornecimento de software. 

Para superar os crescentes desafios de segurança, estamos atualmente testemunhando a evolução da segurança de aplicações para a segurança da cadeia de fornecimento de software. Inclui uma nova geração de tecnologias e novas ferramentas que tentam enfrentar estes desafios. Os produtores de software precisam integrar novas tecnologias de segurança que aproveitem estruturas e ferramentas modernas, e devem fazê-lo em todos os estágios do SDLC e usar ferramentas automatizadas, como gerenciamento de postura CI/CD, tecnologia de atestado e proveniência, assinatura contínua de código, conformidade e governança contínuas e SBOMs precisos e de alta fidelidade. Os consumidores de software devem exigir SBOMs e outros atestados baseados em evidências para todos os aspectos de segurança do software que consomem continuamente, antes e depois da implantação do software na produção durante todo o seu ciclo de vida.

Ferramentas e soluções automatizadas como Escriba ajudar as organizações a alcançar um novo nível de segurança, fornecendo uma plataforma contínua de garantia de segurança de código baseada em evidências que pode atestar a confiabilidade do ciclo de vida de desenvolvimento de software e dos componentes de software.

Para o white paper completo clique aqui >>>

Este conteúdo é oferecido a você pela Scribe Security, um fornecedor líder de soluções de segurança de cadeia de suprimentos de software ponta a ponta – fornecendo segurança de última geração para artefatos de código e processos de desenvolvimento e entrega de código em todas as cadeias de suprimentos de software. Saiba mais.