В Linux ядре найдена уязвимость, присутствующая с 2001 года (Новость отредактирована)

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Tokra
Сообщения: 399

В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Tokra »

Сообщается об обнаружении новой, легко эксплуатируемой, уязвимости, позволяющей повысить свои привилегии в системе. Уязвимость присутствует в коде сетевой подсистемы, но имеет локальный характер. Уязвимость вызвана отсутствием проверки на null-указатель в функции the sock_sendpage(), что может привести к выполнению кода из нулевой страницы памяти, что значительно упрощает создание эксплоитов. В функции sock_sendpage() подразумевалась передача уже инициализированных параметров, но из-за ошибки в макросе SOCKOPS_WRAP структура sock_sendpage могла оказаться не инициализированной.

Разработчики linux ядра выпустили патч, но уязвимости остаются подвержены все выпущенные с 2001 года версии 2.4.x и 2.6.x ядер, включая 2.4.37.4 и 2.6.30.4. Для проверки на подверженность системы уязвимости выпущен эксплоит.

Источник
Спасибо сказали:
Аватара пользователя
freemaster
Сообщения: 176
Статус: 100% Linux user
ОС: Debian => Gentoo

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение freemaster »

А в следующем ядре это будет исправлено?
Put the fun back into computing. Use Linux, BSD.
My PCs: 1. Debian 5.0.2 amd64, Gentoo amd64 || 2. Debian testing amd64, Ubuntu 9.04 amd64, Gentoo amd64 || 3. DSL 4.4.10 || 4. Xubuntu 9.04 ===== GNOME user =)
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение (asper »

Tokra писал(а):
14.08.2009 11:58
Сообщается об обнаружении новой, легко эксплуатируемой, уязвимости, позволяющей повысить свои привилегии в системе. Уязвимость присутствует в коде сетевой подсистемы, но имеет локальный характер. Уязвимость вызвана не ошибкой в коде ядра, а особенностями работы оптимизатора GCC, отбрасывающего некоторые явные проверки в которых фигурирует null-указатель.

Разработчики linux ядра выпустили патч, но уязвимости остаются подвержены все выпущенные с 2001 года версии ядра, включая 2.6.30.4.

Источник

Пытался собрать сам эксплоит, собираться собирается, но причём тут pulseaudio o_O
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

http://permalink.gmane.org/gmane.comp.secu...isclosure/68951
Ни слова про GCC и оптимизацию.
Спасибо сказали:
Аватара пользователя
kma21
Сообщения: 874
Статус: Странный экспериментатор...

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение kma21 »

Это вот около 8-ми компы под Linux находились опасности? Странно как-то... Или *nix не принято ломать или она была настолько проста и легкоулавливаема, что никто не обратил на неЁ внимания...
Спасибо сказали:
Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Slimy »

Ну ну видимо проблемно написать в такое время чтот овмеяемое а еще внедрить :).
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
Davinel
Сообщения: 481
ОС: Ubuntu

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Davinel »

чего то он у меня не собрался.. выдал какую то ошибку про блютус Оо
Спасибо сказали:
Аватара пользователя
Janik
Сообщения: 866
Статус: Оператор вычислительных машин
ОС: Debian

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Janik »

