Security Profiles Operator v1: APIs Estáveis, Auditoria de Segurança e Caminho para o Upstream do Kubernetes

Security Profiles Operator v1: APIs Estáveis, Auditoria de Segurança e Caminho para o Upstream do Kubernetes

O Security Profiles Operator (SPO) alcança a versão v1.0.0 com APIs estáveis, auditoria de segurança completa e melhorias significativas, consolidando seu papel na gestão de perfis de segurança no Kubernetes e influenciando o desenvolvimento futuro do próprio Kubernetes.

MundiX News·08 de julho de 2026·8 min de leitura·👁 1 views

O Linux oferece mecanismos de segurança poderosos no nível do kernel, como seccomp, SELinux e AppArmor, que restringem as capacidades de cargas de trabalho conteinerizadas. Em resumo: seccomp filtra chamadas de sistema de processos, enquanto SELinux e AppArmor impõem políticas de acesso mandatórias a arquivos, rede e capacidades. Cada um opera através de perfis que descrevem o comportamento permitido. No entanto, criar, distribuir e manter esses perfis manualmente é tedioso e propenso a erros.

O Security Profiles Operator (SPO) alivia essa dor, permitindo que os perfis de segurança sejam gerenciados como recursos customizados do Kubernetes (Custom Resource Definitions - CRDs). Ele possibilita a gravação de perfis a partir de cargas de trabalho em execução e a vinculação declarativa a Pods. Com o lançamento da versão v1.0.0, o SPO promove todas as suas oito APIs CRD para a versão v1. Este é o primeiro release estável do projeto, validado por uma auditoria de segurança externa, um ciclo completo de hardening e uma migração sem downtime de qualquer versão de API anterior.

A equipe do VK Cloud traduziu um artigo detalhando como o projeto Security Profiles Operator, ao longo de seis anos, evoluiu suas APIs para a versão v1, passou por uma auditoria de segurança externa e agora contribui para o desenvolvimento do próprio Kubernetes. Este conteúdo é valioso para profissionais de segurança de clusters, incluindo engenheiros DevOps e SRE, especialistas em segurança da informação e desenvolvedores que criam perfis seccomp, SELinux e AppArmor para contêineres.

Seis Anos de Evolução de API

O SPO surgiu em abril de 2020, inicialmente focado apenas em seccomp. Nos anos seguintes, o projeto expandiu seu escopo para incluir SELinux (final de 2020), AppArmor (final de 2021), gravação de perfis via logs de auditoria e eBPF, distribuição de perfis baseada em OCI e muito mais. Cada nova funcionalidade introduziu novos CRDs, que permaneceram em estágios alpha ou beta enquanto as APIs amadureciam em produção. Algumas dessas APIs já eram consideradas estáveis na prática há anos: SeccompProfile estava em v1beta1 há mais de quatro anos, e SPOD em v1alpha1 há mais de cinco anos. Consumidores downstream necessitavam de uma marcação de versão estável para garantir suporte a longo prazo. O SPO está disponível no OperatorHub desde 2022 e faz parte do Red Hat OpenShift a partir da versão 4.12. O período anterior ao lançamento v1 foi a última oportunidade para introduzir mudanças disruptivas, e a equipe a aproveitou.

Essa limpeza resultou em uma série de pull requests, incluindo:

  • Mudanças Estruturais: Todos os CRDs agora utilizam um tipo de status comum baseado em conditions do Kubernetes upstream. A especificação do SPOD foi reorganizada de uma lista plana de mais de 30 campos para grupos lógicos (SELinux, Enricher, Webhook, Scheduling, Security). Tipos base comuns foram extraídos para evitar duplicação entre CRDs.
  • Correções de Tipos: Vários tipos de campos foram atualizados para seguir as convenções de API do Kubernetes, como a substituição de inteiros sem sinal por inteiros com sinal. Tipos externos que criavam dependências de importação desnecessárias foram movidos internamente.
  • Aderência às Convenções: Valores de enum foram convertidos para PascalCase (ex: logs para Logs, RUNNING para Running). Cada campo recebeu um marcador +optional ou +required. Marcadores de validação foram adicionados a todos os tipos. A única exceção intencional são as constantes seccomp SCMP_ACT_* e SCMP_CMP_*, que mantêm seus nomes em maiúsculas para corresponder exatamente às especificações do OCI runtime e aos cabeçalhos do kernel Linux.

Auditoria de Segurança e Hardening

