Уязвимость в ядре Linux, позволяющая выйти из изолированного контейнера
Уязвимость присутствует в подсистеме netfilter и связана с недоработкой в обработчике setsockopt IPT_SO_SET_REPLACE. Проблема проявляется только при использовании пространств имён для изоляции сети и идентификаторов пользователей (user namespaces и network namespaces, сборка ядра с CONFIG_USER_NS=y и CONFIG_NET_NS=y). Так как user namespaces по умолчанию отключены в большинстве дистрибутивов, уязвимость представляет опасность в основном для систем, использующих изолированные контейнеры.
В обычных условиях вызов compat_setsockopt() может выполнить только пользователь root, но в ядрах с поддержкой пространств имён для сети и идентификаторов пользователей данное ограничение снимается и функциональность доступна для непривилегированного пользователя, работающего внутри контейнера (т.е. пользователь из контейнера может обойти изоляцию, выполнив код на уровне ядра). Детальное описание метода эксплуатации планируется обнародовать на следующей неделе.
Примечательно, что в списке изменений к новым выпускам факт исправления уязвимости никак не отмечен. Более того, исправления были предложены ещё для ветки 4.6-rc2 в апреле, без акцентирования внимания на наличие уязвимости, а начальный патч был подготовлен компанией Google, отправлен разработчикам ядра и использован в Chrome OS в начале марта.
Источник: http://www.opennet.ru/opennews/art.shtml?num=44669
|
0 | Tweet | Нравится |
|