Да ну эти оптимизаторы!
Кто ищет, тот всегда найдет!
Опыт - это когда все получается с первого раза.
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение (asper »

Davinel писал(а):
14.08.2009 17:41
чего то он у меня не собрался.. выдал какую то ошибку про блютус Оо

У меня собрался, но не работает ):
просил зачем-то pulseaudio O_o, поставил, но всё равно на блютус ругнулся, тк у мну его нет. (:
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

Код: Выделить всё

Pulseaudio is not suid root!
Спасибо сказали:
Аватара пользователя
Davinel
Сообщения: 481
ОС: Ubuntu

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Davinel »

Во, а в арче собрался. Хотя тоже ругался на блютус, но собрался и выдал
UNABLE TO MAP ZERO PAGE!
видимо ядро слишком новое :\
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

Занятно. Новость на opennet полностью переписали.
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение (asper »

Davinel писал(а):
14.08.2009 21:36
UNABLE TO MAP ZERO PAGE!

аналогично
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение (asper »

Ali1 писал(а):
14.08.2009 21:58
Занятно. Новость на opennet полностью переписали.

всё равно не работает ):

Код: Выделить всё

$  ./wunderbar_emporium.sh
 [+] Personality set to: PER_SVR4
E: bluetooth-util.c: Error from ListAdapters reply: org.freedesktop.DBus.Error.ServiceUnknown
UNABLE TO MAP ZERO PAGE!

Видать Арч был готов к такому повороту событий (:

на Мопсе (ядро 2.6.24.3) работает:

Код: Выделить всё

$  ./wunderbar_emporium.sh
 [+] MAPPED ZERO PAGE!
 [+] got ring0!
 [+] detected 2.6 style 8k stacks
sh: mplayer: command not found
 [+] Disabled security of : nothing, what an insecure machine!
 [+] Got root!
sh-3.1#
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ленивая Бестолочь »

>UNABLE TO MAP ZERO PAGE!
+1.
никто, кстати файл, который .sh не смотрел?
я плакал горючий горький слез:

Код: Выделить всё

sed "s/\/home\/spender/$ESCAPED_PWD/g" pwnkernel.c > pwnkernel1.c
mv pwnkernel.c pwnkernel2.c
mv pwnkernel1.c pwnkernel.c
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

Код:

ali@ubuntu:~/Рабочий стол/wunderbar_emporium$ ./wunderbar_emporium.sh [+] MAPPED ZERO PAGE! [+] Resolved selinux_enforcing to 0xc089619c [+] Resolved selinux_enabled to 0xc0896198 [+] Resolved apparmor_enabled to 0xc076bc64 [+] Resolved security_ops to 0xc0895144 [+] Resolved default_security_ops to 0xc0747280 [+] Resolved sel_read_enforce to 0xc02ccd10 [+] Resolved audit_enabled to 0xc0858604 [+] Resolved commit_creds to 0xc015ccc0 [+] Resolved prepare_kernel_cred to 0xc015cec0 [+] got ring0! [+] detected 2.6 style 4k stacks sh: mplayer: not found [+] Disabled security of : nothing, what an insecure machine! [+] Got root! # id uid=0(root) gid=0(root) # uname -a Linux ubuntu 2.6.31-5-generic #24-Ubuntu SMP Sat Aug 1 12:48:18 UTC 2009 i686 GNU/Linux #
Спасибо сказали:
Аватара пользователя
Nigga
Сообщения: 160
ОС: Debian GNU/Linux

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Nigga »

в debian lenny (2.6.26) заработал, но только до apt-get upgrade, дебианы молодцы, уже патченное ядро в репозитории.
wazzup Dog?
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение KiWi »

Попробовал на openvz ядре -- в основной системе работает, в виртуалке -- нет, так что массовых взломов VPSок можно не ждать)
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4471
Статус: GNU generation
ОС: Debian GNU/Linux

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Rootlexx »

Ali1
Система — Ubuntu 9.04, ядро 2.6.28-14-generic.
Сначала скрипт выдал несколько синтаксических ошибок, поглядел в код, заменил все «==» на «=», и всё пошло. Скомпилировалось, но не запустилось с ошибкой «UNABLE TO MAP ZERO PAGE!». Просмотрел внимательно код, немного подумал, выполнил:

Код: Выделить всё

alexey@desktop:~$ sysctl vm.mmap_min_addr
vm.mmap_min_addr = 65536
alexey@desktop:~$
— ага!
Выполнил:

Код: Выделить всё

alexey@desktop:~$ sudo sysctl -w vm.mmap_min_addr=0
vm.mmap_min_addr = 0
alexey@desktop:~$
— указанная ошибка исчезла, но права root я всё равно не получил, только удивлённое «Maybe your kernel isn't vulnerable?».
Попробовал другой — при значении vm.mmap_min_addr по умолчанию не сработало (ещё бы!), после установки в нуль наконец получил оболочку root. Вот только сложно ожидать от меня сознательной установки vm.mmap_min_addr в нулевое значение. В общем, при стандартных настройках эксплойт не работает.
Разумеется, это не отменяет наличие уязвимости, но простым отображением файлов в адресное пространство при таких условиях её не задействуешь.
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

Rootlexx

Код: Выделить всё

$ sh run.sh
run.c: In function ‘main’:
run.c:13: warning: missing sentinel in function call
padlina z lublina!
Segmentation fault (core dumped)
:)

Rootlexx писал(а):
15.08.2009 02:38
установки vm.mmap_min_addr в нулевое значение.

Код: Выделить всё

$ cat /etc/sysctl.d/wine.sysctl.conf
# Wine needs to access the bottom 64k of memory in order to launch
# 16 bit programs.
vm.mmap_min_addr = 0

Rootlexx писал(а):
15.08.2009 02:38
В общем, при стандартных настройках эксплойт не работает.

Да, согласен. У меня споткнулся на "Pulseaudio is not suid root!", что я и типа исправил. :) Но, при должном прилежании, уязвимость конечно есть.
Меня больше расстраивает :
По поручению Министерства национальной безопасности США Coverity с 2006 года начал многолетний проект по выявлению проблем в более чем 200 отобранных открытых проектах. В отчете в 2008 году было отмечено, что несуществующие ссылки составили 28% от всех выявленных уязвимостей. Интересно, что за прошедший период был отмечен полутрократный прирост новых дефектов, внесенных разработчиками после проведения первоначального сканирования.
http://www.opennet.ru/opennews/art.shtml?num=22765
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение (asper »

Rootlexx писал(а):
15.08.2009 02:38

Код: Выделить всё

alexey@desktop:~$ sudo sysctl -w vm.mmap_min_addr=0
vm.mmap_min_addr = 0
alexey@desktop:~$

ХМ и у меня заработало.
Значит рано обольщался насчёт Арча (:
Сомнительно доброе привидение
Спасибо сказали:
DSS
Сообщения: 390

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение DSS »

Больше всего "порадовало" вот это:
Ali1 писал(а):
14.08.2009 23:22
[+] Resolved selinux_enforcing to 0xc089619c
[+] Resolved selinux_enabled to 0xc0896198
[+] Resolved apparmor_enabled to 0xc076bc64

Насколько я понимаю, все SELinux'ы и AppArmor'ы против данного эксплойта абсолютно бесполезны?!
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4471
Статус: GNU generation
ОС: Debian GNU/Linux

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Rootlexx »

Ali1 писал(а):
15.08.2009 04:18
Rootlexx писал(а):
15.08.2009 02:38
установки vm.mmap_min_addr в нулевое значение.

Код: Выделить всё

$ cat /etc/sysctl.d/wine.sysctl.conf
# Wine needs to access the bottom 64k of memory in order to launch
# 16 bit programs.
vm.mmap_min_addr = 0


Установки Wine от меня ожидать ещё сложнее :).
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

DSS писал(а):
15.08.2009 09:19
Насколько я понимаю, все SELinux'ы и AppArmor'ы против данного эксплойта абсолютно бесполезны?!

Все сложнее.

Код: Выделить всё

$ getenforce
Enforcing
[ali@aliCQ wunderbar_emporium]$ ./wunderbar_emporium.sh
runcon: invalid context: unconfined_u:unconfined_r:initrc_t:s0-s0:c0.c1023: Недопустимый аргумент
UNABLE TO MAP ZERO PAGE!
[ali@aliCQ wunderbar_emporium]$

[ali@aliCQ wunderbar_emporium]$ sudo setenforce 0
[ali@aliCQ wunderbar_emporium]$ ./wunderbar_emporium.sh
runcon: invalid context: unconfined_u:unconfined_r:initrc_t:s0-s0:c0.c1023: Недопустимый аргумент
 [+] MAPPED ZERO PAGE!
 [+] Resolved selinux_enforcing to 0xffffffff81874374
 [+] Resolved selinux_enabled to 0xffffffff815a0a60
 [+] Resolved security_ops to 0xffffffff81871b20
 [+] Resolved default_security_ops to 0xffffffff815a0080
 [+] Resolved sel_read_enforce to 0xffffffff8118934c
 [+] Resolved audit_enabled to 0xffffffff8182e804
 [+] Resolved commit_creds to 0xffffffff810615c3
 [+] Resolved prepare_kernel_cred to 0xffffffff810614a4
 [+] got ring0!
 [+] detected 2.6 style 4k stacks
sh: mplayer: команда не найдена
 [+] Disabled security of : nothing, what an insecure machine!
 [+] Got root!
sh-4.0# id
uid=0(root) gid=0(root) context=system_u:system_r:kernel_t:s0
sh-4.0#

Хотя автор и написал:

Код: Выделить всё

 /* make the idiots think selinux is enforcing */
        if (sel_read_enforce) {
Возможно, под старым selinux и работает.
Дело было не в selinux.

Код:

[ali@aliCQ wunderbar_emporium]$ ./wunderbar_emporium.sh runcon: invalid context: unconfined_u:unconfined_r:initrc_t:s0-s0:c0.c1023: Недопустимый аргумент UNABLE TO MAP ZERO PAGE! [ali@aliCQ wunderbar_emporium]$ sudo sysctl -w vm.mmap_min_addr=0 vm.mmap_min_addr = 0 [ali@aliCQ wunderbar_emporium]$ ./wunderbar_emporium.sh [+] MAPPED ZERO PAGE! [+] Resolved selinux_enforcing to 0xffffffff81874374 [+] Resolved selinux_enabled to 0xffffffff815a0a60 [+] Resolved security_ops to 0xffffffff81871b20 [+] Resolved default_security_ops to 0xffffffff815a0080 [+] Resolved sel_read_enforce to 0xffffffff8118934c [+] Resolved audit_enabled to 0xffffffff8182e804 [+] Resolved commit_creds to 0xffffffff810615c3 [+] Resolved prepare_kernel_cred to 0xffffffff810614a4 [+] got ring0! [+] detected 2.6 style 4k stacks sh: mplayer: команда не найдена [+] Disabled security of : SELinux [+] Got root! sh-4.0# id uid=0(root) gid=0(root) context=system_u:system_r:kernel_t:s0 sh-4.0#
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Ali1 »

Код: Выделить всё

[ali@localhost wunderbar_emporium]$ ./wunderbar_emporium.sh
 [+] MAPPED ZERO PAGE!
 [+] Resolved security_ops to 0xc07bb160
 [+] Resolved sel_read_enforce to 0xc04c765b
 [+] got ring0!
 [+] detected 2.6 style 4k stacks
sh: mplayer: команда не найдена
 [+] Disabled security of : SELinux
 [+] Got root!
sh-3.2# /sbin/sysctl vm.mmap_min_addr
vm.mmap_min_addr = 65536
sh-3.2# cat /etc/issue
Red Hat Enterprise Linux Server release 5.3 (Tikanga)
Kernel \r on an \m

sh-3.2#  /usr/sbin/getenforce
Enforcing
sh-3.2#
Спасибо сказали:
Аватара пользователя
Nikky
Сообщения: 339
ОС: Debian GNU/Linux

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение Nikky »

[+] Got root!

sh-3.2# /sbin/sysctl vm.mmap_min_addr


vm.mmap_min_addr = 65536


Т.е. ненулевое значение vm.mmap_min_addr ещё не признак неуязвимости?
Арфы нет - возьмите бубен...
Спасибо сказали:
Аватара пользователя
DarkPhoenix
Сообщения: 460
Статус: Hatred
ОС: Debian Squeeze

Re: В Linux ядре найдена уязвимость, присутствующая с 2001 года

Сообщение DarkPhoenix »

kma21 писал(а):
14.08.2009 16:02
Это вот около 8-ми компы под Linux находились опасности? Странно как-то... Или *nix не принято ломать или она была настолько проста и легкоулавливаема, что никто не обратил на неЁ внимания...
С ростом популярности системы таких глюков будет вылезать много больше, и последствия каждого из них будут все критичнее и критичнее.

"Не принято" ломать только потому, что нету смысла в широком масштабе. Ломать сложнее только саму систему, если вредоносная софтина не может вылезти за предел юзерспейса, в чем ей данный сплойт должен помогать...
Jabber JID: DarkFenX@jabber.org
ICQ UIN: 302028069
Спасибо сказали: