В CRI-O, платформата за управление изолирани контейнери, беше открита критична уязвимост (CVE-2022-0811), която позволява заобикаляне на изолацията и изпълнение на собствен код на хост системата. При използване на CRI-O вместо containerd и Docker за стартиране на контейнери, управлявани от платформата Kubernetes, атакуващият може да контролира всеки възел в кластера Kubernetes. За атака са достатъчни права за стартиране на собствен контейнер в кластера Kubernetes.
Уязвимостта е причинена от възможността за промяна на sysctl параметъра на ядрото „kernel.core_pattern“ („/proc/sys/kernel/core_pattern“), достъпът до който не е блокиран, въпреки че не попада в списъка на безопасните параметри за промяна, действителни само в пространството на имената на текущия контейнер. Чрез този параметър потребителят от контейнера може да промени поведението на ядрото на Linux относно обработката на core файлове на хост средата и да организира изпълнението на произволна команда с права root на хоста, задавайки обработчик от тип „|/bin/sh -c ‘команди'“.
Проблемът се проявява от версия CRI-O 1.19.0 и е отстранен в актуализациите 1.19.6, 1.20.7, 1.21.6, 1.22.3, 1.23.2 и 1.24.0. В дистрибуциите проблемът се проявява в продуктите Red Hat OpenShift Container Platform и openSUSE/SUSE, в репозиториите на които има пакет cri-o.
Източник: opennet.ru
