Quando você prepara um prato na cozinha, seus ingredientes principais certamente importam. Mas o quanto você pensa sobre a origem de cada um desses ingredientes? Você pensa nos ingredientes desses ingredientes?
Essas são questões sobre a cadeia de suprimentos, e o exemplo reflete sua cadeia de suprimentos de software. Com o uso generalizado de software de código aberto e dependências de terceiros, proteger sua cadeia de suprimentos de software é fundamental.
Nesta publicação, veremos o que compõe sua cadeia de suprimentos de software. Ao longo do caminho, identificaremos ameaças comuns à cadeia de suprimentos de software e discutiremos estratégias básicas para protegê-la.
O que é a cadeia de fornecimento de software?
A cadeia de fornecimento de software se refere ao ecossistema completo de um software. Ela se estende muito além do código-fonte básico do software, incluindo todas e quaisquer dependências que são integradas durante o processo de desenvolvimento — bibliotecas de terceiros, frameworks e outros componentes de software que contribuem para o produto final.
Dentro da sua cadeia de fornecimento de software, você tem dependências de aplicações. Esses são os componentes de software diretos que sua aplicação usa. Cada componente, por sua vez, pode depender de outras bibliotecas, criando uma rede complexa de dependências que podem potencialmente atingir dezenas de níveis de profundidade.
Sua cadeia de suprimentos de software também inclui ferramentas usadas em seu pipeline de integração/entrega contínua (CI/CD). Estas são as ferramentas que você usa para testar, integrar, criar e implementar suas alterações de software. Os pipelines modernos de CI/CD estão repletos de ferramentas — de código aberto e proprietárias — de fornecedores e organizações do mundo todo. Exemplos de capacidades de ferramentas incluem:
- Varredura de infraestrutura como código (IaC)
- Varredura de imagens do container
- Varredura e integrações de registro de imagens
- Controladores de admissão do Kubernetes
- Varredura de imagem em tempo de execução
Ao entender e gerenciar os componentes que compõem seu software, você estará mais bem equipado para manter a integridade e a segurança de toda a sua cadeia de suprimentos de software.
Ameaças comuns à cadeia de fornecimento de software
Quando as organizações pensam na segurança de seus softwares, elas geralmente se concentram apenas nas partes do software para as quais escrevem o código. No entanto, proteger seu software significa lidar com ameaças que podem estar presentes não apenas em seu código, mas em sua cadeia de suprimentos. Essas ameaças à cadeia de suprimentos de software têm o potencial de interromper gravemente suas operações ou comprometer dados confidenciais.
Como as ameaças são introduzidas
Não é incomum que ameaças à cadeia de suprimentos sejam introduzidas por meio de componentes comprometidos. Muitas vezes, são bibliotecas ou ferramentas que foram adulteradas e, então, inadvertidamente integradas ao software por desenvolvedores e criadores de aplicações.
Os invasores também podem explorar fraquezas durante a transferência de dados ou software alvo entre os processos.
O impacto potencial dos ataques à cadeia de suprimentos de software
Ataques à cadeia de suprimentos de software podem levar a resultados graves. Isso inclui comprometimento de dados, acesso não autorizado ao sistema e tempo de inatividade operacional. Os efeitos cascata de um ataque à cadeia de suprimentos de software podem prejudicar a confiança do cliente, gerar consequências legais e resultar em graves repercussões financeiras.
Exemplos notáveis de ataques à cadeia de suprimentos de software
Dos muitos ataques à cadeia de suprimentos de software que foram notícia nos últimos anos, aqui estão alguns dos exemplos mais conhecidos:
- Plataforma SolarWinds Orion: invasores obtiveram acesso não autorizado à rede SolarWinds e então inseriram código malicioso no sistema da Plataforma Orion que abriria um backdoor para os sistemas dos usuários. Com o código malicioso integrado como parte de uma atualização de software subsequente, quase 30.000 empresas e agências governamentais que usaram a Plataforma Orion baixaram e instalaram a atualização, comprometendo involuntariamente suas redes.
- Log4j: uma vulnerabilidade em um módulo de registro para aplicações Java permitiu que invasores executassem código remotamente, dando-lhes acesso às máquinas-alvo. O escopo dessa vulnerabilidade era enorme, pois o módulo Log4j era uma dependência usada por inúmeras aplicações e servidores, incluindo muitos projetos Apache, Elastic Logstash, Minecraft e vários produtos VMware.
Como proteger sua cadeia de suprimentos de software
Proteger sua cadeia de suprimentos de software envolve integrar práticas seguras em todo o ciclo de vida de desenvolvimento de software (SDLC). Ao integrar essas práticas, você pode garantir que uma segurança forte faça parte do DNA do seu desenvolvimento de software, do design à implementação.
Uma ferramenta importante na segurança da cadeia de suprimentos de software é a lista de materiais de software (SBOM). Uma SBOM é uma lista detalhada e legível por máquina de todos os componentes e dependências usados em um software. Essa transparência é crucial para rastrear componentes e gerenciar vulnerabilidades de forma eficaz. Ferramentas automatizadas podem trabalhar com uma SBOM para validar listas em relação a problemas de segurança conhecidos, como um banco de dados de Vulnerabilidades e Exposições Comuns (CVE).
A varredura de containers é outra ferramenta essencial, permitindo a detecção e a remediação de vulnerabilidades em imagens do container antes da implementação. Isso garante que somente containers seguros e em conformidade sejam usados na produção.
Por fim, as ferramentas de gerenciamento de vulnerabilidades e a varredura regular de vulnerabilidades desempenham um papel fundamental na segurança da cadeia de suprimentos de software. Essas ferramentas monitoram as vulnerabilidades continuamente, fornecendo alertas e facilitando a remediação rápida para evitar possíveis ataques à segurança.
Proteja sua cadeia de suprimentos de software com a CrowdStrike
Ao longo desta publicação, analisamos o que compõe sua cadeia de suprimentos de software. Ao destacar as ameaças comuns associadas, enfatizamos a importância de tomar medidas proativas em relação à segurança da cadeia de suprimentos de software.
O CrowdStrike Falcon® Cloud Security é uma plataforma de proteção de aplicações nativas em nuvem (CNAPP) completa que reúne ferramentas para ajudar você a garantir a segurança da sua cadeia de suprimentos de software. Suas capacidades incluem varredura de IaC, varredura de imagens do container e varredura de imagens em tempo de execução. A plataforma foi projetada para manter suas aplicações, e todos os componentes que os compõem, protegidos contra o número cada vez maior de ciberameaças que você enfrenta todos os dias.
Para uma análise mais aprofundada da sua postura de segurança na nuvem, agende uma verificação gratuita da integridade da segurança na nuvem. Saiba mais sobre o Falcon Cloud Security entrando em contato com nossa equipe de especialistas em segurança hoje mesmo.