The OpenNET Project / Index page

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



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

Исходное сообщение
"Угроза безопасности из-за автоматической обработки мультимед..."
Отправлено opennews, 23-Ноя-16 12:49 
Крис Эванс (Chris Evans), известный эксперт по компьютерной безопасности и автор защищенного FTP-сервера vsftpd, обратил внимание (https://scarybeastsecurity.blogspot.ru/2016/11/0day-poc-risk...) на фундаментальные проблемы в организации работы с новыми файлами в GNOME  и продемонстрировал (https://scarybeastsecurity.blogspot.ru/2016/11/0day-exploit-...) на практике возможность их эксплуатации, показав как просто загрузив специально оформленный файл в систему можно добиться выполнения своего кода.

Сама по себе проблема с автоматической обработкой новых файлов в системе не нова и уже давно применяется (https://www.opennet.ru/opennews/art.shtml?num=29532) для эксплуатации уязвимостей в библиотеках для обработки изображений (при открытии  нового носителя в некоторых файловых менеджерах автоматически вызываются обработчики для создания пиктограмм с эскизами). Исследование Криса Эванса показывает, что проблема остаётся недооцененной и представляет большую угрозу для безопасности пользовательских Linux-систем.

В современных дистрибутивах Linux поставляется достаточно обширный набор плагинов Gstreamer для обработки различных форматов видео и изображений. При этом огромная доля из этих плагинов написана без оглядки на обеспечение безопасности и изобилует ошибками. В то же время в Fedora  и других дистрибутивах применяется автоматическая индексация загружаемых пользователем файлов при помощи ПО GNOME Tracker (https://wiki.gnome.org/Projects/Tracker), которое извлекает из файлов метаданные при помощи имеющихся в системе  библиотек. Кроме того, браузер Chrome настроен для сохранения загружаемых файлов на рабочий стол без подтверждения операции пользователем, что также приводит к автоматической обработке данных файлов при создании эскизов для рабочего стола.


Обилие проблемных декодировщиков контента в сочетании с автоматически обрабатывающим их приложением Tracker, которое запускается без применения изоляции SELinux, создаёт прекрасные условия для проведения атак c задействованием 0-day уязвимостей в плагинах Gstreamer. Чтобы показать, что подобные атаки вполне реальны, а не умозрительны, Крис Эванс опубликовал примеры эксплоитов, работающих в полностью обновлённом окружении с Fedora Linux 24 (при желании эксплоиты легко могут быть адаптированы для Ubuntu и любых других дистрибутивов).  Первый пример манипулирует уязвиомстью в gst-plugins-bad1.0/gst/vmnc/vmncdec.c и приводит к краху процесса tracker-extract при открытии в Chrome специально оформленной страницы, перенаправляющей пользователя на avi-файл (https://security.appspot.com/security/vmnc/vmnc_width_height...) с эксплоитом.


Второй пример затрагивает уязвимость в gst-plugins-good/gst/flx/gstflxdec.c и содержит специально оформленный файл в формате FLAC (https://security.appspot.com/security/flic/fedora_flx_exploi...), открытие которого в Rhythmbox приводит к запуску калькулятора. Эксплоит не является универсальным и завязан на конкретные сборки Rhythmbox, Totem, tracker-extract  или любого другого приложения, использующего GStreamer, поэтому представленный способ подходит только для совершение целевых атак на отдельные дистрибутивы (т.е. представленный FLAC-эксплоит будет работать только в Fedora 24 при обработке файлов в Rhythmbox, а для Ubuntu 16.04 и других программ потребуется создание другого FLAC-эксплоита).

Для обхода механизмов защиты  ASLR (Address Space Layout Randomization) и DEP (Data Execution Prevention) в эксплоите не используются методы манипулирования раскладкой памяти и вычисления указателей во время эксплуатации на основе данных из дополнительных источников. Вместо этого точечная подстановка кода осуществляется в цикле декодирования мультимедийного потока, используя для определения структуры кучи данные от периодически выполняемых операций выделения и очистки памяти для буферов декодирования. Определив структуру кучи осуществляется подмена данных в вызове system (в качестве альтернативы можно подменить код в буфере JIT).


Проблема уже устранена в Ubuntu (https://www.ubuntu.com/usn/usn-3135-1/) и ожидает исправления в остальных дистрибутивах: Debian (https://www.debian.org/security/) (устранена (https://www.debian.org/security/2016/dsa-3717) только первая проблема в gst-plugins-bad),  RHEL (https://rhn.redhat.com/errata/rhel-workstation-7-errata.html), Fedora (https://bodhi.fedoraproject.org/updates/?releases=F25&type=s...), CentOS (https://lists.centos.org/pipermail/centos-announce/), SUSE (https://www.suse.com/support/update/), openSUSE (https://lists.opensuse.org/opensuse-security-announce/).

URL: http://openwall.com/lists/oss-security/2016/11/22/5
Новость: http://www.opennet.ru/opennews/art.shtml?num=45543

 

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



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

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