
От версии к версии Kubernetes может менять API и меняется такое поле как
Или вот таким
Вы получите о том какие версии API используются, включая
apiVersion
. Оно бывает в стадиях alpha
, beta
и stable
или также известное как General Availability (GA)
. Также может быть и разная группа: apps
, batch
, policy
, rbac.authorization.k8s.io
, certificates.k8s.io
и т.д. Что у вас в кластере есть можно посмотреть с помощью kubectl
команды api-versions
.Или вот таким
curl
запросом из Pod
даже при наличии только default service account
: curl --cacert ${CACERT} --header "Authorization: Bearer ${TOKEN}" -X GET ${APISERVER}/apis
Вы получите о том какие версии API используются, включая
CRD
. Данные о CRD
могут дать информацию о том какие сторонние решения используются и возможно использовать их для атаки. Так, например, можно знать какие порты точно слушаются сторонним решением. Также точная информация о apiVersion
позволит правильно составлять запросы к тем или иным ресурсам в соответствующей версии Kubernetes, а не перебирать вслепую.