The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Уязвимость в Glibc, позволяющая поднять привилегии в системе"
Отправлено opennews, 12-Янв-18 23:39 
В стандартной библиотеке Glibc выявлена (https://www.halfdog.net/Security/2017/LibcRealpathBufferUnde.../) уязвимость (CVE-2018-1000001 (https://security-tracker.debian.org/tracker/CVE-2018-1000001)), вызванная переполнением через нижнюю границу буфера в функции realpath(), проявляющимся при возврате относительного пути системным вызовом getcwd(). Изначально  ядро Linux возвращало в getcwd() только абсолютные пути, но затем в ядре 2.6.36 поведение было изменено, но функции Glibc не были адаптированы на обработку относительных путей.


Относительные пути возвращаются при достаточно редкой ситуации, когда процесс не меняет текущую директорию после выполнения вызова chroot и путь к корню оказывается вне области текущего дерева каталогов. Начиная с ядра Linux 2.6.36 начальная часть такого пути заменяется на строку "(unreachable)". Непривилегированный пользователь  может добиться аналогичного эффекта сменив текущую директорию процесса  на путь в другом пространстве имён. Так как в Glibc не производится проверка на спецстроку "(unreachable)", то атакующий может создать каталог "(unreachable)" и использовать его как начало относительного пути. Манипулируя ссылками на предыдущие каталоги при помощи элементов пути "/..//" можно добиться смещения указателя на область до начала выделенного буфера и переписать область памяти перед буфером содержимым части пути.


Выявившие уязвимость исследователи подготовили рабочий прототип эксплоита, позволяющий поднять свои привилегии до прав root через манипуляцию с исполняемыми файлами с флагом suid root, в которых вызывается функция realpath(). В эксплоите используется утилита /sbin/unmount, которая вызывает realpath() в коде инициализации локали, выполняемом до сброса привилегий. Для инициирования появления относительного пути в эксплоите используется пространство имён идентификаторов пользователя, т.е. атака возможна только при активации поддержки "user namespaces" (sysctl kernel.unprivileged_userns_clone=1). Работа эксплоита продемонстрирована в  Debian Stretch на системе с архитектурой amd64.


Обновление пакетов с устранением уязвимости уже выпущено для SUSE (https://bugzilla.novell.com/show_bug.cgi?id=CVE-2018-1000001) и openSUSE (https://lists.opensuse.org/opensuse-security-announce/2018-0...). Исправление пока недоступно для Ubuntu (https://people.canonical.com/~ubuntu-security/cve/2018/CVE-2...), Debian (https://security-tracker.debian.org/tracker/CVE-2018-1000001), Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=1533837) и RHEL (https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2018-1000001).

URL: http://seclists.org/oss-sec/2018/q1/38
Новость: http://www.opennet.ru/opennews/art.shtml?num=47894

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру