Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
kubesec — Análise de riscos de segurança para recursos Kubernetes | Kitploit
Ferramentas/GitHubGitHub/controlplaneio/kubesec
Segurança de Infraestrutura em NuvemFerramentas DefensivasAnálise EstáticaSegurança de ContêineresAnálise Estática de Código (SAST)Auditoria de ConfiguraçãoSegurança na NuvemDevSecOpsConfiguração IncorretaEscape de ContêinerTop em Auditoria de Configuração nº13
1.5k10936há 3 mesesRevisado pelo Kitploit
Top em Escape de Contêiner nº15
Top em Segurança de Contêineres nº9
Top em Configuração Incorreta nº13
Top em Análise Estática de Código (SAST) nº18
GitHubcontrolplaneio/kubesec

kubesec

Análise de riscos de segurança para recursos Kubernetes

Ver RepositórioSite

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Kubesec

[![Testing Workflow][testing_workflow_badge]][testing_workflow_badge] [![Security Analysis Workflow][security_workflow_badge]][security_workflow_badge] [![Release Workflow][release_workflow_badge]][release_workflow_badge]

[![Go Report Card][goreportcard_badge]][goreportcard] [![PkgGoDev][go_dev_badge]][go_dev]

🚨 A API v1 está obsoleta. Consulte as notas de versão 🚨

Análise de risco de segurança para recursos Kubernetes

🎬 Demonstração

Demonstração da CLI Kubesec

Para mais exemplos, visite Kubesec.io, que usa a API hospedada da ControlPlane em v2.kubesec.io/scan.


  • Início Rápido
  • Baixar Kubesec
  • Exemplos de Uso
    • Análise
      • Uso com Docker
      • Formatos de Saída
    • Imprimir Regras
    • Schemas Personalizados
  • Modo Servidor HTTP
  • Kubesec-como-Serviço
  • Contribuindo
  • Obtendo Ajuda
  • Changelog

🚀 Início Rápido

1. Prepare o Seu Manifesto

Crie um arquivo de recurso Kubernetes (ex.: kubesec-test.yaml) para analisar. Para um teste rápido, você pode salvar o seguinte manifesto de Pod:

$ cat <<EOF > kubesec-test.yaml
apiVersion: v1
kind: Pod
metadata:
  name: kubesec-demo
spec:
  containers:
  - name: kubesec-demo
    image: gcr.io/google-samples/node-hello:1.0
    securityContext:
      readOnlyRootFilesystem: true
EOF

2. Execute a Sua Primeira Análise

Execute uma análise no seu arquivo de manifesto:

# Usando o binário local
kubesec scan kubesec-test.yaml

# Ou usando Docker
docker run -i kubesec/kubesec:v2 scan /dev/stdin < kubesec-test.yaml

# Usando o binário local com um formato de saída de tabela legível por humanos
kubesec scan kubesec-test.yaml --format table

[!TIP] Para visualizar os resultados em uma tabela legível em vez do formato JSON padrão, use o sinalizador --format table

O kubesec exibirá uma pontuação de segurança e uma análise detalhada do seu recurso.

📦 Baixar Kubesec

O Kubesec está disponível como:

  • Imagem de contêiner Docker em docker.io/kubesec/kubesec:v2
  • Binário para Linux/MacOS/Windows (obtenha a última versão)
  • Admission Controller Kubernetes
  • Plugin Kubectl

Ou instale o commit mais recente do GitHub com:

Go 1.16+

$ go install github.com/controlplaneio/kubesec/v2@latest

Go versão < 1.16

$ GO111MODULE="on" go get github.com/controlplaneio/kubesec/v2

📖 Exemplos de Uso

Análise

Analise recursos Kubernetes a partir de arquivos locais ou entrada padrão.

O Kubesec pode analisar vários documentos YAML em um único arquivo de entrada, ou analisar documentos de vários arquivos de uma só vez, desde que estejam formatados corretamente como múltiplos documentos separados por ---.

# Analisar um arquivo YAML local específico
kubesec scan ./deployment.yaml

# Analisar a partir da entrada padrão (JSON ou YAML)
cat file.json | kubesec scan -

# Analisar um chart Helm renderizado
helm template -f values.yaml ./chart | kubesec scan /dev/stdin

# Analisar vários documentos YAML separados por '---'
{ cat test/asset/multi.yml; echo "---"; cat test/asset/critical.yml; } | kubesec scan -

Uso com Docker

Você pode executar os mesmos comandos de análise usando a imagem oficial do Docker:

# Analisar um arquivo via Docker usando entrada padrão
docker run -i kubesec/kubesec:v2 scan /dev/stdin < kubesec-test.yaml

Formatos de Saída

O Kubesec suporta três formatos de saída diferentes, especificados pelo sinalizador --format / -f: json (padrão), table e template, e pode analisar vários documentos YAML em um único arquivo de entrada.

# Saída em array JSON (comportamento padrão)
kubesec scan ./deployment.yaml --format json

# Saída em tabela legível por humanos
kubesec scan ./deployment.yaml --format table

# Usar um template personalizado para a saída
kubesec scan ./deployment.yaml --format template --template report-template.tmpl

Analisar regras específicas

# Uma regra
kubesec scan --rules CapSysAdmin kubesec-test.yaml

# Várias regras
kubesec scan --rules RunAsNonRoot,SeccompAny,ApparmorAny kubesec-test.yaml
Exemplo de Saída JSON
[
  {
    "object": "Pod/security-context-demo.default",
    "valid": true,
    "message": "Failed with a score of -30 points",
    "score": -30,
    "scoring": {
      "critical": [
        {
          "selector": "containers[] .securityContext .capabilities .add == SYS_ADMIN",
          "reason": "CAP_SYS_ADMIN is the most privileged capability and should always be avoided",
          "points": -30
        }
      ],
      "advise": [
        {
          "selector": "containers[] .securityContext .runAsNonRoot == true",
          "reason": "Force the running image to run as a non-root user to ensure least privilege",
          "points": 1
        },
        {
          // ...
        }
      ]
    }
  }
]
Exemplo de Saída em Tabela

Saída em tabela

Imprimir Regras

# Imprimir todas as regras de análise com suas pontuações associadas
kubesec print-rules

# Imprimir todas as regras de análise com suas pontuações associadas como tabela
kubesec print-rules --format table

Exemplo de Saída de Regras em JSON

[
  {
    "id": "AllowPrivilegeEscalation",
    "selector": "containers[] .securityContext .allowPrivilegeEscalation == true",
    "reason": "Ensure a non-root process can not gain more privileges",
    "kinds": [
      "Pod",
      "Deployment",
      "StatefulSet",
      "DaemonSet"
    ],
    "points": -7,
    "advise": 0
  },
...
]

Schemas Personalizados

O Kubesec utiliza o kubeconform (obrigado @yannh) para validar os manifestos a serem analisados. Isso implica que especificar diferentes locais de schema segue as regras descritas no README do kubeconform.

# Usa o schema mais recente do upstream
# O schema será obtido de: https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master-standalone-strict/pod-v1.json
kubesec scan ./pod.yaml

# Usa uma versão de schema específica do upstream (formato x.y.z sem o prefixo v)
# O schema será obtido de: https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/v1.25.3-standalone-strict/pod-v1.json
kubesec scan ./pod.yaml --kubernetes-version 1.25.3
Baixar ferramenta