Antes da transição para v1, o SPO passou por uma auditoria de segurança de código. A auditoria não encontrou nenhuma vulnerabilidade crítica e confirmou que os caminhos de arquivo gravados no host são derivados de metadados do objeto, não de campos spec controlados pelo usuário; os comandos são formados como arrays de argumentos, eliminando superfícies para shell injection; e as permissões RBAC padrão não concedem privilégios excessivos a usuários sem direitos de administrador.

No entanto, a auditoria identificou áreas para hardening, especialmente na fronteira onde o recurso de tenant do usuário é traduzido para o estado do LSM (Linux Security Module) no nível do kernel. O release v1.0.0 aborda essas descobertas:

  • RawSelinuxProfile: Restrição e Validação: RawSelinuxProfile permite a escrita de políticas SELinux arbitrárias em CIL (Common Intermediate Language), que o operador instala no nó. A auditoria apontou esse caminho como o mais arriscado. Na v1.0.0, um novo campo enableRawSelinuxProfiles na configuração do SPOD permite que administradores de cluster desabilitem completamente o suporte a perfis SELinux brutos. O webhook de admissão de validação agora rejeita políticas brutas inválidas em vez de permitir que falhem na reconciliação.
  • SelinuxProfile: Gerenciamento do Modo Permissive: O campo booleano permissive em SelinuxProfile foi substituído por um enum mode (Enforcing ou Permissive), eliminando o risco de ativar acidentalmente o modo permissive quando o campo não está definido.
  • Sanitização de Entrada AppArmor: Perfis AppArmor aceitam dados de entrada шаблонados para nomes de perfil, caminhos de executáveis e capabilities. A auditoria observou que esses dados eram carregados sem validação de conteúdo. O SPO agora aplica validação regex rigorosa a cada um deles e impede a sobrescrita de perfis já carregados no kernel.
  • Limites de Tamanho de Campo e Marcadores de Validação: O campo RawSelinuxProfile.spec.policy agora possui maxLength de 500 KB, limitando o tamanho da entrada antes que ela atinja o compilador SELinux CIL no nó. Marcadores de validação foram adicionados a todos os tipos de CRD.

Hardening Adicional Além da Auditoria

  • Regex Backtracking: Operadores regex gananciosos em parsers de logs de seccomp, SELinux e AppArmor foram substituídos por padrões limitados para evitar que strings de log de auditoria especialmente criadas causem backtracking excessivo.
  • Restrição de Caminhos: HostProcVolumePath agora é verificado apenas para /proc. seccomp-ListenerPath é restrito ao diretório do socket do operador.
  • Limites de Recursos do Gravador eBPF: O gravador de perfis eBPF agora limita o número de arquivos gravados e o comprimento máximo do caminho, prevenindo OOM (Out Of Memory) em cargas de trabalho com alta atividade de sistema de arquivos.
  • Precisão do Cache de Processos: O cache de processos agora usa uma chave composta de PID e tempo de início do processo, prevenindo acertos de cache desatualizados após a reutilização de PID.
  • Tratamento de Anotações de Gravação: O webhook de gravação agora sobrescreve corretamente anotações existentes, em vez de pular silenciosamente Pods já anotados.
  • Cardinalidade de Métricas: Rótulos ilimitados foram removidos dos contadores Prometheus para prevenir métricas de alta cardinalidade.

Migração Sem Downtime

A atualização para v1.0.0 não requer passos manuais de migração. Webhooks de conversão tratam transparentemente a translação entre as versões antigas e novas das APIs:

  • Manuais Antigos Ainda Funcionam: Você pode continuar aplicando recursos através das versões de API v1alpha1, v1alpha2 ou v1beta1. O webhook de conversão os traduzirá para v1 antes de salvar.
  • Versões Antigas de API Ainda São Servidas: kubectl get com uma versão de API antiga retornará recursos com valores enum no estilo antigo, mesmo que a versão de armazenamento seja v1.
  • Valores Enum Mapeados Bidirecionalmente: A camada de conversão traduz entre os valores enum de estilo antigo (logs, RUNNING) e de estilo novo (Logs, Running) em ambas as direções.

Veja como ProfileRecording se parece antes e depois:

yaml
# Antes (v1alpha1)
apiversion: security-profiles-operator.x-k8s.io/v1alpha1
kind: ProfileRecording
metadata:
  name: my-recording
spec:
  kind: SeccompProfile
  recorder: logs
  mergeStrategy: none
  podSelector:
    matchLabels:
      app: my-app
