URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 106316
[ Назад ]

Исходное сообщение
"Локальная root-уязвимость в ядре Linux"

Отправлено opennews , 13-Янв-16 11:02 
Раскрыты (http://seclists.org/fulldisclosure/2016/Jan/28) подробности эксплуатации уязвимости (http://www.halfdog.net/Security/2015/UserNamespaceOverlayfsS.../) (CVE-2015-8660) в ядре Linux, позволяющей непривилегированному локальному пользователю получить права root. Уязвимость вызвана недоработкой в коде установки прав доступа в файловой системе OverlayFS, проявляющейся при использовании пространств имён для идентификаторов пользователей (user namespaces (http://man7.org/linux/man-pages/man7/user_namespaces.7.html)).

Суть проблемы в том, что пользователь может при помощи технологии "user namespaces" создать изолированное окружение со своим пользователем root и примонтировать в нём часть внешней ФС через OverlayFS. Из-за ошибки в OverlayFS при изменении прав доступа в изолированном окружении, изменения также остаются в связанной с OverlayFS директории для хранения изменений (например, директория для изменений может быть создана в tmpfs и остаётся доступна извне, также доступа к ФС изолированного окружения можно получить через /proc). Таким образом, в изолированном окружении можно  создать исполняемый файл с флагом suid и выполнить его вне изолированного окружения. Для тестирования подготовлен прототип эксплоита (http://www.halfdog.net/Security/2015/UserNamespaceOverlayfsS...).


Вызвавшая уязвимость ошибка была устранена (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux....) в ядре Linux в начале декабря и вошла в состав релиза ядра 4.4, но детальная информация об уязвимости обнародована только сейчас. Проблема проявляется начиная с ядра 3.18, поэтому не касается штатных ядер дистрибутивов RHEL/CentOS (https://bugzilla.redhat.com/show_bug.cgi?id=1291329) и Debian (https://security-tracker.debian.org/tracker/CVE-2015-8660). Проблема затрагивает (http://people.canonical.com/~ubuntu-security/cve/2015/CVE-20...) выпуски Ubuntu 15.10 (http://www.ubuntu.com/usn/usn-2858-1/) и Fedora 23 (https://bodhi.fedoraproject.org/updates/FEDORA-2016-6ce812a1e0), но уже устранена в выпущенных несколько дней назад обновлениях пакетов с ядром.


Следует отметить, что так как многие старые подсистемы ядра написаны без оглядки на возможности User Namespace, не исключается наличие ещё не выявленных похожих уязвимостей. Например, кроме  OverlayFS подобные проблемы уже найдены (https://lkml.org/lkml/2015/12/25/71) в ptrace (https://bugzilla.redhat.com/show_bug.cgi?id=1295287) (CVE-2015-8709).  В качестве обходного пути защиты рекомендуется отключить поддержку User Namespace в ядре (CONFIG_USER_NS=n). Проверить включена ли поддержка User Namespace можно командой "ls /proc/self/ns|grep user".

URL: http://seclists.org/fulldisclosure/2016/Jan/28
Новость: https://www.opennet.ru/opennews/art.shtml?num=43659


Содержание

Сообщения в этом обсуждении
"Локальная root-уязвимость в ядре Linux"
Отправлено Олег , 13-Янв-16 11:02 
Можно не бояться:
$ zgrep -i CONFIG_OVERLAY_FS /proc/config.gz
# CONFIG_OVERLAY_FS is not set

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 11:12 
Как же я рад за тебя!

"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 13-Янв-16 11:56 
Все так не смогут проверить. /proc/config.gz может быть выключен в ядре.
Вот в штатном дебиановском его нету. Впрочем, что я парюсь, в новости прямым текстом сказано, что Debian вне зоны риска.

"Локальная root-уязвимость в ядре Linux"
Отправлено Diozan , 13-Янв-16 12:43 
В /boot заглянуть не судьба?

"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 13-Янв-16 18:26 
> В /boot заглянуть не судьба?

Вау. Спасибо. =)


"Локальная root-уязвимость в ядре Linux"
Отправлено grammar_n , 13-Янв-16 12:57 
нельзя писать "нету" и при этом "парюсь". в вашем случае только парюся

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 12:14 
CONFIG_OVERLAYFS_FS

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 18:06 
/proc/config.gz: No such file or directory

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 11:13 
uname -r забыл вывалить

"Локальная root-уязвимость в ядре Linux"
Отправлено iPony , 13-Янв-16 11:48 
> но затрагивает выпуски Ubuntu 15.10

$ uname -a
Linux ubuntu1404v 3.19.0-43-generic #49~14.04.1-Ubuntu SMP Thu Dec 31 15:46:00 UTC 2015 i686 i686 i686 GNU/Linux
$ cat /etc/*-release | grep -i "version"
VERSION="14.04.3 LTS, Trusty Tahr"
VERSION_ID="14.04"



"Локальная root-уязвимость в ядре Linux"
Отправлено 222 , 13-Янв-16 14:17 
Linux home 3.13.0-74-generic #118-Ubuntu SMP Thu Dec 17 22:52:02 UTC 2015 i686 i686 i686 GNU/Linux

VERSION="14.04.3 LTS, Trusty Tahr"
VERSION_ID="14.04"

;)


"Локальная root-уязвимость в ядре Linux"
Отправлено count0krsk , 14-Янв-16 03:44 
14.04.2
3.16.0-36 и обновлять не тороплюсь, ибо работает.
Воткнёшь новую версию - то вайфай/картридер отвалится, то подсветка не регулируется, то скорость проца. За*пло.
Ах да, ещё и модуль nvidia пересобирать и с оптимус-ом долбаться.

"Локальная root-уязвимость в ядре Linux"
Отправлено iPony , 14-Янв-16 14:33 
> 3.16.0-36

Оно же в ubuntu всё - тебя какиры похакают и отымеют
https://wiki.ubuntu.com/Kernel/LTSEnablementStack


"Локальная root-уязвимость в ядре Linux"
Отправлено count0krsk , 16-Янв-16 10:34 
> Оно же в ubuntu всё - тебя какиры похакают и отымеют

Пускай найдут сначала в тайге ))) И сначала должны закончиться виндузятники, потом бздуны, которые обновляются раз в пятилетку потому что "работает же, а админ который ставил - уволился". А потом любители хостить на шлюзе веб-сайты на wordpress или IIS.


"Локальная root-уязвимость в ядре Linux"
Отправлено Roo2AT7d , 13-Янв-16 12:12 
Ну хоть когда-то затвердевшее в дебиане оказалось безопаснее.

"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 13-Янв-16 19:10 
А Вы собираетесь утверждать, что обычно оно менее безопасно, чем... Чем что, кстати?
Бред сивой кобылы.

"Локальная root-уязвимость в ядре Linux"
Отправлено Roo2AT7d , 13-Янв-16 22:14 
> Чем что, кстати?

Чем арч, конечно же. Не раз проскакивали новости, что в арче не проявлялись новые серьезные уязвимости на фоне остальных дистрибутивов - всегда забавляло.


"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 14-Янв-16 01:09 
Хм. Я не слежу за арчем, но в данном факте ничего удивительного нет. В апстриме иногда (довольно редко) баги правятся быстрее, чем в серьёзных дистрибутивах. И пиар подобных исключительных случаев -- основная забава школьников[-/]арчеводов.

"Локальная root-уязвимость в ядре Linux"
Отправлено Классический анонимуз , 14-Янв-16 04:52 
Арчененавистникам превед!

ls /proc/self/ns | grep user
# uname -a
Linux www.sex.com 4.3.3-2-ARCH #1 SMP PREEMPT Wed Dec 23 20:09:18 CET 2015 x86_64 GNU/Linux


"Локальная root-уязвимость в ядре Linux"
Отправлено Классический анонимуз , 14-Янв-16 04:58 
"В апстриме иногда (довольно редко) баги правятся быстрее, чем в серьёзных дистрибутивах"

Ну и чушь. В дистрибах подавляющее большинство багов (non security) вообще не правятся. Даже если это critical usability bug. И делай что хочешь до нового релиза. Арч по понятным причинам этой проблемы лишён, поэтому после 15 лет всяких FreeBSD, Debian, CentOS и прочего все мои десктопы на Арче.


"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 14-Янв-16 09:41 
>> "В апстриме иногда (довольно редко) баги правятся быстрее, чем в серьёзных дистрибутивах"
> Ну и чушь. В дистрибах подавляющее большинство багов (non security) вообще не
> правятся.

Потому что эти баги в основном до серьёзных дистров не доходят, ибо пихают в них (в дистры) только стабильные версии апстримного софта. Забегая вперёд, если в стабильной версии апстримного пакета внезапно окажутся "критические для использования баги", то это плохое ПО.

При построении релиза в дистрибутиве как правило идёт работа над интеграцией ПО в окружение других пакетов. Отладить программу доволно просто, а вот протестировать её в окружении -- задача весьма трудоёмкая.

> Даже если это critical usability bug. И делай что хочешь до нового релиза.

Только если эта проблема была обнаружена после релиза, кэп. Но вообще никто не мешает установить пару-тройку пакетов из нестабильной ветви, а также есть бэкпорты. Никто вас ручками не заставляет собирать (хотя это в общем-то тоже метод).

> Арч по понятным причинам этой проблемы лишён, поэтому
> после 15 лет всяких FreeBSD, Debian, CentOS и прочего все мои
> десктопы на Арче.

"Каждый др***т как хочет", и в своём маленьком десктопном мирке -- на здоровье. Главное, чтобы на серверы в продакшн не тащили.


"Локальная root-уязвимость в ядре Linux"
Отправлено Классический анонимуз , 14-Янв-16 11:40 
"баги в основном до серьёзных дистров не доходят"

бла-бла-бла...

centos6
gthumb-2.10.11-8.el6.x86_64.rpm

arch
gthumb 3.4.1-3

теперь открой changelog за последние 7 (СЕМЬ, КАРЛ, СЕМЬ) лет. И что, ни одного серьёзного бага не видишь?

"никто не мешает установить пару-тройку пакетов из нестабильной ветви"

ахаха, какой прелестный колхоз. а как же "пихают в дистры только стабильные версии апстримного софта"?

Домашнее задание тебе: обоснуй нестабильность версии 3.4.1. С ссылками.


"Локальная root-уязвимость в ядре Linux"
Отправлено Michael Shigorin , 14-Янв-16 12:33 
> Домашнее задание тебе: обоснуй нестабильность версии 3.4.1. Со ссылками.

Простите за вмешательство, но разница между GNOME2 и GNOME3 -- это уже классический (sic) пример нестабильности иного порядка.


"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 14-Янв-16 17:07 
>> Домашнее задание тебе: обоснуй нестабильность версии 3.4.1. Со ссылками.
> Простите за вмешательство, но разница между GNOME2 и GNOME3 -- это уже
> классический (sic) пример нестабильности иного порядка.

Да я бы и сам лучше не написал. Особенно учитывая, что этот анон, похоже, может читать лишь короткие фразы, а длинные дробит с потерей контекста. =/


"Локальная root-уязвимость в ядре Linux"
Отправлено Классический анонимуз , 18-Янв-16 07:14 
Не прощаю. В CentOS7 гнум 3-й. Как же так, он же на порядки менее стабильный чем 2?

И QEMU bump-нули до 1.5. Соответственно, опять спрашиваю, кто-то может обосновать мегастабильность релизов которые выбирает CentOS, чем 1.6 нестабильнее 1.5?


"Локальная root-уязвимость в ядре Linux"
Отправлено freehck , 14-Янв-16 17:04 
> "никто не мешает установить пару-тройку пакетов из нестабильной ветви"
> ахаха, какой прелестный колхоз. а как же "пихают в дистры только стабильные
> версии апстримного софта"?

Вы не поверите, но в нестабильной ветке Debian находятся стабильные версии апстримного софта.


"Локальная root-уязвимость в ядре Linux"
Отправлено Классический анонимуз , 14-Янв-16 12:13 
или

Centos6
qemu-kvm-0.12.1.2

Arch
qemu 2.4.1

сколько между этими версиями юзабилити багов?


"Локальная root-уязвимость в ядре Linux"
Отправлено Andrey Mitrofanov , 14-Янв-16 12:45 
> qemu-kvm-0.12.1.2
> qemu 2.4.1
> сколько между этими версиями юзабилити багов?

Добавлено или исправлено??


"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 14-Янв-16 18:59 
> поэтому после 15 лет

Точно поэтому? Думаю, причина в другом.


"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 14-Янв-16 19:06 
тонко

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 12:41 
Т.е. механизм "user namespaces", созданный для безопасности (контейнеризации) сам приводит к проблемам с безопасностью. Замечательно!

"Локальная root-уязвимость в ядре Linux"
Отправлено IZh. , 13-Янв-16 13:45 
Первые подушки безопасности плохо работали. Замечательно!

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 15:47 
> Первые подушки безопасности плохо работали. Замечательно!

В бздах когда-то с джейлами на такие (или очень похожие) грабли наступали. Но учесть опыт "бздюков" и учиться на чужих ошибках – лапчатым, видимо, невместно.



"Локальная root-уязвимость в ядре Linux"
Отправлено Michael Shigorin , 13-Янв-16 15:52 
> В бздах когда-то с джейлами на такие (или очень похожие) грабли наступали.

Вот здесь хорошо бы ссылочку/CAN, похожесть похожести рознь.

PS: хорошо, что мы не стали перепрыгивать на overlayfs слишком быстро, хотя пробный набросок для инфраструктуры сборки образов есть ;-)


"Локальная root-уязвимость в ядре Linux"
Отправлено тигар , 13-Янв-16 21:19 
https://www.freebsd.org/security/advisories/FreeBSD-SA-04:03... ну вот из прикольного, к примеру. А в https://www.freebsd.org/security/advisories/ наверняка что-то еще про jail есть

"Локальная root-уязвимость в ядре Linux"
Отправлено Michael Shigorin , 13-Янв-16 23:02 
> https://www.freebsd.org/security/advisories/FreeBSD-SA-04:03...

Спасибо, занятно -- но при чём тут ФС?

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

Т.е. "интербаг", что совсем другой класс (технически и организационно) проблем, чем "просто баг" вроде недостаточной проверки _в пределах_ подсистемы.


"Локальная root-уязвимость в ядре Linux"
Отправлено anonymous , 14-Янв-16 06:53 
> В бздах когда-то с джейлами на такие (или очень похожие) грабли наступали.
> Но учесть опыт "бздюков" и учиться на чужих ошибках – лапчатым,
> видимо, невместно.

только там жайлы не позиционировались, как механизм безопасности.


"Локальная root-уязвимость в ядре Linux"
Отправлено Michael Shigorin , 14-Янв-16 13:14 
> только там жайлы не позиционировались, как механизм безопасности.

---
One of the tools which can be used to enhance the security of a FreeBSD system is jails.
--- https://www.freebsd.org/doc/handbook/jails.html


"Локальная root-уязвимость в ядре Linux"
Отправлено anonymous , 14-Янв-16 21:09 
> ---
> One of the tools which can be used to enhance the security
> of a FreeBSD system is jails.
> --- https://www.freebsd.org/doc/handbook/jails.html

могут усилить безопасность, ага, но могут и не усилить )


"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 13:11 
$ grep -i CONFIG_OVERLAY_FS /boot/config-4.3.0-1-amd64
CONFIG_OVERLAY_FS=m
$ uname -a
Linux 4.3.0-1-amd64 #1 SMP Debian 4.3.3-2 (2015-12-17) x86_64 GNU/Linux

"Локальная root-уязвимость в ядре Linux"
Отправлено тигар , 13-Янв-16 13:40 
прелесть-то какая.

"Локальная root-уязвимость в ядре Linux"
Отправлено commiethebeastie , 13-Янв-16 13:49 
Кажется кто-то забыл про msblast.

"Локальная root-уязвимость в ядре Linux"
Отправлено iPony , 13-Янв-16 14:01 
У линуксов просто другая модель.
Чёткие Ынтерпрайзные пацаны сидят на 3.14 и их это не касается
Пионеры сидят на чем по свежее, им даже в радость всякие ошибки и прочее - лишний повод поковыряться.
Все довольны.

"Локальная root-уязвимость в ядре Linux"
Отправлено all_glory_to_the_hypnotoad , 13-Янв-16 21:48 
> Пионеры сидят на чем по свежее, им даже в радость всякие ошибки и прочее - лишний повод поковыряться.

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


"Локальная root-уязвимость в ядре Linux"
Отправлено Anonplus , 13-Янв-16 15:04 
Гайд по усилению безопасности? В Убунте? Это там, где при создании превьюшки для скачанного, но даже не открытого видеофайла, ffmpeg радостно отправит по сети злоумышленнику любой затребованный им файл?

http://habrahabr.ru/company/mailru/blog/274855/

Не смешите мои тапочки, какая там безопаность...


"Локальная root-уязвимость в ядре Linux"
Отправлено Kodesu , 13-Янв-16 15:58 
Конкретно Ubuntu тут ни при чем.

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 20:32 
> http://habrahabr.ru/company/mailru/blog/274855/

Круто! Какое же оказывается все вокруг дырявое! Это же еще и на ведроиде наверняка где-нить вылезет. :(


"Локальная root-уязвимость в ядре Linux"
Отправлено Виталий , 13-Янв-16 16:22 
~ # uname -a
Linux control 3.16.0-k1-kerio-686-pae #1 SMP Debian 3.16.7-ckt4-3~kerio1 (2015-03-12) i686 GNU/Linux
~ # ls /proc/self/ns|grep user
user


<< Kerio Control 8.6.1 >>


"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 16:46 
А отключить поддержку User Namespace в ядре через параметры ядра как-то можно отключить?

"Локальная root-уязвимость в ядре Linux"
Отправлено Мегазаычы , 13-Янв-16 18:30 
а самому почитать https://www.kernel.org/doc/Documentation/kernel-parameters.txt и узнать, вместо того, чтобы униженно ждать, что кто-то великий здесь ответит?

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 13-Янв-16 20:55 
Не знаешь, не отвечай, никто тебя не ждет.

"Локальная root-уязвимость в ядре Linux"
Отправлено Павел Самсонов , 13-Янв-16 20:03 
"Создать изолированное окружение со своим пользователем рут" - это простите как?

"Локальная root-уязвимость в ядре Linux"
Отправлено alexk , 13-Янв-16 20:54 

Это смысл user namspace: создавать псевдо root пользователя в пространстве контейнера, но который будет иметь по факту uid пользователя на хосте.

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 14-Янв-16 21:48 
И что, много кто использует OverlayFS?) Кроме SUSE`ров?

"Локальная root-уязвимость в ядре Linux"
Отправлено Аноним , 15-Янв-16 05:22 
OpenWRT