LINUX.ORG.RU

0-day Local-root уязвимость в ядре Linux

 , ,


3

6

Уязвимость CVE-2016-0728, опубликованная сегодня (19 января 2016) вместе с эксплойтом, позволяет локальному пользователю поднимать привилегии до root. Уязвимости подвержены все версии ядра начиная с 3.8 и заканчивая 4.4

Уязвимость появилась в 2012 году в компоненте keyrings.

Android-устройства также подвержены уязвимости, за исключением систем, защищенных SMEP/SMAP/SELinux.

Патч с исправлением проблемы ожидается в течение суток.

>>> Описание уязвимости

★★★★★

Проверено: JB ()
Последнее исправление: JB (всего исправлений: 4)

Ответ на: комментарий от kostik87

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

init_6 ★★★★★
()

Ну что, ньюфаги со своими вечными мамонтами, съели?

P.S. 2.6.32, и это десктоп. И все ОК.

Deleted
()
Ответ на: комментарий от kostik87

У меня примерно от получаса до часа отрабатывал, но в итоге пшик.

Ну grsec его гораздо быстрее прибивает.

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

наличие бекпортов драйверов и даже целых подсистем не делает его менее древним

когда я говорю «древнее» я не имею ввиду «плохое», если что

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

P.S. 2.6.32, и это десктоп. И все ОК.

поддержку то купил или пакеты с апдейтами сам компилишь? =)

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

двачую - ведро rhel с бэкпортированием фичей

int13h ★★★★★
()

А эксплойт то рабочий ? Что-то ни на одной из доступных систем оно не дает результата, а работает почти 30 минут.

CONFIG_KEYS=y есть

vel ★★★★★
()

Кто-нибудь уже написал разработчикам эксплойта почистить в нем баги?

slamd64 ★★★★★
()