yaml
# Depois (v1)
apiversion: security-profiles-operator.x-k8s.io/v1
kind: ProfileRecording
metadata:
  name: my-recording
spec:
  kind: SeccompProfile
  recorder: Logs
  mergeStrategy: None
  podSelector:
    matchLabels:
      app: my-app

Para CRDs sem mudanças de enum, apenas a string apiVersion muda. O guia de migração completo abrange atualizações para consumidores de API Go, mudanças em constantes enum e registro de esquema. As versões antigas da API permanecerão disponíveis para compatibilidade retroativa e serão removidas em um futuro release.

De Operador para Upstream Kubernetes

O SPO sempre esteve intimamente ligado ao trabalho upstream em perfis de segurança no Kubernetes. O projeto é construído sobre a superfície de API GA de seccomp (Kubernetes 1.19) e cresceu junto com propostas relacionadas, como perfis seccomp baseados em ConfigMap e perfis seccomp embutidos com modo de reclamação.

Um exemplo recente dessa conexão é o KEP 6061: distribuição de perfis de segurança baseada em artefatos OCI. Este KEP (Kubernetes Enhancement Proposal) foi proposto para um futuro release do Kubernetes em estágio alpha. O SPO foi pioneiro na distribuição de perfis baseada em OCI anos atrás: usuários podiam publicar perfis seccomp, SELinux e AppArmor em registros OCI e referenciá-los diretamente nas especificações de Pod. O KEP 6061 traz esse conceito nativamente para o kubelet, adicionando uma chamada à API CRI (Container Runtime Interface) PullSecurityProfileArtifact, permitindo que runtimes de contêiner busquem perfis sob demanda de registros OCI.

O KEP segue o mesmo modelo de confiança dos perfis localhost: uma lista de permissões com negação por padrão no nível do kubelet, com o Pod Security Admission tratando perfis OCI da mesma forma que perfis localhost. O SPO continuará a fornecer capacidades de alto nível que o kubelet não cobre: gravação de perfis a partir de cargas de trabalho em execução, escrita estruturada de políticas SELinux, vinculação de perfis a imagens de contêiner e enriquecimento de logs de auditoria.

Próximos Passos

Com o lançamento da v1, as prioridades do projeto são:

  • Remoção das versões antigas da API, no mínimo, um ciclo de release após a v1.
  • Continuação do hardening: restrição mais granular de RBAC e operações mais seguras com caminhos em componentes privilegiados.
  • Integração com o KEP 6061: vinculação das capacidades de distribuição OCI do SPO com o suporte nativo no kubelet à medida que ele amadurece através dos estágios alpha e beta.

Experimente a v1.0.0, consulte o guia de migração e junte-se à discussão em #security-profiles-operator no Kubernetes Slack. O SPO foi construído por mais de 70 contribuidores de diversas organizações. Agradecemos a todos que contribuíram com código, abriram issues, testaram pré-releases e participaram da auditoria de segurança. A v1 é tanto de vocês quanto nossa.

🛡️⚡

Pare de pesquisar. Comece a hackear.

O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.

Testar grátis por 7 dias →

Sem cartão para começar · Planos a partir de R$49/mês

📤 Compartilhar & Baixar

🧰 Ferramentas recomendadas

Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Com centenas de ferramentas pré-instaladas, a distribuição Kali Linux facilita o trabalho de os profissionais de segurança começarem a fazer testes de segurança rapidamente. No entanto, com mais de 600 ferramentas em seu arsenal, o Kali Linux também pode ser desafiador. A nova edição deste prático livro abrange as atualizações nas ferramentas e inclui uma melhor abordagem da análise forense e da engenharia reversa. Ric Messier, autor, não fica apenas no teste de segurança, mas também faz uma abordagem sobre a execução de análise forense, incluindo a análise em disco e na memória, assim como alguma análise básica de malware. • Explore as diversas ferramentas disponíveis no Kali Linux • Entenda o valor do teste de segurança e examine os tipos de teste disponíveis • Aprenda os aspectos básicos do pentest em todo o ciclo de vida do ataque • Instale o Kali Linux em vários sistemas, tanto físicos quanto virtuais • Descubra como usar diferentes ferramentas destinadas à segurança • Estruture um teste de segurança baseado nas ferramentas do Kali Linux • Estenda as ferramentas do Kali para criar técnicas de ataque avançadas • Use o Kali Linux para ajudar a criar relatórios quando o teste terminar “A abordagem concisa, clara e baseada na experiência adotada por Ric Messier para a introdução do Kali Linux e dos testes de cibersegurança é incomparável. Este livro é uma leitura excelente e acessível para iniciantes e um recurso valioso para qualquer pessoa.” —Alexander Arlt, Consultor sênior de segurança, Google

