Бесплатно Экспресс-аудит сайта:

16.04.2021

Уязвимость в библиотеке Go позволяет проводить DoS-атаки на контейнерные движки CRI-O и Podman

Уязвимость в одной из библиотек Go, на которой основано открытое программное обеспечение для оркестровки контейнеризированных приложений Kubernetes, может привести к состоянию «отказа в обслуживании» (DoS) контейнерных движков CRI-O и Podman.

Проблема (CVE-2021-20291) затрагивает библиотеку Go под названием containers/storage. По словам исследователя безопасности Авива Сассона (Aviv Sasson) из подразделения Unit 42 компании Palo Alto Networks, уязвимость можно использовать , поместив вредоносный образ в реестр. Попытка извлечь образ из реестра ничего не подозревающим пользователем приведет к состоянию «отказа в обслуживании».

«С помощью данной уязвимости злоумышленники могут поставить под угрозу любую контейнерную инфраструктуру, которая полагается на уязвимые движки контейнеров, включая Kubernetes и OpenShift», — сообщил Сассон.

CRI-O и Podman — образы контейнеров, похожие на Docker, которые используются для выполнения действий и управления контейнерами в облаке. Библиотека containers/storage используется движками CRI-O и Podman для управления процессами хранения и загрузки образов контейнеров.

В ходе эксплуатации уязвимости CRI-O не может извлекать новые образы, запускать новые контейнеры (даже если они уже извлечены), получать списки локальных образов или уничтожать контейнеры. В аналогичном случае Podman не может извлекать новые образы, извлекать запущенные модули, запускать новые контейнеры (даже если они уже извлечены), выполнять их в контейнерах, извлекать существующие образы или уничтожать существующие контейнеры.

«Злоумышленник может загрузить в реестр вредоносный уровень, который нацелен на использование уязвимости, а затем загрузить образ, использующий множество уровней, включая вредоносный. Затем, когда жертва начнет извлекать образ из реестра, она загрузит и вредоносный уровень в рамках данного процесса, вызывая уязвимость», — пояснил Сассон.

Как только контейнерный движок начинает загрузку вредоносного уровня, конечным результатом является сбой в процессе.

Уязвимость была исправлена в версии контейнера 1.28.1, версии CRI-O 1.20.2 и версии Podman 3.1.0.