The OpenNET Project / Index page

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

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

07.12.2016 11:31

В ядре Linux обнаружена локальная уязвимость (CVE-2016-8655), позволяющая локальному непривилегированному пользователю выполнить код с правами root. В том числе, уязвимость может быть использована для выхода за пределы изолированных контейнеров, работающих с использованием пространств имён идентификаторов пользователей. Рабочий прототип эксплоита подготовлен для Ubuntu 14.04/16.04 c ядром Linux 4.4 и работает независимо от активации механизмов защиты SMEP/SMAP (Supervisor Mode Execution Prevention/Supervisor Mode Access Prevention).

Проблема вызвана состоянием гонки в коде net/packet/af_packet.c и присутствует, начиная с выпуска ядра Linux 3.2-rc1, представленного в августе 2011 года. Уязвимость затрагивает функцию packet_set_ring() и позволяет через манипуляции с кольцевым буфером TPACKET_V3 осуществить обращение по уже освобождённому указателю функции, что может быть использовано для запуска кода на уровне ядра Linux.

Для атаки пользователь должен иметь полномочия по созданию сокетов AF_PACKET, которые предоставляются при наличии прав CAP_NET_RAW. В Debian, Red Hat Enterprise Linux и, возможно, в некоторых других дистрибутивах (требуется уточнение информации) проблема проявляется только при предоставлении администратором прав CAP_NET_RAW и активации поддержки пространств имён идентификаторов пользователей (user namespaces, sysctl kernel.unprivileged_userns_clone=1), которая отключена по умолчанию. В Ubuntu и Fedora режим user namespaces включен по умолчанию, но для атаки по-прежнему требуется получение полномочий CAP_NET_RAW. На платформе Android право создавать сокеты AF_PACKET имеет процесс mediaserver, через который может быть эксплуатирована уязвимость.

Патч с исправлением уязвимости принят в состав ядра Linux 4.9-rc8. Обновления пакетов пока выпущены только для Ubuntu. Проблема остаётся неисправленной в Fedora, openSUSE, Debian, CentOS/RHEL 7, SUSE Linux Enerprise 12. Уязвимость не затрагивает SLE 11, RHEL 5 и RHEL 6.

Дополнительно можно отметить публикацию обновления для платформы Android, в котором устранено шесть критических уязвимостей, из которых три затрагивают ядро Linux, две драйвер NVIDIA и одна модуль для чипов Qualcomm. Уязвимости могут привести к выполнению кода с правами ядра. Эксплоиты для данных уязвимостей пока не сформированы, но информация о проблемах и код патчей уже доступны публично. Из проблем не отнесённых к категории критических, также отмечаются более 20 уязвимостей, которые дают возможность организовать выполнение кода с правами текущего процесса или позволяют поднять свои привилегии через манипуляции с различными подсистемами (kernel file system, HTC sound codec, MediaTek driver, Qualcomm codec, Qualcomm camera driver, NVIDIA libomx, libziparchive, Smart Lock, Telephony, Wi-Fi, Qualcomm sound driver и т.п.).