Ver na Amazon
Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Compatível com portas USB-C e USB-A, ideal para ampliar a conectividade de dispositivos como MacBook Pro e outros com portas USB-C. Inclui um adaptador USB-A extra, proporcionando uma conexão Ethernet estável e veloz de até 1 Gbps, perfeita para filmes, jogos online e videoconferências. Oferece três portas USB 3.0 com velocidades de transferência de até 5 Gbps, permitindo conectar mouse, teclado, discos rígidos e outros periféricos. Fabricado em alumínio durável, garantindo longa vida útil e resistência ao uso diário. Design compacto e leve, ideal para viagens de negócios e uso diário, facilitando o transporte e armazenamento. Funciona com Windows 10/8.1/8, Mac OS e Chrome OS, oferecendo versatilidade incomparável para diversas necessidades de conectividade. Assegura uma conectividade estável e rápida, perfeita para tarefas exigentes como transferência de dados, streaming e mais.

Ver na Amazon
Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs is a crash course on web API security testing that will prepare you to penetration-test APIs, reap high rewards on bug bounty programs, and make your own APIs more secure. You'll learn how REST and GraphQL APIs work in the wild and set up a streamlined API testing lab with Burp Suite and Postman. Then you'll master tools useful for reconnaissance, endpoint analysis, and fuzzing, such as Kiterunner and OWASP Amass. Next, you'll learn to perform common attacks, like those targeting an API's authentication mechanisms and the injection vulnerabilities commonly found in web applications. You'll also learn techniques for bypassing protections against these attacks. In the book's nine guided labs, which target intentionally vulnerable APIs, you'll practice: Enumerating APIs users and endpoints using fuzzing techniques Using Postman to discover an excessive data exposure vulnerability Performing a JSON Web Token attack against an API authentication process Combining multiple API attack techniques to perform a NoSQL injection Attacking a GraphQL API to uncover a broken object level authorization vulnerability

Ver oferta
Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Up-to-date strategies for thwarting the latest, most insidious network attacks This fully updated, industry-standard security resource shows, step by step, how to fortify computer networks by learning and applying effective ethical hacking techniques. Based on curricula developed by the authors at major security conferences and colleges, the book features actionable planning and analysis methods as well as practical steps for identifying and combating both targeted and opportunistic attacks. Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition clearly explains the enemy's devious weapons, skills, and tactics and offers field-tested remedies, case studies, and testing labs. You will get complete coverage of Internet of Things, mobile, and Cloud security along with penetration testing, malware analysis, and reverse engineering techniques. State-of-the-art malware, ransomware, and system exploits are thoroughly explained. Fully revised content includes 7 new chapters covering the latest threats Includes proof-of-concept code stored on the GitHub repository Authors train attendees at major security conferences, including RSA, Black Hat, Defcon, and B-Sides

Ver na Amazon
Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Proteção de privacidade aprimorada: protege o link de transmissão de dados para evitar roubo de informações, fornecendo proteção de segurança robusta que protege a privacidade do usuário durante transferências de arquivos e garante uma conexão segura para interações de dispositivos sem preocupações em vários ambientes Uso a longo prazo: a camada protetora resistente ao desgaste, combinada com um corpo de metal resistente, oferece gerenciamento de calor confiável e qualidade duradoura durante o uso diário Entrega eficiente de energia: a tecnologia de chip inteligente garante a identificação automática dos requisitos de energia, fornecendo carregamento eficiente alinhando-se com vários protocolos de carregamento rápido para maior conveniência Proteção contra sobrecarga: evitando riscos de sobrecarga, este bloqueador de dados USB protege a vida útil da bateria e garante um desempenho estável, mantendo um fluxo estável de energia para melhorar a longevidade do dispositivo de forma eficaz Prático de transportar: com atenção à portabilidade, este bloqueador de dados USB oferece um design compacto que é leve e fácil de transportar, melhorando a conveniência do usuário e operação eficiente

Ver na Amazon

📩 Newsletter MundiX

Receba novidades de cibersegurança + um checklist de pentest grátis. Sem spam.

Ao assinar você concorda em receber e-mails. Cancele quando quiser.