Ir para seção

O que é a segurança da cadeia de suprimentos de software?

Copiar URL

A segurança da cadeia de suprimentos de software combina práticas recomendadas de gerenciamento de riscos e cibersegurança para a proteção contra possíveis vulnerabilidades. A cadeia de suprimentos de software é composta de tudo e todos que acessam seu código no ciclo de vida de desenvolvimento de software (SDLC), do desenvolvimento de aplicações até o pipeline de dados e implantação de CI/CD

A cadeia de suprimentos inclui redes de informações sobre o software, como os componentes (por exemplo, infraestrutura, hardware, sistemas operacionais (OS), serviços em nuvem etc.), as pessoas que escreveram os códigos e as fontes deles, como registros, repositórios GitHub, bases de código ou outros projetos open source. Ela também inclui quaisquer vulnerabilidades que possam afetar negativamente a segurança do software , e é aí que entra a segurança da cadeia de suprimentos de software.  

 

A maioria dos softwares não é escrito do zero. Geralmente, é uma combinação de artefatos de software que contêm software open source. No entanto, esses artefatos de software estão sujeitos a vulnerabilidades, e os desenvolvedores têm menos controle sobre o código-fonte de terceiros ou às alterações feitas no artefato ao longo do tempo. É importante observar que software sem a aplicação de patches é mais suscetível a problemas de segurança. Como o software é fundamental para executar as operações de negócios diárias, a segurança da cadeia de suprimentos é uma responsabilidade essencial de todas as organizações e equipes de segurança.

A empresa de software SolarWinds teve uma violação em 2020, e os agressores iniciaram código mal-intencionado pelo software de monitoramento e gerenciamento de TI Orion, uma plataforma usada por grandes empresas e agências do governo. Ao atacar a cadeia de suprimentos, os hackers se infiltraram não apenas na SolarWinds, mas também nos clientes dela. O Log4j é um software open source muito usado, porém, amplamente explorado, que deixou inúmeros usuários e organizações suscetíveis a ataques e violações de dados. Em 2021, o presidente dos Estados Unidos destacou a importância da segurança e das cadeias de suprimentos de software com duas ordens executivas da Casa Branca: cadeias de suprimentos e cibersegurança.

Riscos a qualquer componente da cadeia de suprimentos de software representam um possível risco a todos os artefatos de software que dependem do componente específico da cadeia de suprimentos. Isso dá aos hackers a oportunidade de inserir malware, um backdoor ou outro código mal-intencionado que comprometa componentes e respectivas cadeias de suprimentos associadas. Os ataques a cadeias de suprimentos de software, normalmente realizados por agentes que buscam ameaçar lucros e nações, estão aumentando e podem ter efeitos drásticos tanto no mundo digital quanto no físico. Geralmente, eles podem ser classificados em um destes quatro tipos de risco:

  • Vulnerabilidades: são falhas no código do software que podem ser exploradas e levar a uma violação. Aplique patches e atualize seus artefatos de software para minimizar o risco.
  • Licenciamento: é um risco legal que pode obrigar você a transformar artefatos de software resultantes em open source e anular direitos de patente. Consulte especialistas legais nessa área.
  • Dependências de terceiros: são dependências de organizações externas como parte da cadeia de suprimentos de software e são difíceis de detectar. Analise todos os códigos de terceiros e converse com seus fornecedores sobre como eles protegem você.
  • Processos e políticas: são um problema se você não os tiver. Crie políticas para seus desenvolvedores e processos (ou playbooks) para quando precisar reagir a uma vulnerabilidade.

Os vetores comuns de ataque incluem sequestro de atualizações, prejudicar a assinatura de códigos e comprometer código open source. 

O DevSecOps é uma abordagem relacionada a cultura, automação e design de software que integra a segurança como uma responsabilidade compartilhada em todo o ciclo de vida de TI. DevSecOps significa pensar na segurança da aplicação e da infraestrutura desde o início. Também significa automatizar algumas barreiras de segurança para evitar que os fluxos de trabalho de DevOps fiquem lentos. Selecionar as ferramentas corretas para integrar a segurança continuamente, como concordar em implementar um ambiente de desenvolvimento integrado (IDE) com funcionalidades de segurança, é um meio de atingir essas metas.

O Red Hat Advanced Cluster Security for Kubernetes integra verificações de segurança na cadeia de fornecimento do software e fluxos de trabalho do desenvolvedor para detectar e ajudar a solucionar problemas de segurança de alto risco. Ele também automatiza segurança no DevOps oferecendo aos desenvolvedores contexto de segurança nos fluxos de trabalhos existentes. 

