Привет!
Детальный материал (с примерами и screenshots), в котором описан kill chain по «захвату» nodes кластера K8S. От эксплуатации уязвимости в запущенном на нем web-приложении до получения root-доступа на node.
Статья хоть и не самая новая (2018 год), но все равно может оказаться полезной.
Последовательность действий:
🍭 Анализ web-сайта, поиск уязвимостей (DirBuster)
🍭 «Проникновение» в контейнер через RCE-уязвимость. Установка необходимых «инструментов для дальнейшей работы» (Metasploit, Meterpreter)
🍭 Чтение Service Account (SA) Token. «Установка» kubectl. Изучение возможностей SA (list, create, exec и т.д.)
🍭 «Прыжок» в другой контейнер, SA которого обладает большими возможностями
🍭 Создание pod, с mount /root:/ - AttackerPod
🍭 Изменение пароля пользователя, входящего в sudo группу от имени root. SSH на node.
🍭 Но и этого оказалось мало для автора! Создание DaemonSet с AttackerPod и повтор аналогичных действий для компрометации всех nodes кластера
Статья - хорошо структурированный материал, который объединяет в себе несколько инструментов, тактик и техник, реализация которых привела к компрометации кластера. «Вишенкой» является интересный и простой слог автора ☺️
P.S. В конце статьи приводятся рекомендации – как можно было этого избежать? С одной стороны, достаточно простые меры и «все понятно». С другой – лишний повод задуматься о том, что даже встроенные возможности кластера K8S по ИБ могут дать многое и не стоит пренебрегать их настройками.
P.P.S. Preview к ссылке не работает, дублируем: https://www.inguardians.com/blog/attacking-and-defending-kubernetes-bust-a-kube-episode-1/
Post #376
885