Pular para o conteúdo
Skillpedia
Segurança35 mil · #6090

performing-kubernetes-etcd-security-assessment

Ensina seu agente de IA a proteger aplicações contra ataques e colocar projetos no ar e cuidar da infraestrutura.

O que ela faz

Verifica a segurança do etcd, o banco de dados do Kubernetes. Ele garante que os dados sensíveis, como senhas e configurações, estejam protegidos contra acesso não autorizado.

Quando usar

  • ✓Ao auditar a segurança do seu cluster Kubernetes.
  • ✓Quando precisar garantir que senhas e dados confidenciais estão criptografados.
  • ✓Ao configurar ou revisar as defesas do seu servidor Kubernetes.

Exemplo do que pedir para a IA

“Verifique a segurança do etcd do meu Kubernetes.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/performing-kubernetes-etcd-security-assessment/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/performing-kubernetes-etcd-security-assessment/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Este agente analisa as configurações do etcd para garantir que a criptografia esteja ativada, que a comunicação seja segura com TLS e que o acesso seja restrito apenas a quem precisa.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill performing-kubernetes-etcd-security-assessment

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/performing-kubernetes-etcd-security-assessment/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Realizando Avaliação de Segurança do etcd do Kubernetes

Visão Geral

etcd é o armazenamento distribuído de chave-valor que serve como base de dados do Kubernetes para todos os dados do cluster, incluindo Secrets, políticas RBAC, ConfigMaps e configurações de workload. Sem um endurecimento adequado, o etcd expõe todos os segredos do cluster em texto puro, tornando-o o alvo de maior valor para atacantes que obtêm acesso ao plano de controle. Uma avaliação de segurança abrangente cobre criptografia em repouso, TLS para transporte, controle de acesso, segurança de backup e isolamento de rede.

Quando Usar

  • Ao realizar avaliações de segurança que envolvem a realização de avaliação de segurança do etcd do Kubernetes
  • Ao seguir procedimentos de resposta a incidentes para eventos de segurança relacionados
  • Ao realizar testes de segurança ou atividades de auditoria agendadas
  • Ao validar controles de segurança por meio de testes práticos

Pré-requisitos

  • Acesso aos nós do plano de controle do Kubernetes
  • Acesso SSH aos nós do cluster etcd (ou etcdctl configurado)
  • Documento de referência do CIS Kubernetes Benchmark
  • Compreensão de gerenciamento de certificados TLS e EncryptionConfiguration

Áreas de Avaliação

1. Criptografia em Repouso

Verifique se o Kubernetes criptografa os dados de Secret armazenados no etcd:

# Check if EncryptionConfiguration is configured on API server
ps aux | grep kube-apiserver | grep encryption-provider-config

# View the encryption configuration
cat /etc/kubernetes/enc/encryption-config.yaml

Configuração segura esperada:

apiVersion: apiserver.config.k8s.io/v1
kind: EncryptionConfiguration
resources:
  - resources:
      - secrets
      - configmaps
    providers:
      - aescbc:
          keys:
            - name: key1
              secret: <base64-encoded-32-byte-key>
      - identity: {}  # Fallback for reading unencrypted data

Verifique se os secrets estão realmente criptografados no etcd:

# Read a secret directly from etcd
ETCDCTL_API=3 etcdctl \
  --endpoints=https://127.0.0.1:2379 \
  --cacert=/etc/kubernetes/pki/etcd/ca.crt \
  --cert=/etc/kubernetes/pki/etcd/server.crt \
  --key=/etc/kubernetes/pki/etcd/server.key \
  get /registry/secrets/default/my-secret | hexdump -C | head -20

# If encrypted, output starts with "k8s:enc:aescbc:v1:key1"
# If NOT encrypted, you'll see plaintext key-value pairs

2. Segurança de Transporte TLS

# Verify etcd uses TLS for client connections
ETCDCTL_API=3 etcdctl endpoint health \
  --endpoints=https://127.0.0.1:2379 \
  --cacert=/etc/kubernetes/pki/etcd/ca.crt \
  --cert=/etc/kubernetes/pki/etcd/server.crt \
  --key=/etc/kubernetes/pki/etcd/server.key

# Check peer TLS configuration
ps aux | grep etcd | tr ' ' '\n' | grep -E "peer-cert|peer-key|peer-trusted-ca"

# Verify certificate expiration
openssl x509 -in /etc/kubernetes/pki/etcd/server.crt -noout -enddate
openssl x509 -in /etc/kubernetes/pki/etcd/peer.crt -noout -enddate

Flags esperadas:

Flag Valor Necessário Propósito
--cert-file Caminho para o certificado do servidor TLS cliente-servidor
--key-file Caminho para a chave do servidor TLS cliente-servidor
--trusted-ca-file Caminho para o certificado CA Validação de certificado do cliente
--peer-cert-file Caminho para o certificado do peer TLS peer-a-peer
--peer-key-file Caminho para a chave do peer TLS peer-a-peer
--peer-trusted-ca-file Caminho para a CA do peer Validação de certificado do peer
--client-cert-auth true Exigir certificados de cliente
--peer-client-cert-auth true Exigir certificados de peer

3. Controle de Acesso

# Verify etcd is not exposed on all interfaces
ps aux | grep etcd | tr ' ' '\n' | grep listen-client-urls
# Should be: https://127.0.0.1:2379 (not 0.0.0.0)

# Check who can access etcd certificates
ls -la /etc/kubernetes/pki/etcd/
# Should be readable only by root/etcd user

# Verify API server is the only etcd client
ss -tlnp | grep 2379
# Only kube-apiserver should have connections

4. Segurança de Backup

# Create an encrypted etcd backup
ETCDCTL_API=3 etcdctl snapshot save /backup/etcd-snapshot.db \
  --endpoints=https://127.0.0.1:2379 \
  --cacert=/etc/kubernetes/pki/etcd/ca.crt \
  --cert=/etc/kubernetes/pki/etcd/server.crt \
  --key=/etc/kubernetes/pki/etcd/server.key

# Encrypt the backup file
gpg --symmetric --cipher-algo AES256 /backup/etcd-snapshot.db

# Verify backup integrity
ETCDCTL_API=3 etcdctl snapshot status /backup/etcd-snapshot.db --write-out=table

5. Isolamento de Rede

# Verificar se as portas do etcd estão protegidas por firewall

…
Perguntas frequentes

O que é etcd?

etcd é o 'cérebro' do Kubernetes, onde todas as informações importantes do cluster são armazenadas, como segredos, permissões e configurações.

Por que a segurança do etcd é importante?

Se o etcd não estiver seguro, atacantes podem acessar todos os segredos e informações confidenciais do seu cluster Kubernetes.

O que significa 'criptografia em repouso'?

Significa que os dados armazenados no etcd são embaralhados (criptografados) para que, mesmo que alguém acesse os arquivos, não consiga ler as informações sem a chave correta.

Detalhes

Descrição original do autor

Assesses the security posture of the etcd cluster backing Kubernetes: encryption at rest, TLS peer and client transport, access control, backup encryption, and network isolation. Use when auditing or hardening a control plane, reviewing whether Secrets are encrypted at rest, or protecting etcd backups, since etcd stores Secrets, RBAC policy, and ConfigMaps in plaintext by default. Keywords: etcd,

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#6090
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas