Kubernetes OPA Gatekeeper bypass
O autor original desta página é Guillaume
Abusando de má configuração
Enumerar regras
Ter uma visão geral pode ajudar a saber quais regras estão ativas, em qual modo e quem pode contorná-las.
Com a CLI
ConstraintTemplate e Constraint podem ser usados no Open Policy Agent (OPA) Gatekeeper para impor regras em recursos do Kubernetes.
Com a GUI
Uma Interface Gráfica do Usuário também pode estar disponível para acessar as regras OPA com Gatekeeper Policy Manager. É "uma simples interface web somente leitura para visualizar o status das políticas OPA Gatekeeper em um Cluster Kubernetes."
Procure pelo serviço exposto:
Namespaces excluídos
Como ilustrado na imagem acima, certas regras podem não ser aplicadas universalmente em todos os namespaces ou usuários. Em vez disso, elas operam com base em uma lista de permissões. Por exemplo, a restrição liveness-probe
é excluída de sua aplicação nos cinco namespaces especificados.
Bypass
Com uma visão abrangente da configuração do Gatekeeper, é possível identificar possíveis configurações incorretas que podem ser exploradas para obter privilégios. Procure por namespaces na lista de permissões ou excluídos onde a regra não se aplica e, em seguida, execute seu ataque lá.
Abusando do ValidatingWebhookConfiguration
Outra maneira de contornar as restrições é focar no recurso ValidatingWebhookConfiguration :
Referências
Last updated