Также продолжается история с уязвимостями в GStreamer: чтобы показать, что упомянутые в первом отчёте проблемы не единичны, Крис Эванс (Chris Evans) выявил ещё шесть уязвимостей в декодировщиках форматов FLIC и vmnc, позволяющие организовать выполнение кода при открытии специально оформленных файлов. Также предложен пример создания нового работающего эксплоита для прошлой уязвимости, некорректно исправленной в Fedora Linux.

  1. Главная ссылка к новости (http://openwall.com/lists/oss-...)
  2. OpenNews: Уязвимость в ядре Linux, позволяющая поднять привилегии через eCryptfs
  3. OpenNews: Уязвимость в LXC, позволяющая получить доступ к файлам вне контейнера
  4. OpenNews: Уязвимость в Cryptsetup, позволяющая получить доступ к root shell
  5. OpenNews: Уязвимость в ядре Linux, позволяющая выйти из изолированного контейнера
  6. OpenNews: Критическая уязвимость в ядре Linux, уже эксплуатируемая злоумышленниками
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45632-linux
Ключевые слова: linux, kernel
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (22) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 11:47, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    > На платформе Android право создавать сокеты AF_PACKET имеет процесс mediaserver, через который может быть эксплуатирована уязвимость.

    Ждем порнхак

     
     
  • 2.53, Аноним (-), 18:05, 08/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Ждем порнхак

    Это будет весьма оригинальным способом рутования усторйств.

     

  • 1.3, Аноним (-), 11:54, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Больше root-эксплоитов б-гу Android-эксплоитов!
     
  • 1.4, Аноним (-), 12:11, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Придложенный PoC у меня не заработал

    retrying stage..
    ...
    race not won

    Вот это по кругу и ничего не происходит.

    Ubuntu 16.04
    ➭ uname -a
    Linux hostname 4.4.0-45-generic #66-Ubuntu SMP Wed Oct 19 14:12:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

     
     
  • 2.12, none_first (ok), 13:18, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Придложенный PoC у меня не заработал
    > retrying stage..
    > ...
    > race not won
    > Вот это по кругу и ничего не происходит.
    > Ubuntu 16.04
    > ➭ uname -a
    > Linux hostname 4.4.0-45-generic #66-Ubuntu SMP Wed Oct 19 14:12:37 UTC 2016 x86_64
    > x86_64 x86_64 GNU/Linux

    "но для атаки по-прежнему требуется получение полномочий CAP_NET_RAW"
    кот. нет по-умолчанию

     

  • 1.6, Аноним (-), 12:35, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    5 и 6 наше все.
     
  • 1.7, Ergil (ok), 12:54, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    И как всегда Наобещают, а нихера не работает А все почему Все потому, что для... большой текст свёрнут, показать
     
     
  • 2.9, EuPhobos (ok), 13:06, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Надеюсь rkhunter на момент запуска этого эксплоита стоял?
     
     
  • 3.47, yz (?), 22:42, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    он хоть ловит чтонибудь?
     
     
  • 4.48, EuPhobos (ok), 22:43, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Он делает одну очень удобную вещь, diff файловой системы. А что изменилось в системе до и после, уж сам лови.
    Ну и плюс модули антивирусные по вкусу.
     
  • 2.49, Аноним (-), 23:59, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Non-privileged user namespaces disabled by default, only vulnerable with sysctl kernel.unprivileged_userns_clone=1

    Попробуй это сначала включить.

     

  • 1.17, J.L. (?), 14:02, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Дополнительно можно отметить публикацию обновления для платформы Android, в котором устранено шесть критических уязвимостей

    а есть ли для андройда возможность иметь свежие системные компоненты, но старое гуи (типо для прошлых телефонов которые по памяти/процу новые 5+ андройды не тянут) ? есть ли такая возможность в качестве штатной фичи у какого-нить CyanogenMod и ко ?

     
     
  • 2.37, Crazy Alex (ok), 17:04, 07/12/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Нет, к сожалению. Я бы с 4.4 и не слез никогда.
     
     
  • 3.50, Аноним (-), 10:29, 08/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Почему? 7.1 даже на моём стареньком устройстве работает значительно шустрее, чем родной 4.4
     
     
  • 4.52, Аноним (-), 12:37, 08/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что не всем нравятся новые "фитчи" от гугла. Я до сих пор на 4.2.2 сижу.
     
  • 4.54, Аноним (-), 18:08, 08/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Почему? 7.1 даже на моём стареньком устройстве работает значительно шустрее, чем родной
    > 4.4

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

     

  • 1.36, Аноним (-), 16:52, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Циан до сих пор обновляет ветку 11.0. Так что скорее да, чем нет.
    Осталось только пересобрать его под ваш телефон.
     
  • 1.45, Аноним (-), 20:17, 07/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А толку? Орали про dirtycow. И до сих пор shell получить не могут.
    https://github.com/timwr/CVE-2016-5195/issues/9#issuecomment-259756529
     
     
  • 2.55, Аноним (-), 04:23, 09/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > А толку? Орали про dirtycow. И до сих пор shell получить не могут.

    Ну может кто особо строптивый андроид порутает :)

     

  • 1.51, Аноним (-), 10:41, 08/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Нихрена себе, какой всё-таки жуткий геморрой - пытаться воспользоваться уязвимостью в Linux))
     
  • 1.56, Kodir (ok), 15:48, 09/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Как можно после стольки уязвимостей появляться на публике в роли "нечаянного революционера"? "Нечаянный клоун-*овнокодер" - тут куда ближе!
     
     
  • 2.57, Andrey Mitrofanov (?), 17:01, 09/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Как можно после стольки уязвимостей появляться на публике в роли "нечаянного революционера"?
    > "Нечаянный клоун-*овнокодер" - тут куда ближе!

    "Корпоративы, дни рождения, б***ки-гулянки для Уважаемых Членов клуба. Недорого! Целебрити-аниматоры взодят в чле-взнос!"  --http://www.opennet.dev/openforum/vsluhforumID3/106791.html#49

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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