A cadeia de suprimentos de software é composta de tudo e todos que acessam seu código. Já a segurança das aplicações protege o próprio código contra ataques e vulnerabilidades. Assim como a segurança da cadeia de suprimentos, a segurança das aplicações deve ser aplicada em todas as etapas do desenvolvimento. 

A segurança das aplicações começa no ciclo de vida de desenvolvimento do software e se estende pelo ciclo de vida da aplicação, com as metas de evitar acesso não autorizado ao seu sistema e proteger dados proprietários. O fortalecimento da integridade da sua cadeia de suprimentos pode aumentar a segurança das aplicações. Fortalecer configurações, minimizar superfícies de ataque, restringir permissões, assinar softwares e distribuir compilações em diferentes partes do seu sistema são maneiras de impedir que os agressores comprometam suas aplicações. 

A segurança da cadeia de suprimentos de software é importante para a empresa, os clientes e qualquer um que aproveite as contribuições open source. Assim como nenhuma empresa quer sofrer violações, a maioria também teme ser responsável pela ocorrência de eventos semelhantes com outras entidades. Por isso, é fundamental implementar proteções na cadeia de suprimentos de software.  

Veja a seguir algumas práticas recomendadas que as equipes de segurança devem considerar:

  • Oferecer o mínimo de privilégios de acesso em toda a cadeia de suprimentos (por exemplo, ferramentas para desenvolvedores, repositórios de código-fonte e outros sistemas de software), habilitar a autenticação multifatores e usar senhas fortes.
  • Realizar treinamentos de segurança frequentes para os funcionários.
  • Fortalecer a segurança de todos os dispositivos conectados e de dados confidenciais.
  • Conhecer seus fornecedores e as pessoas com quem faz negócios, começando com seus fornecedores diretos. Conduzir avaliações de risco para analisar a postura de cibersegurança de cada fornecedor e as políticas públicas sobre vulnerabilidades.
  • Verificar e aplicar patches com regularidade em sistemas vulneráveis.

Os desenvolvedores também devem considerar práticas seguras de codificação, usando bloqueio de arquivos e outras iniciativas com foco em segurança:

  • Validação de somas de verificação.
  • Inclusão de dependências de fornecedor no controle da fonte.
  • Publicação e consumo de lista de materiais de software (SBOM).
  • Adoção de níveis de cadeia para arquitetos de software (SLSA), incluindo:
    • A capacidade de assinar digitalmente seus artefatos de software para autenticar a procedência.
    • Aproveitamento da automação para seus processos e políticas.
  • Verificação do seu software com ferramentas automatizadas de teste de segurança, como análise de composição de software (SCA), testes de segurança de aplicações estáticas (SAST) e testes de segurança de aplicações dinâmicas (DAST).

A Red Hat sabe que é necessário proteger os componentes e as dependências do software no início do ciclo de vida de desenvolvimento, por isso, ela usa práticas de DevSecOps para automatizar a integração de segurança em todas as etapas.  A Red Hat trabalha para entender a cadeia de suprimentos upstream para que você e sua empresa tenham uma solução confiável o tempo todo. Junto a seus parceiros, ela oferece competência e um ecossistema DevSecOps abrangente, além de ajudar as organizações a implementar a segurança da cadeia de suprimentos de software em todo o ciclo de vida de desenvolvimento.

Leitura recomendada

ARTIGO

O que é DevSecOps?

Se você quiser aproveitar ao máximo a agilidade e a capacidade de resposta do DevOps, a equipe de segurança da TI precisará participar de todo o ciclo de vida das suas aplicações.

ARTIGO

O que há de diferente na segurança em nuvem?

As preocupações gerais sobre a segurança afetam os sistemas de TI tradicionais e em nuvem. Descubra qual é a diferença.

ARTIGO

O que é SOAR?

Ele se refere a três importantes recursos de software usados pelas equipes de segurança: gerenciamento de casos e de fluxos de trabalho, automação de tarefas e acesso a meios centralizados de consulta e compartilhamento de informações sobre ameaças.

Leia mais sobre segurança

Soluções Red Hat

Um framework de segurança para gerenciar identidades de usuários e manter a privacidade das comunicações.

Uma solução de segurança empresarial em containers nativa do Kubernetes  que viabiliza a criação, implantação e execução de aplicações nativas em nuvem.

Um serviço de análises preditivas que ajuda a identificar e corrigir ameaças de segurança, desempenho e disponibilidade à sua infraestrutura Red Hat.

Um console individual, com políticas de segurança integradas, para controlar aplicações e clusters do Kubernetes.

Conteúdo adicional