LINUX.ORG.RU
ФорумTalks

[решето!] Уязвимость в ядре Linux позволяет получить повышенные привилегии


0

0

http://www.securitylab.ru/news/382677.php

Ъ: Исходный код для эксплуатации весьма необычной уязвимости в ядре Linux был опубликован сегодня Бредом Спенглером (Brad Spengler) – автором модуля grsecurity.

<......>

Опубликованный эксплоит способен обойти защиту разыменования нулевого указателя в ядре, на системах с SELinux и без него, и отключить SELinux/AppArmor/LSM/auditing.

Подробности по ссылке, видео прилагается

З.Ы. В комментах виндузятники писают кипятком

★★★★★

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

> ХЗ, это просто догадка. У меня вообще нет PulseAudio.

Линус по этому поводу сказал: "Даёте в suid-бинарнике грузить пользовательские so'шки? Идиоты!" ;)

mv ★★★★★
()

>Специфика этой уязвимости состоит в том, что уязвимость отсутствует в исходном коде, но присутствует в бинарном

Неправильно !!!. Ошибка именно в исходных кодах. Компилятор тут вообще не причем. Надо СНАЧАЛА проверять указатель, а ПОТОМ обращаться к членам структуры на которую ссылается указатель. В коде все делается наоборот.

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

>Неправильно !!!

Sorry. Это я торможу. Забыл что в ядре многое по другому. Здесь наверное можно считать по нулевому указателю какие-то данные, просто это будет мусор.

Но все равно так писать неправильно.

pathfinder ★★★★
()

> struct sock *sk = tun->sk;
> 
> Этот код не вызывает ошибок даже если tun == NULL, и не является сам по себе уязвимостью.
> 
> Несколькими строками ниже происходит проверка инициализации указателя tun:
> if (!tun)
>       return POLLERR;

объясните пажаласта мне идиоту...

вот _ПЕРЕД_ тем как сделать tun->sk , я всегда должен быть _ТОЧНО_ уверен что 
tun!=NULL

тоесть чуть более полно код будет как весь код будет:

...

if (!tun) { // если эта проверка не была сделана выше
    return POLLERR;
}
struct sock *sk = tun->sk;

...

if (!tun)
         return YA_DURAK_TAK_TAK_ZACHEMTO_VTOROJ_RAZ_ETO_PROCERYAU;

...

так ну где ошибка_то/экплоит ??? %) %) %) 5) %)

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

s/тоесть чуть более полно код будет как весь код будет/тоесть чуть более полно весь код будет/

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