=(

 % ./cve_2016_0728 PP1
uid=1000, euid=1000
Increfing...
finished increfing
forking...
finished forking
caling revoke...
uid=1000, euid=1000
$ whoamo
/bin/sh: 1: whoamo: not found
$ whoami
int13h
$ =(
/bin/sh: 4: Syntax error: newline unexpected (expecting ")")
$ uname -a
Linux workpc 4.3.0-1-amd64 #1 SMP Debian 4.3.3-5 (2016-01-04) x86_64 GNU/Linux
$ 
int13h ★★★★★
()
Ответ на: комментарий от oblepiha_pie

Да нет, у каждого по 2 интерфейса и по 8 гигов ОЗУ. Большие надежды на них возлагаем. А нет так опять воткнут винду...

weare ★★
()
./cve_2016_0728 PP_KEY
uid=500, euid=500
Increfing...
finished increfing
forking...
finished forking
caling revoke...
uid=500, euid=500
uname -r
4.1.15-nrj-desktop-1rosa-i586

Блин, только зря машинное время потратил. Как пропатчить эксплойт под линукс?

redgremlin ★★★★★
()

Xubuntu 15.10 не работает. Запускал с pp1. Ждал 2 часа. А есть нормальный эксплойт?

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

До чего же линукс не готов для десктопа, даже официальные эксплоиты не работают.

Это PoC.
Удивительно, скоро радостных дурачков вопит в треде «ололо не работаит».

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

Насколько понимаю, этот PoC специально для 3.18 x86-64 ведра, для остальных надо править дефайны.

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

бекпортов

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

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

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

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

Это PoC.

Ну так может пусть в любом PoC будут указаны условия, при которых оно вообще работает? В виде ядерных конфиг-опций и всего такого? В авторской статье ничего такого нет. Пока что похоже, что автор недоработал тему, либо скрыл информацию о том, что уязвима далеко не любая конфигурация. Вот есть ли вообще эталонная конфигурация, на которой эксплоит работает? Ubuntu LTS, например?

Удивительно, скоро радостных дурачков вопит в треде «ололо не работаит».

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

Ещё раз всё прошёл, по инструкции из авторского разбора, всё равно ничего.

 $ vim leak.c
[OK]
03:18:33j_sandbox@zver ~
 $ gcc  leak.c -o leak -lkeyutils -Wall
[OK]
03:18:52j_sandbox@zver ~
 $ cat /proc/keys
00a117c7 I--Q--- 373191049 perm 3f3f3f3f  1017  1018 keyring   a: empty
[OK]
03:18:58j_sandbox@zver ~
 $ ./leak 
[OK]
03:19:06j_sandbox@zver ~
 $ cat /proc/keys
00a117c7 I--Q--- 373191049 perm 3f3f3f3f  1017  1018 keyring   a: empty
3bce2a42 I--Q---   100 perm 3f3f0000  1017  1018 keyring   leaked-keyring: empty
[OK]
03:19:07j_sandbox@zver ~
 $ time ./cve_2016_0728 PP1
uid=1017, euid=1017
Increfing...
finished increfing
forking...
finished forking
caling revoke...
uid=1017, euid=1017
sh-4.3$ whoami
j_sandbox
sh-4.3$ 

В dmesg появилось 4 штуки такого:

[1384738.020287] WARNING: CPU: 3 PID: 31643 at kernel/cgroup.c:1159 cset_cgroup_from_root+0x97/0xc0()

Andrey_Utkin ★★
()

Какое оно долгое, ппц. Надеялся что хотя бы заработает, а фига мне :-(

FIL ★★★★
()

Патч с исправлением проблемы ожидается в течение суток.

компец уже можно включать?

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

Addresses of commit_creds and prepare_kernel_cred functions are static and can be determined per Linux kernel version/android device.

Что тебе непонятно? Гентушник он.

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

Автор и не обязан расписывать все детали для всех версий ядра, он лишь показал пример работы уязвимости на своем 3.18.

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

CentOS же. Обновления приходят сами, ставлю только касающиеся безопасности.

Deleted
()

А что такое в точности этот «key_name»? Может просто не правильный ключ?

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

Как хорошо, что у меня нет линукса)

Ну так и плыви на днище,рачёк.

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

Да, не меньше, у меня на виртуалке (отдано одно ядро i5 и 2Гб рамы) где-то за час отрабатывало (специально не засекал)

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

Ладно, у нас есть 2 сервера на Linux, но они пока не в бою.

не удивительно,тяжело им наверное на ядре вертется

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

13.37. у меня на домашней такое же :)

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

Имено этот пример ни у кого не завелся не только на слаке. Но исходя из версий ядра сама уязвимость должна работать на 14.1 и current

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

Пусть эксплоит ищет. Или пусть бы наваяли скрипт, который бы находил эти вещи, и чтоб эксплоиту передавать это, как аргументы.

Andrey_Utkin ★★
()

Короче. Ставлю точку. Все ясно, если эксплоит запускать из под рута - все работает, за исключением ядер с глупыми патчами типа grsecurity. Можно закрывать тему. Удивляюсь, что никто до меня не додумался! Благодарностей не нужно. Я простой супер специалист по ИБ. Я окончательно понял теперь, что линух - полное решето, пошел ставить Windows XP, нет, лучше Windows 95, Билл Гейтс правильно говорил под нее вирусов нет!

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

Братва! Скиньте ссылочку на нормальный дистр Win95/98/Me или XP без сервис паков, типа зверь сиди и все такое, а то че-то не могу найти...

alhn77
()

Лол поражает уровень большинства здешних линуксоидов.
Этот эксплоит не для дурачков/скрипт-кидди.

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

На торентах забанили? Ищи по волшебным словам типа msdn и т.д. А из этих Win95/98 емнип никто и не делал «зверей»

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

И? Помню такие диски у самого какой-то такой был. Хотя с cd диска винду практически никогда не ставили в то время, по причине отсутствия приводов на многих компах. Но даже на нем имхо ничего звериного не было. Хотя сомнения появились :)

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

dev pack

можно было и не ёрничать, а анонимный неизвестный ответить... ибо начинающий может быть совсем не в курсах про это...

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