Visão geral
A segurança de CI/CD é utilizada para proteger pipelines de códigos com a automação de verificações e testes para evitar vulnerabilidades na entrega do software. Incorporar a segurança aos seus pipelines de dados ajuda a proteger os códigos de ataques, evitar vazamentos de dados, cumprir as políticas e assegurar a qualidade.
O que é CI/CD?
CI/CD (integração, entrega e implantação contínuas) compreende uma série de etapas que precisam ser executadas para disponibilizar uma nova versão do software. Essas etapas, geralmente, são visualizadas como um pipeline. O CI/CD insere a automação e o monitoramento contínuo no desenvolvimento de aplicações com o objetivo de minimizar erros humanos e manter um processo de desenvolvimento rápido e com alta qualidade.
Em geral, as principais etapas do pipeline de CI/CD não incluem medidas de segurança. Isso significa que alguns passos adicionais devem ser incluídos para proteger o processo de desenvolvimento.
Acesse a biblioteca de conteúdos da Red Hat
Quais são os desafios mais comuns da segurança de CI/CD?
A natureza ágil do desenvolvimento e da implantação sem uma segurança adequada pode expôr o pipeline a riscos como:
- Exposição de dados confidenciais a fontes externas
- Utilização de códigos ou componentes de terceiros não confiáveis
- Acesso não autorizado a ferramentas de compilação ou repositórios de código-fonte
Identificar e mitigar vulnerabilidades ao longo do ciclo de desenvolvimento assegura a realização de testes minuciosos nos códigos alterados e a aderência a padrões de segurança antes da implantação na produção.
Por que o CI/CD é importante para o DevSecOps?
O DevSecOps (desenvolvimento, segurança e operação) é uma abordagem de cultura, automação e design de plataforma que integra a segurança como uma responsabilidade compartilhada em todo o ciclo de vida de TI. Um componente essencial do DevSecOps é a introdução de um pipeline de CI/CD seguro.
O CI/CD é crítico para o DevSecOps porque ele automatiza e incorpora verificações de segurança no início do processo de desenvolvimento, assegurando feedback rápido sobre possíveis vulnerabilidades. Isso facilita uma abordagem da segurança proativa ao longo de todo o ciclo de vida da aplicação.
O conceito de "shift left" é um princípio fundamental em CI/CD e DevSecOps que envolve a migração de certas tarefas e atividades voltadas à segurança para o início do processo de desenvolvimento do software. Essa prática de implementar a segurança no começo inclui a automação dos teste que buscam vulnerabilidades de segurança, analisam mudanças nos códigos assim que elas são implementadas e promovem uma cultura de vigilância proativa da segurança entre as equipes de desenvolvimento e operação.
Como proteger um pipeline de CI/CD
Fase de planejamento: é importante incluir verificações de segurança em cada fase do pipeline para assegurar que o seu código seja seguro e esteja em conformidade com os padrões de segurança. A primeira etapa é desenvolver um roadmap da solução, que vai ajudar a identificar possíveis ameaças à segurança. Isso é conhecido como modelagem de ameaças (threat modeling). Na modelagem de ameaças, possíveis vulnerabilidades são identificadas e medidas preventivas são preparadas para minimizar os riscos.
Código: conforme os desenvolvedores escrevem o código, tome medidas para garantir que ele siga os padrões predefinidos e as diretrizes de design. Utilize scanners de código-fonte para detectar partes do código que possam estar vulneráveis a ameaças de segurança.
Compilação: quando os desenvolvedores começarem a migrar o código-fonte para um repositório compartilhado, verifique se os testes automatizados estão sendo acionados para garantir que as compilações atendam aos requisitos.
Teste: após a conclusão da compilação, teste o software para identificar bugs. Se novas funcionalidades forem adicionadas, mais testes automatizados serão realizados.
Como a Red Hat pode ajudar
O Red Hat® OpenShift® permite que as organizações empreguem esse método para automatizar a criação, os testes e a implantação de etapas das aplicações em várias plataformas on-premise e de nuvem pública. Com tecnologias de parceiros, o Red Hat OpenShift® e o Red Hat Ansible® Automation Platform criam uma base para o DevSecOps e ajudam você a lidar com desafios de segurança no ciclo de vida da sua aplicação de container, como desenvolvimento, implantação e runtime.
Para o seu negócio continuar funcionando sem problemas, é essencial proteger a cadeia de suprimentos de software contra possíveis vulnerabilidades. No entanto, grandes equipes formadas por engenheiros e desenvolvedores precisam de meses de dedicação para proteger a cadeia de suprimentos de software em aplicações nativas em nuvem. O Red Hat Trusted Software Supply Chain é um conjunto de soluções com foco na segurança de componentes e dependências de software, desde o início do ciclo de vida de desenvolvimento até a criação e o lançamento de pipelines para auditar e tratar problemas de segurança. Usamos práticas de DevSecOps para integrar proteções de segurança e acelerar o time to value (TTV) em todas as fases do ciclo de software, substituindo processos inconsistentes e manuais por operações consistentes, repetíveis e automatizadas. Quando as empresas aumentam a resiliência na cadeia de suprimentos de software, elas mantêm e fortalecem a confiança dos usuários.
O Red Hat Advanced Cluster Security (ACS) for Kubernetes é a plataforma de segurança do Kubernetes pioneira do setor. Ele prepara as organizações para criar, implantar e executar aplicações nativas em nuvem de forma mais segura. A solução ajuda a proteger cargas de trabalho em containers do Kubernetes nas principais nuvens e plataformas híbridas, como Red Hat OpenShift, Amazon Elastic Kubernetes Service (EKS), Microsoft Azure Kubernetes Service (AKS) e Google Kubernetes Engine (GKE).
O Red Hat Advanced Developer Suite, incluindo o Red Hat Trusted Artifact Signer, protege sua cadeia de suprimentos de software com assinatura automatizada, verificação criptográfica e rastreamento completo de procedência dos artefatos de software.
Blog da Red Hat
Tudo relacionado à Red Hat: soluções, treinamentos e certificações Red Hat, casos de sucesso de clientes, novidades dos nossos parceiros e notícias sobre projetos das comunidades open source.