Visão geral do estágio de implantação
O estágio Deploy é o quarto estágio da estrutura CSSC (Containers Secure Supply Chain). As empresas podem implantar imagens de contêiner em seu ambiente de hospedagem para executar cargas de trabalho em contêineres sem validar a segurança e a conformidade dessas imagens de contêiner. Isso aumenta os riscos potenciais de segurança ou pode resultar na execução de código vulnerável ou mal-intencionado no ambiente de hospedagem. Os metadados e atestados de imagem de contêiner produzidos em estágios anteriores devem ser validados no momento da implantação. Isso garante que a implantação esteja em conformidade com as políticas de segurança e conformidade de toda a empresa.
A estrutura CSSC (Containers Secure Supply Chain) da Microsoft identifica a necessidade de implantação de imagens de maneira compatível. A estrutura CSSC recomenda um conjunto de práticas e ferramentas padrão para ajudá-lo a implantar imagens com segurança, validando os metadados da imagem e implementando a política de conformidade. Neste artigo, você aprenderá sobre os objetivos, as práticas padrão e as ferramentas que podem ser usadas no estágio Implantação da estrutura CSSC.
Tela de fundo
As empresas podem implantar imagens de contêiner diretamente de registros externos ou internos sem verificar se as imagens de contêiner estão livres de vulnerabilidades e aprovadas para uso. A implantação de imagens de contêiner não confiáveis e não compatíveis no ambiente de hospedagem aumenta os riscos potenciais de segurança ou a execução de malware ou código vulnerável no ambiente de hospedagem.
As práticas de estrutura CSSC ajudam a garantir que as imagens de contêiner prontas para implantação sejam de registros confiáveis, livres de vulnerabilidades e malware, e garantam autenticidade e integridade. Muitas empresas estão implementando políticas para verificar o SBOM e as assinaturas das imagens de contêiner antes de implantá-las no Kubernetes e examinando continuamente as imagens de contêiner para validar os relatórios de digitalização.
No estágio Implantação, nos concentramos em proteger a imagem do contêiner e o ambiente de implantação. As implantações usam assinatura de imagem de contêiner, metadados do ciclo de vida, relatórios de vulnerabilidade e malware, SBOM e dados de procedência gerados a partir do estágio de compilação para fins de verificação para garantir que as imagens de contêiner sejam confiáveis e compatíveis antes de implantá-las no ambiente de hospedagem.
Fluxo de trabalho para implantar imagens de contêiner
O estágio Implantar tem um fluxo de trabalho para implantar a imagem de contêiner em centenas ou milhares de clusters em todo o mundo. As implantações podem acontecer de forma dinâmica e sob demanda. Depois que as imagens de contêiner são criadas, verificadas e assinadas, a estrutura CSSC promove as imagens de contêiner e os artefatos relevantes estão disponíveis para distribuir entre registros para o estágio Implantação.
- Implemente a política de integridade de imagem para verificar as assinaturas de imagem antes da implantação para garantir que elas não tenham sido adulteradas e venham de editores confiáveis.
- Implemente a política de varredura de vulnerabilidades para verificar imagens de contêiner em busca de vulnerabilidades, definindo limites com base nos níveis de gravidade (CRÍTICO, ALTO, MÉDIO, BAIXO) e implante apenas imagens compatíveis.
- Implemente a política de conformidade de licença para impor restrições à implantação de imagens de contêiner com licenças indesejadas.
- Implemente a política de proveniência para verificar se as imagens de contêiner vêm de fontes e repositórios confiáveis antes da implantação.
- Implemente a política de ciclo de vida da imagem para garantir que as imagens implantadas estejam dentro do suporte e sejam válidas, restringindo a implantação de imagens de fim de vida útil e de fim de suporte.
- Gere e assine relatórios de vulnerabilidade e malware para cada imagem para evitar adulterações e proteger sua integridade.
- Anexe os relatórios assinados a imagens de contêiner para visibilidade e validação de conformidade durante a implantação.
- Verifique os metadados da imagem do contêiner, incluindo SBOMs, assinaturas de imagem, relatórios de vulnerabilidade, metadados do ciclo de vida e dados de procedência.
- Implemente mecanismos de controle de admissão para impor políticas de implantação e restringir a implantação de imagens de contêiner não compatíveis.
- Automatize os processos de implantação com pipelines de CI/CD, integrando verificações e validação de imagens.
- Monitore continuamente as imagens implantadas e imponha a conformidade para detectar novas vulnerabilidades, desvios de conformidade e tomar ações de correção conforme necessário.
- Registre as atividades de implantação e realize auditorias regulares para garantir a aderência aos padrões de segurança e conformidade.
- Implemente procedimentos de correção automatizados ou manuais para lidar com incidentes de segurança ou desvios de conformidade.
- Documente o processo de implantação, incluindo as etapas tomadas, as ferramentas usadas e quaisquer medidas de segurança implementadas, para fins futuros de referência e auditoria.
Práticas recomendadas
A Microsoft recomenda validar metadados de imagem no momento da implantação e implantar apenas imagens de contêiner de registros confiáveis. As práticas a seguir são recomendadas para proteger suas cargas de trabalho nativas da nuvem.
- Aplique políticas de implantação que verifiquem metadados e restrinjam imagens de contêiner não compatíveis. Isso impede que imagens não aprovadas sejam implantadas.
- Aplique políticas de implantação que validem assinaturas de imagem antes de implantar imagens. Isso garante que as imagens usadas para implantação sejam de um editor confiável e não tenham sido adulteradas.
- Aplique políticas de implantação com base na pontuação de vulnerabilidade. Isso evita a implantação de imagens com vulnerabilidades acima de um determinado limite (CRÍTICO, ALTO, MÉDIO, BAIXO).
- Aplique políticas de implantação que verifiquem as informações do ciclo de vida para garantir que as imagens de fim de suporte não sejam usadas na implantação.
- Verifique se o ambiente de implantação e a plataforma têm conectividade de rede segura.
- Exigir autenticação estrita, controle de acesso e permissões de arquivo para negar acesso não autorizado à plataforma de implantação. Isso evita possíveis vazamentos de credenciais ou alterações não autorizadas.
- Automatize o processo de verificação no pipeline de CI/CD.
Metas de segurança no estágio Implantação
Ter um fluxo de trabalho bem definido para a implantação de imagens ajuda as empresas a aumentar sua segurança e reduzir a superfície de ataque em sua cadeia de suprimentos para contêineres. O estágio Implantação da estrutura CSSC destina-se a atender às seguintes metas de segurança.
Implantar imagens de fontes confiáveis e compatíveis
As diretivas de segurança devem ser implementadas durante o estágio Implantação para verificar se as imagens de contêiner são de fontes confiáveis e não são adulteradas. A integridade e a autenticidade podem ser validadas verificando as assinaturas das imagens de contêiner antes da implantação.
Implementar políticas de segurança de controle de admissão
As políticas de segurança devem ser implementadas durante o estágio Implantação para verificar se as imagens de contêiner estão em conformidade. Isso é obtido verificando as imagens do contêiner em relação aos seguintes metadados de segurança: relatórios de vulnerabilidade e malware, assinatura de imagem, SBOMs, metadados do ciclo de vida da imagem e metadados de procedência.
Ferramentas recomendadas
Ferramentas e serviços para validar metadados de imagem e aplicar política de validação
O Ratificar é um projeto de código aberto que permite que os clusters do Kubernetes verifiquem os metadados de segurança antes da implantação e só admitam imagens que estejam em conformidade com uma política de admissão. Recomendamos configurar o Ratify e o Gatekeeper para permitir que apenas imagens de contêiner confiáveis e compatíveis sejam executadas em seus clusters do Kubernetes.
O Gatekeeper é um projeto de código aberto e CNCF que fornece um controlador de admissão dinâmico e um mecanismo de política para definir, aplicar e auditar políticas em clusters Kubernetes de maneira padronizada.
A Política do Azure estende o Gatekeeper para permitir que políticas internas sejam aplicadas em seus clusters do Serviço de Kubernetes do Azure para auditar ou bloquear implantações que fazem referência a imagens de contêiner de registros externos ou fontes não confiáveis.
Ferramentas para anexar metadados de imagem
O ORAS é um projeto CNCF que fornece uma maneira de armazenar e gerenciar artefatos em registros compatíveis com OCI. O ORAS permite que você armazene e gerencie qualquer tipo de artefato, incluindo imagens de contêiner, metadados de imagem e muito mais, em um registro compatível com OCI. Ele também fornece um conjunto de ferramentas de linha de comando que facilitam a interação com registros compatíveis com OCI. Recomendamos o uso do ORAS para enviar os relatórios de vulnerabilidade e malware gerados, o SBOM, os metadados do ciclo de vida da imagem e os metadados de proveniência junto com a imagem associada ao registro.
Ferramentas para assinar e verificar imagens e metadados de contêiner
O Projeto Notarial é um projeto de código aberto que contém um conjunto de especificações e ferramentas destinadas a fornecer padrões intersetoriais para proteger cadeias de suprimentos de software por meio de assinatura e verificação, portabilidade de assinatura e gerenciamento de chaves/certificados. A notação é uma ferramenta da cadeia de suprimentos desenvolvida pela comunidade do Notary Project que oferece suporte à assinatura e verificação de artefatos em registros compatíveis com Open Container Initiative (OCI), permitindo a portabilidade e a interoperabilidade de assinaturas. Ele também fornece integração com soluções de gerenciamento de chaves de terceiros através de um modelo de plugin, permitindo a extensibilidade. Recomendamos o uso das ferramentas do Projeto Notarial para assinar imagens e metadados de contêiner para garantir autenticidade e não adulteração.
Próximas etapas
Consulte a visão geral do estágio Executar para implantar imagens de contêiner com segurança.