LINUX.ORG.RU

В ядре Linux устранена локальная уязвимость, позволяющая поднять привилегии до root

 , , ,


2

3

В недавнем релизе Linux 4.4 устранена уязвимость (CVE-2015-8660), позволяющая поднять привилегии до уровня администратора. Уязвимость связана с инфраструктурой OverlayFS при использовании user namespaces.

User namespaces (пространство имён пользователей) позволяет использовать в рамках изолированного окружения любой идентификатор пользователя, в том числе и root (0). Это упрощает создание виртуальных окружений и контейнеров, а также позволяет сохранить один и тот же id пользователя в разных контейнерах, при этом производится абстракция от реальных системных id. Также разрешается проблема монтирования файловых систем от не-администратора.

Механизм OverlayFS позволяет создать многослойную структуру, в которой верхний уровень ФС будет перекрывать нижний. Таким образом можно над read-only файловой системой примонтировать другой раздел, при этом приоритет у дублирующихся файлов отдаётся верхним уровням. Для пользователя OverlayFS прозрачна и выглядит так, как если бы это была цельная файловая система.

Возможно создать виртуального пользователя с правами root в изолированном окружении для него и примонтировать внешнюю файловую систему. Ошибка в коде OverlayFS заключалась в том, что при изменении привилегий файла на оверлейной файловой системе виртуальным администратором становилось возможным создать файл с suid-битом и получить доступ к нему от настоящего пользователя извне изолированного окружения. Таким образом можно повысить привилегии до уровня root.

Ошибка была актуальна начиная с ядра 3.18 до 4.4. Часть дистрибутивов уже приняла патчи с исправлениями, и пользователям рекомендуется обновиться.

Также стоит заметить, что подобные ошибки могут возникнуть и при работе некоторых других модулей. Проверить, включена ли у вас эта возможность, можно командой ls /proc/self/ns|grep user (если отключена, вывод будет пустым). Отключить можно опцией при сборке ядра (CONFIG_USER_NS=n), но стоит заметить, что это может привести к недоступности некоторых функций.

Доступен пример эксплойта.

>>> OpenNet

>>> Подробности

неделя уязвимостей на ЛОРе

cvs-255 ★★★★ ()
Ответ на: комментарий от cvs-255

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

anonymous ()

И как теперь локально повышать привелегии?

anonymous ()

А ещё арч ругают

https://bugs.archlinux.org/task/36969

Closed by Dave Reisner (falconindy) Monday, 29 June 2015, 20:52 GMT Reason for closing: Won't implement Additional comments about closing: The situation is not significantly different from when this bug was originally closed. There are still multiple vulnerabilities every month and upstream is still not providing a way to enable this at runtime via a sysctl flag. Arch is not going to carry an out-of-tree patch to add the sysctl flag like other distributions, so I don't think it makes sense to leave this issue open. The feature is not going to be ready for years.

greenman ★★★★ ()

Мораль сей истории — собирайте ядро только с теми опциями, которыми пользуетесь.

jollheef ★★★ ()

уязвимость в кривом софте запущенном от рута...это очень сложно называть уязвимостями

написать свой демон «калькулятора» запустить от рута и клиент будет конектится от пользователя-но из за кривости-будет уязвимость получения прав рута....это смешно

anonymous ()
Ответ на: комментарий от jollheef

Мораль сей истории — собирайте ядро только с теми опциями, которыми пользуетесь.

Еще остались тру-линуксоиды, которые делают подобное для своего десктопчика? Да и на серверах, как правило, используются ядра от дистропроизводителей, т.к. обновляются регулярно в плане фикса уязвимостей.

Dead ★★★ ()
Ответ на: комментарий от anonymous

Главное - и user namespaces и overlayfs используются в популярном ныне Docker (overlayfs - не дефолтно), а это означает очередную возможность выбраться из контейнера в хост-систему.

wasd ()
Ответ на: комментарий от Dead

Еще остались тру-линуксоиды, которые делают подобное для своего десктопчика?

Почти каждый пользователь Gentoo.

jollheef ★★★ ()

Добавьте кто-нибудь тэг «уязвимости в ядре» или ещё какой-то подобный. Следить за тегом «linux» заколебёшься.

MrClon ★★★★★ ()
Ответ на: комментарий от jollheef

Почти каждый пользователь Gentoo.

т.е. пользователи Gentoo действительно сидят и втыкают какая опция для чего нужна? Это ж день убить можно...

Dead ★★★ ()

А много имеется планшетов с ядром от 3.18 до 4.4?

Deathstalker ★★★★★ ()
ls: cannot access /proc/self/ns: No such file or directory
ls /proc/self
attr		 cpuset   io	     mounts	 personality  stat
auxv		 cwd	  limits     mountstats  root	      statm
cgroup		 environ  loginuid   net	 sched	      status
clear_refs	 exe	  maps	     oom_adj	 sessionid    syscall
cmdline		 fd	  mem	     oom_score	 smaps	      task
coredump_filter  fdinfo   mountinfo  pagemap	 stack	      wchan
deep-purple ★★ ()
Последнее исправление: deep-purple (всего исправлений: 1)
Ответ на: комментарий от Deathstalker

А много имеется планшетов с ядром от 3.18 до 4.4?

А планшеты тут причем? Думаете производители не отключают эту опцию? В embedded мире как раз таки опций по минимуму оставляют :)

Dead ★★★ ()
Ответ на: комментарий от jollheef

Юзернэймспэйсы мало включить при компиляции, их надо ещё настроить для конкретного юзера (и сделать это может только рут). Там каждому пользователю можно назначить какой-нибудь диапазон uid-ов и gid-ов на который он сможет при желании мапить свои нэймспэйсы.
Так-что эта уязвимость бьёт по тем кто пользуется соответствующими фичами (ну или тем кто зачем-то их настроил, и не пользуется).

