Kubernetes Pentesting

Support HackTricks

Fundamentos do Kubernetes

Se você não sabe nada sobre Kubernetes, este é um bom começo. Leia para aprender sobre a arquitetura, componentes e ações básicas no Kubernetes:

Laboratórios para praticar e aprender

Fortalecendo o Kubernetes / Ferramentas Automáticas

Pentest Manual do Kubernetes

Do Exterior

Existem vários serviços Kubernetes que você pode encontrar expostos na Internet (ou dentro de redes internas). Se você encontrá-los, sabe que há um ambiente Kubernetes lá.

Dependendo da configuração e de seus privilégios, você pode ser capaz de abusar desse ambiente, para mais informações:

Enumeração dentro de um Pod

Se você conseguir comprometer um Pod, leia a página seguinte para aprender como enumerar e tentar escalar privilégios/escapar:

Enumerando Kubernetes com Credenciais

Você pode ter conseguido comprometer credenciais de usuário, um token de usuário ou algum token de conta de serviço. Você pode usá-lo para se comunicar com o serviço API do Kubernetes e tentar enumerá-lo para aprender mais sobre ele:

Outro detalhe importante sobre enumeração e abuso de permissões do Kubernetes é o Controle de Acesso Baseado em Funções (RBAC) do Kubernetes. Se você quiser abusar das permissões, primeiro deve ler sobre isso aqui:

Sabendo sobre RBAC e tendo enumerado o ambiente, você pode agora tentar abusar das permissões com:

Privesc para um Namespace diferente

Se você comprometeu um namespace, pode potencialmente escapar para outros namespaces com permissões/recursos mais interessantes:

Do Kubernetes para a Nuvem

Se você comprometeu uma conta K8s ou um pod, pode ser capaz de se mover para outras nuvens. Isso ocorre porque em nuvens como AWS ou GCP é possível dar permissões a um SA do K8s sobre a nuvem.

Support HackTricks

Last updated