Pular para o conteúdo principal

KPIs e Métricas - Containers e Imagens

Âmbito e propósito

Os indicadores deste domínio avaliam a segurança do ciclo de vida de imagens de container: desde a composição e ausência de vulnerabilidades conhecidas, até à assinatura e verificação de proveniência, à aplicação de políticas de admissão em runtime, e à velocidade de resposta a CVEs críticos em imagens de produção.

Containers introduzem um desafio específico de medição: a imagem é imutável após build, mas o ecossistema de vulnerabilidades é dinâmico. Uma imagem que era segura no momento do build pode tornar-se vulnerável 48 horas depois. Os indicadores CNT devem reflectir este carácter contínuo, não apenas o estado no momento do deploy.

Os indicadores CNT alimentam as dimensões transversais T-01 (Cobertura de controlos), T-03 (Velocidade de resolução) e T-05 (Cadeia de fornecimento).


Denominador e fundação de portfólio

Os indicadores deste domínio usam como denominador F-02 - aplicações com classificação de risco formal (Cap. 01, CLA-K01). As percentagens são interpretáveis apenas em relação ao conjunto de aplicações classificadas ao nível de risco relevante - não ao portfólio total ou a subconjuntos ad-hoc.

Ver kpis-governanca.md - secção "Fundação de portfólio" - para o funil de adoptabilidade SbD-ToE e a relação entre denominadores.


Convenções

SímboloSignificado
Threshold obrigatório para este nível
-Não aplicável ou não obrigatório a este nível
Indicador inverso - valor menor indica melhor desempenho

Os thresholds são cumulativos: L3 inclui todas as obrigações de L1 e L2.

Tipos de indicador:

CódigoSignificado
Q%Quantitativo percentual
Q#Quantitativo contagem
QtQuantitativo temporal (dias)

Catálogo de indicadores

IDIndicadorTipoL1L2L3Dim. TPeríodo
CNT-K01% imagens em produção sem CVEs críticos (CVSS ≥ 9.0) sem excepção formal válidaQ%≥ 70%≥ 90%100%T-01, T-03Semanal
CNT-K02MTTR - tempo desde identificação de CVE crítico em imagem de produção até substituição/patchQt≤ 14d≤ 7d≤ 3dT-03Por evento
CNT-K03% imagens de produção assinadas digitalmente e com verificação de assinatura antes de deployQ%-≥ 70%100%T-01, T-05Por release
CNT-K04% workloads em orquestrador com política de admission controller activa e em modo de bloqueioQ%-≥ 80%100%T-01Mensal
CNT-K05% imagens base de produção actualizadas dentro do ciclo definido por política (sem tags mutáveis)Q%≥ 70%≥ 90%100%T-01, T-05Mensal
CNT-K06% imagens com SBOM associado e acessível no registo ou repositório de artefactosQ%≥ 50%≥ 85%100%T-05Por release
CNT-K07# workloads em execução como root (UID 0) sem justificação técnica formalQ# ↓≤ 5= 0= 0T-01Semanal

Definições complementares

CNT-K01 - CVE sem excepção formal: uma imagem está conforme se não tiver CVEs críticos, ou se os CVEs identificados tiverem excepção formal activa (não expirada) com compensação documentada. Imagens com CVEs críticos sem excepção, mesmo que o patch não esteja disponível, não satisfazem este indicador - devem ter excepção formal.

CNT-K02 - MTTR de container: conta desde a data de disponibilização da CVE em NVD/OSV (ou detecção pelo scanner, se posterior) até à data de deploy em produção da imagem corrigida. Se o patch não está disponível no upstream, a substituição da imagem base por uma alternativa sem a vulnerabilidade também fecha o indicador.

CNT-K03 - Verificação de assinatura: a existência de assinatura sem processo de verificação antes do deploy não satisfaz este indicador. A verificação pode ser implementada via admission controller (Kyverno + verificação Cosign), ou verificação explícita no pipeline de deploy com log rastreável.

CNT-K04 - Admission controller em modo bloqueio: policies configuradas em modo audit ou warn não satisfazem este critério. Apenas enforce (Kyverno) ou Deny (OPA Gatekeeper) contam. Excepções a políticas devem ser objectos formais no orquestrador (não desactivação global).

CNT-K05 - Tag mutável: uma tag mutável (ex: latest, stable, main) aponta para diferentes camadas ao longo do tempo, tornando impossível garantir a reprodutibilidade e a auditabilidade do que está em produção. Tags imutáveis requerem referência por digest (image@sha256:...) ou por tag semântica fixada e imutável no registo.

CNT-K07 - Execução como root: inclui containers com securityContext.runAsUser: 0 explícito ou sem runAsNonRoot: true definido. Aplicações legadas com justificação formal e compensação activa (ex: seccomp, AppArmor, capacidades restritas) podem ter excepção, mas são contabilizadas neste indicador até à resolução.


Recolha e instrumentação

IndicadorFonte primáriaFerramentas de referênciaAutomação
CNT-K01Scanner de vulnerabilidades de imagens + registo de excepçõesTrivy, Grype, Snyk Container + DefectDojoSim
CNT-K02CVE feed + deploy log + scan históricoNVD/OSV + pipeline timestampsParcial
CNT-K03Registo de imagens + logs de deployCosign, Notary + admission controller logsSim
CNT-K04Configuração do orquestrador (Kubernetes manifests)Kyverno, OPA Gatekeeper, PolarisSim
CNT-K05Registo de imagens + política de updateDependabot for containers, Renovate, Trivy advisoriesSim
CNT-K06Registo de artefactos + processo de buildSyft + registo OCI com suporte a SBOM attachSim
CNT-K07Configuração de workloads no orquestradorKube-bench, Polaris, Checkov (Kubernetes)Sim

Referências cruzadas

DocumentoRelação
addon/00-catalogo-requisitos.mdRequisitos CNT-001..012 que fundamentam os indicadores
addon/10-excecoes-containers.mdProcesso de excepção de containers (CNT-K01, CNT-K04)
addon/07-vulnerabilidades-imagens.mdGestão de vulnerabilidades que alimenta CNT-K01/K02
Cap. 14 addon/kpis-governanca.mdDimensões transversais T-01, T-03, T-05