MrClon ★★★★★ ()

На хосте форкнуться с созданием нового пространства имён не дают, нужна CAP_SYS_ADMIN. В контейнере создать пространство имён не дают и руту. Баг какой-то что ли? Вроде обещали работающую вложенность пространств? Или это про что-то другое было?

i-rinat ★★★★★ ()
Ответ на: комментарий от wasd

нет это означает что можно сделать файлик с suid битом в докере, а запускать его придется извне руками, как обычно в общем

subwoofer ★★★★ ()
Ответ на: комментарий от wasd

а это означает очередную возможность выбраться из контейнера в хост-систему.

Если я правильно понятл — нет. Отпиндориный бинарник нужно запускать из хостовой системы. Т.е. нужно иметь рута в контейнере и обычную учётку на хосте.

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

Если я правильно понятл — нет.

Эксплоит проверяли? Что-то там про это ничего не заметил. Но каюсь, читал не очень вдумчиво. У меня 3.16 еще. Там еще нету /proc/[pid]/setgroups.

Dead ★★★ ()
Ответ на: комментарий от i-rinat

Вроде обещали работающую вложенность пространств? Или это про что-то другое было?

Вложенность то-ли включить надо отдельно (кажется при конпиляции), то-ли вообще ещё не реализовано, то-ли реализовано но пока всё плохо и по-умолчанию выключено. Мопед не мой и старый, актуальную инфу лучше уточнить из первоисточника.

Не вложенные юзернеймспэйсы в моей винтажной убунте с ведром 3.13.0-70-generic работают без проблем, надо только выдать пользователю какой-нибудь диапазон {u,g}id-ов (настраивается в файле /etc/sub{u,g}id).

MrClon ★★★★★ ()
Ответ на: комментарий от Dead

Эксплоит проверяли?

Нет, руководствуюсь общими соображениями и доступным описанием уязвимости.

MrClon ★★★★★ ()
Ответ на: комментарий от Deathstalker

Думаю, что не отключают.

Что-то с ходу ни один конфиг для какого-нибудь galaxy tab не загуглился. Честно говоря, пока не вижу особого смысла включать эту опцию в планшетных ядрах. Она же по умолчанию ставится в n.

Dead ★★★ ()

Огурцы в вашем венегрете стали уязвимостью, давай выковыривай!

splinter ★★★★★ ()

Очень специфическая уязвимость. По сравнению с дырой в ffmpeg просто теория струн и параллельных вселенных какая-то.

void_ptr ★★★★ ()

libreboot project recommends avoiding all modern AMD hardware ... due to severe security and freedom issues ... If you have an AMD based system affected by the problems described below, then you should get rid of it as soon as possible
https://libreboot.org/faq/#amd

Кстати полуоффтоп, набросьте кто-нибудь про зонды в тн швободном амд.

anonymous ()

Кто-нибудь проверял, на Слаке это работает?

slamd64 ()
Ответ на: комментарий от jollheef

Кстати да, это ответ на вопрос зачем ядро собирать

cvs-255 ★★★★ ()
Ответ на: комментарий от Dead

т.е. пользователи Gentoo действительно сидят и втыкают какая опция для чего нужна? Это ж день убить можно...

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

mashina ★★★★★ ()

Медвежуть!

Я представляю сколько в винде дыр, там такой бессмысленный чудовищный оверинжиниринг что даже не смешно.

I-Love-Microsoft ★★★★★ ()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от anonymous

Отличная ссылка, спасибо. Надо показывать её всем, кто спрашивает «Зочем нам RISC-V/lowRISC?».

tailgunner ★★★★★ ()
Последнее исправление: tailgunner (всего исправлений: 1)

становилось возможным создать файл с suid-битом и получить доступ

Проблема в этом костыле под названием suid. В современных ОС типа плана нет ни suid, ни этого самого рута.

loz ★★★★★ ()

виртуальных окружений и контейнеров

Линус уже изошел на фекалии о ненужности виртуализации?

unt1tled ★★★ ()
Последнее исправление: unt1tled (всего исправлений: 1)
Ответ на: комментарий от Dead

Да! На счёт дня - это слишком оптимистично. А ещё учитывая, что с каждым мажорным релизом опции добавляются и изменяются.

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Dead

т.е. пользователи Gentoo действительно сидят и втыкают какая опция для чего нужна? Это ж день убить можно...

Нет, мы по ночам качаем пакеты с готовыми ядрами из других дистров, пока их майнтейнеры спят.

viewizard ()

Новости про ядро нет, а про уязвимость есть. Веселье!

garik_keghen ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

А учитывая, что в конфигураторах они при первом запуске помечаются (NEW), всё не так страшно.

ABW ★★★ ()

Linux
CVE-2015-8660
OverlayFS
CONFIG_USER_NS=n
пример эксплойта

Какая суета... :-)

anonymous ()
Ответ на: комментарий от Dead

Еще остались тру-линуксоиды, которые делают подобное для своего десктопчика?

Почти каждый пользователь Gentoo. К примеру я.

haku ★★★★ ()
Ответ на: комментарий от Dead

т.е. пользователи Gentoo действительно сидят и втыкают какая опция для чего нужна? Это ж день убить можно...

Не хочу тебя пугать но там еще и у пакетов есть USE флаги! Просто ад для любого человека с синдромом Дауна!

TDrive ★★★★ ()
Последнее исправление: TDrive (всего исправлений: 1)

а сколько ещё таких язвимостей, которые пользуют втихаря? тыщи их

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.