LINUX.ORG.RU
 

В ядрах Linux >=2.6.39 найдена локальная root-уязвимость


0

2

В ядре Linux найдена опасная уязвимость, позволяющая локальному злоумышленнику выполнить код с правами пользователя root. Проблема наблюдается начиная с ядра 2.6.39. На данный момент уже опубликовано три рабочих эксплоита. Уязвимости присвоен номер CVE-2012-0056.

Источником уязвимости является ошибка в реализации proc-интерфейса для прямого доступа к памяти процесса (/proc/pid/mem). В ядре 2.6.39 защита против неавторизованного доступа к этому файлу была признана неэффективной, поэтому "#ifdef" для защиты от записи в случайные области памяти был убран, вместо этого была добавлена проверка правильных разрешений на доступ. Как оказалась, проверка привилегий была выполнена некорректно, что позволяет локальному пользователю получить права суперпользователя в ядрах 2.6.39 и выше (исключая GIT snapshot, в котором данная уязвимость была на днях закрыта).

На данный момент ни один из дистрибутивов данную ошибку не закрыл.

Взято с opennet.ru

>>> Подробности


[#] Ответ на: комментарий от myhand 25.01.2012 1:51:08  
true_admin

> банальное присутствие информации о состоянии с проблемами безопасности в дистрибутиве, которую можно найти непосредственно на его сайте.

да может там подписчикам что-то типа rhn доступно, откуда ты знаешь?

***** ()
[#] Ответ на: комментарий от true_admin 25.01.2012 2:23:12  

Может... Не возникло желание выкапывать конфетку из кучи гов^Wрекламы, вот что я хочу сказать.

Кстати, вот к тому же RH нету притензий. Политика в отношении уязвимостей там иная, чем в Debian. Тем не менее, все что публично - доступно на сайте, вне зависимости от того выпущено обновление или нет.

* ()
[#] Ответ на: комментарий от myhand 25.01.2012 2:55:43  
true_admin

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

***** ()
[#] Ответ на: комментарий от xtraeft 24.01.2012 22:43:38  
mumpster
>>-----Цитата---->>

remote root exploit в ядре?

<<-----Цитата----<<

NFS например

***** ()
[#]  
havelite

давно закрыто. я уже как полгода с патчем

* ()
[#] Ответ на: комментарий от true_admin 25.01.2012 3:23:32  

где я сказал, что она самая важная, фантазер?

* ()
[#]  

Linux sen 3.0.0-14-generic #23-Ubuntu SMP Mon Nov 21 20:28:43 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

работает...

()
[#]  
hikkikamori
hikkikamori@debian:/media/local_disk1/Programs/CVE-2012-0056$ uname -a
Linux debian 3.2.0 #1 SMP Sun Jan 8 04:11:04 MSK 2012 x86_64 GNU/Linux
hikkikamori@debian:/media/local_disk1/Programs/CVE-2012-0056$ ls
mempodipper.c
hikkikamori@debian:/media/local_disk1/Programs/CVE-2012-0056$ g++ ./mempodipper.c 
./mempodipper.c:19:1: warning: "_GNU_SOURCE" redefined
<command-line>: warning: this is the location of the previous definition
hikkikamori@debian:/media/local_disk1/Programs/CVE-2012-0056$ ls
a.out  mempodipper.c
hikkikamori@debian:/media/local_disk1/Programs/CVE-2012-0056$ ./a.out 
===============================
=          Mempodipper        =
=           by zx2c4          =
=         Jan 21, 2012        =
===============================

[+] Ptracing su to find next instruction without reading binary.
[+] Creating ptrace pipe.
[+] Forking ptrace child.
[+] Waiting http://www.linux.org.ru/news/security/7313229 for ptraced child to give output on syscalls.
[+] Ptrace_traceme'ing process.
[+] Error message written. Single stepping to find address.
[+] Resolved call address to 0x4020b8.
[+] Opening socketpair.
[+] Waiting for transferred fd in parent.
[+] Executing child from child fork.
[+] Opening parent mem /proc/28546/mem in child.
[+] Sending fd 6 to parent.
[+] Received fd at 6.
[+] Assigning fd 6 to stderr.
[+] Calculating su padding.
[+] Seeking to offset 0x40209d.
[+] Executing su with shellcode.
# id
uid=0(root) gid=0(root) groups=0(root),7(lp),24(cdrom),25(floppy),29(audio),30(dip),44(v ideo),46(plugdev),108(netdev),109(bluetooth),112(fuse),115(scanne r),124(vboxusers),1000(hikkikamori)
# 

Ушёл ставить новое ядро 0_o

()
[#] Ответ на: комментарий от true_admin 24.01.2012 1:28:43  
>>-----Цитата---->>

ты поправил руками права на бинарь

<<-----Цитата----<<

В дженте такие права искоробочно стоят.

* ()
[#] Ответ на: комментарий от hikkikamori 26.01.2012 0:20:33  

В 3.2.2 залатали.

* ()
[#] Ответ на: комментарий от true_admin 24.01.2012 1:29:23  
>>-----Цитата---->>

абсолютно не нужен, оно просто читает и парсит файл.

<<-----Цитата----<<

Читать su может только рут.

* ()
[#] Ответ на: комментарий от imul 26.01.2012 20:59:48  
true_admin

> В дженте такие права искоробочно стоят.

ну маладцы, чо. Гентушники вообще легки на подъём. Я им про баг в софтине написал как-то, а они мне в ответ "поздравляем, теперь ты мейнтейнер этого ебилда". И это чертовски хорошо т.к. убунтоиды вообще на багрепорты хер кладут, хоть свой репозиторий делай. А тут хотя бы теоретическая возможность пофиксить остаётся.

> Читать su может только рут.

в данном случае это неважно, su не единственный способ поднять привилегии.

***** ()
[#] Ответ на: комментарий от tux-eda 24.01.2012 11:06:53  
>>-----Цитата---->>

кто тестил под соляркой?

<<-----Цитата----<<

LOL!

* ()
[#] Ответ на: комментарий от true_admin 26.01.2012 21:09:19  
>>-----Цитата---->>

Я им про баг в софтине написал как-то, а они мне в ответ "поздравляем, теперь ты мейнтейнер этого ебилда".

<<-----Цитата----<<

:D
Но, тормозянки кое-где тоже хватает.

>>-----Цитата---->>

в данном случае это неважно, su не единственный способ поднять привилегии.

<<-----Цитата----<<

Для остальных случаев, как ты сам сказал, нужна энтерпрайз-версия. А так что-то напомнило эпичное обсуждение бага в glibc с комментарием www.linux.org.ru/news/security/5457263#comment-5457852
А теперь уже даже и не актуально для свежих ядер. Патч вошёл в 3.2.2-ванилу.

* ()
[#] Ответ на: комментарий от imul 26.01.2012 21:27:55  
true_admin

ты читал как через ptrace повышали привилегии?

А вообще гента это такой дистр... У меня в виртуалке ядро собрано даже без поддержки модулей чтобы обломать руткиты... Но потом забил на все эти hardened т.к. глючат в непредсказуемых местах и очень тяжелы в поддержке и обновлениях.

***** ()
[#] Ответ на: комментарий от true_admin 26.01.2012 21:32:59  
>>-----Цитата---->>

ты читал как через ptrace повышали привилегии?

<<-----Цитата----<<

Да. Но, это уже не актуально, так как заплатка уже расползлась везде.

>>-----Цитата---->>

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

<<-----Цитата----<<

Что есть, то есть. Сам её держу в форме hardened только в силу привычки.

* ()
[#] Ответ на: комментарий от wheel 24.01.2012 12:38:10  
>>-----Цитата---->>

Удивительно: локалхост с ванильным ведром - и "эксплойт" не работает.

<<-----Цитата----<<

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

* ()
[#] Ответ на: комментарий от imul 26.01.2012 21:21:39  
tux-eda

ты что-то имеешь против solaris'a?

()
[#] Ответ на: комментарий от true_admin 26.01.2012 21:32:59  
mumpster

ptrace

по поводу ptrace - вылазь уже из анабиоза - модуль по его отключению был сделан ещё в во времена расцвета 2.4 ядра.

и да, зачем на боевом серванте ptrace на постоянку?8)

***** ()
[#] Ответ на: комментарий от tux-eda 27.01.2012 4:21:01  
mumpster

солярис

тебя это беспокоит? хочешь про это поговорить?8)

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

***** ()
[#] Ответ на: ptrace от mumpster 27.01.2012 7:18:09  
true_admin

> модуль по его отключению был сделан ещё в во времена расцвета 2.4 ядра.

да что уж там модуль, всего-то одну строчку в ядре поправить... Наверно он у тебя этот модуль на всех серверах стоит, да? В hardened-ядрах вообще много чего есть. Главное что это не в мейнстриме.

> и да, зачем на боевом серванте ptrace на постоянку?8)

Может и не нужно, но механизмов отключить его вообще в стоковом ядре нет, и это проблема.

***** ()
[#] Ответ на: комментарий от tux-eda 27.01.2012 4:21:01  

Ты бы мозг пристёгивал, когда на лор постишь.

* ()
[#] Ответ на: комментарий от true_admin 24.01.2012 0:56:46  

Бэкпортировали уязвимость? Весело, чо...

()
[#] Ответ на: комментарий от true_admin 27.01.2012 9:26:51  
mumpster

ptrace

>>-----Цитата---->>

механизмов отключить его вообще в стоковом ядре нет

<<-----Цитата----<<

ещё раз для АО - есть и модуль для ЛЮБЫХ ядер и даже программка, которая в памяти не остаётся. выбор за одмином.

***** ()
[#] Ответ на: ptrace от mumpster 27.01.2012 12:13:04  
true_admin

открой глаза, одним ptrace ты тачку не защитишь. Вместо того чтобы запретить дырявую фичу с сомнительной полезностью для 99% юзеров ты предлагаешь весьма косвенное решение которое спасает только в одном из многих случаев.

***** ()
[#] Ответ на: комментарий от true_admin 27.01.2012 12:26:00  
mumpster
>>-----Цитата---->>

запретить дырявую фичу с сомнительной полезностью

<<-----Цитата----<<

ето ты про что? про /proc чоле?8)

***** ()
[#] Ответ на: комментарий от imul 26.01.2012 21:00:24  
hikkikamori

спасибо за инфу, а то на тот момент было 3.2.1 - там ещё дырка была

()
[#] Ответ на: солярис от mumpster 27.01.2012 7:20:11  
tux-eda

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

()
[#] Ответ на: комментарий от tux-eda 28.01.2012 8:50:55  
mumpster

грзишься с CD boot -sx еслиф SPARC ;-)

***** ()
[#] Ответ на: комментарий от tux-eda 28.01.2012 8:50:55  
>>-----Цитата---->>

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

<<-----Цитата----<<

Мсье знает толк в извращениях!

Скачивай инсталляционный диск Solaris той же версии, или старше, грузись с него и меняй пароль.

anonymous ()
[#] Ответ на: комментарий от anonymous 30.01.2012 18:04:26  
tux-eda

Эм,а если эта машина-тонкий клиент?

()