N° 01 — 목록

'Fine-grained' (1)

  1. Cloud & Infrastructure/Kubernetes Security

    K8s Security - 03. fine-grained kubelet API authorization

    Pod 목록을 읽으려면 exec 권한이 필요했다 — fine-grained kubelet API authorizationPrometheus가 노드의 Pod 목록을 수집하려 한다. 노드에 들어가 kubectl이 보는 것과 비슷한 정보를 얻으려면, kubelet이 10250 포트에 연 HTTPS API를 호출해야 한다. 그런데 1.32 이전의 kubelet에서 /pods를 읽으려면 RBAC상 nodes/proxy 권한이 필요했다. 문제는 이 nodes/proxy가 /pods(읽기)뿐 아니라 /exec/...(컨테이너 안에서 임의 명령 실행)를 인가하는 같은 권한이라는 점이다. 모니터링 에이전트가 Pod 개수를 세려다 노드 전체에 셸을 띄울 수 있는 능력을 함께 받은 셈이다.이 글은 kubelet API의 읽..

    · 댓글