Написать пост

Релиз Kubernetes 1.13 с исправлением уязвимости повышения привилегий

Аватар Андрей Галадей

Брешь в системе Kubernetes позволяла отправлять discovery-запрос к API бэкенда. Баг был обнаружен во всех версиях, начиная с 1.0.

Обложка поста Релиз Kubernetes 1.13 с исправлением уязвимости повышения привилегий

Выпущена платформа Kubernetes 1.13, в которой разработчики устранили уязвимость нелегального повышения привилегий. Баг позволял получить полный контроль за кластером контейнеров.

Уязвимость в Kubernetes

Для эксплуатации бреши нужно было отправить специально оформленный discovery-запрос к API бэкенда, который оставлял открытым сетевое соединение. Это позволяло получить доступ к серверу API и отправлять ему произвольные команды. При этом бэкенд воспринимал запросы как отправленные сервером.

Кроме того, все пользователи Kubernetes, в том числе те, что не прошли аутентификацию, могли использовать эту брешь. Как оказалось, проблема «тянется» с версии 1.0.

Для её устранения нужно обновить Kubernetes до версий 1.10.11, 1.11.5, 1.12.3 и 1.13.0 или хотя бы блокировать анонимный доступ к API при помощи опции --anonymous-auth=false, а также аннулировать права на выполнение операций exec/attach/portforward.

Основные нововведения Kubernetes 1.13

  • Стабилизирован интерфейс Container Storage (Interface) для создания плагинов под разные системы хранения. Это позволяет не вносить изменения в код Kubernetes и одновременно использовать разные системы прикрепления и монтирования хранилищ. Также разработчики стабилизировали упрощённый интерфейс для управления кластером Kubernetes.
  • Добрался до релиза планировщик распределения контейнеров TAVS, а также сервис Kubelet Device Plugin Registration, который обеспечивает доступ к Kubelet из плагинов.
  • Добавлен экспериментальный интерфейс для создания плагинов, что позволяет интегрировать в Kubernetes сторонние системы мониторинга.
  • Статус бета-версий получили APIServer DryRun, команда Kubectl Diff и возможность использования локальных блочных устройств в качестве хранилищ постоянных данных.
  • По умолчанию теперь используется DNS-сервер CoreDNS.

Прошлый релиз Kubernetes состоялся в сентябре 2018 года. В версии 1.12 на стабильную работу вышли функции Kubelet TLS Bootstrap для подписи сертификатов безопасности при TLS-соединениях, а также поддержки виртуальных машин Azure.

Следите за новыми постами
Следите за новыми постами по любимым темам
493 открытий494 показов