LINUX.ORG.RU
ФорумTalks

[peшето] Представлен новый эксплойт для Linux-ядра


0

2

Ден Росенберг (Dan Rosenberg), консультант по безопасности компании Virtual Security Research, опубликовал в списке рассылки FullDisclosure код эксплойта, позволяющего локально получить привилегии суперпользователя в Linux. Эксплойт примечателен тем, что его работа основана на одновременном использовании трех, с виду незначительных, уязвимостей в Linux-ядре, подчеркивая, что сочетание нескольких факторов, по отдельности приводящих к краху ядра (DoS-уязвимости), могут привести к неожиданным последствиям.

В качестве основы для построения эксплойта используется обнаруженная несколько дней назад уязвимость CVE-2010-4258, позволяющая сохранить значение NULL по любому переданному пользователем указателю внутри адресного пространства ядра. Уязвимости CVE-2010-3849 и CVE-2010-3850 обеспечивают возможность разыменования NULL-указателя и используются в качестве вспомогательных методов для создания нужных условий эксплуатации первой уязвимости, а именно для инициирования передачи управления коду злоумышленника. Практически, вспомогательные уязвимости CVE-2010-3849 и CVE-2010-385 уже исправлены во многих дистрибутивах, но вместо них могут быть использованы любые подобные уязвимости, которые всплывают регулярно.

Эксплойт протестирован в системах Ubuntu 10.04 и 10.10 со штатными Linux-ядрами, но теоретически функционирует со всеми Linux-ядрами серии 2.6.x, включая последний тестовые выпуск ядра 2.6.37. Опубликованный код эксплойта оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями (для его работы в RedHat, Slackware и Debian потребуется модификация, а для Ubuntu ранее было выпущено обновление с исправлением проблем CVE-2010-3849 и CVE-2010-385). Появление обновлений с исправлением уязвимости CVE-2010-4258 для различных Linux-дистрибутивов можно отследить на следующих страницах: Slackware, Gentoo, Mandriva, openSUSE, CentOS, Fedora, RHEL, Debian, Ubuntu.

http://www.opennet.ru/opennews/art.shtml?num=28924

Оформите кто-нибудь новость на главную!

Вы задрали

Опять фуфло:
xor@notebook tmp $ gcc 1.c
xor@notebook tmp $ ./a.out
[*] Failed to open file descriptors.
xor@notebook tmp $

Хоть бы один работающий эксплоит за последние 2 года сделали!

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

сейчас придет iZEN и тебя покараетубедит, что уже давно пора

derlafff ★★★★★
()
Ответ на: Вы задрали от xorik

>Хоть бы один работающий эксплоит за последние 2 года сделали!

Учимся читать:

Опубликованный код эксплойта оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями (для его работы в RedHat, Slackware и Debian потребуется модификация, а для Ubuntu ранее было выпущено обновление с исправлением проблем CVE-2010-3849 и CVE-2010-385)

router ★★★★★
()

>Эксплойт протестирован в системах Ubuntu 10.04 и 10.10 со штатными Linux-ядрами, но теоретически функционирует со всеми Linux-ядрами
Больше не читал.

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

>Учимся читать:

Мой фейл. А на самом деле на любом ядре будет работать?

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

скоро выйдут вирусы для линукса и для их запусков надо будет пересобирать ядро, чо

snoopcat ★★★★★
()
drull@drull:~$ gcc 1.c
drull@drull:~$ ./a.out 
[*] Resolving kernel addresses...
 [+] Resolved econet_ioctl to 0xfa742340
 [+] Resolved econet_ops to 0xfa742440
 [+] Resolved commit_creds to 0xc016c8d0
 [+] Resolved prepare_kernel_cred to 0xc016cd20
[*] Calculating target...
[*] Failed to set Econet address.
[*] Triggering payload...
[*] Exploit failed to get root.
drull ★☆☆☆
()
Ответ на: комментарий от router

> Опубликованный код эксплойта оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями

Вот блин.

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

Но должен сказать что в качестве зомби он остался висеть. Локально можно наделать пакостей, типа забить все PIDы зомбями.

drull ★☆☆☆
()

>> локально

Всем пох^Hфиг.

GotF ★★★★★
()
[pf@eternity]:[~][0]% kate exploit.c
[pf@eternity]:[~][0]% gcc exploit.c 
[pf@eternity]:[~][0]% ./a.out 
[*] Failed to open file descriptors.
[pf@eternity]:[~][255]% uname -a
Linux eternity 2.6.36-pf2 #2 SMP PREEMPT Thu Nov 25 18:15:33 EET 2010 i686 Intel(R) Pentium(R) Dual CPU T2330 @ 1.60GHz GenuineIntel GNU/Linux
post-factum ★★★★★
()
┌┤~├──────────────────────────────────────────────────────────┤gotf@persephone├─
└─> ./a.out 
[*] Resolving kernel addresses...
 [+] Resolved econet_ioctl to 0xffffffffa035119b
 [+] Resolved econet_ops to 0xffffffffa03521c0
[*] Failed to resolve kernel symbols.
GotF ★★★★★
()
Ответ на: комментарий от GotF

Да-да, тестирование эксплоитов на своей системе — идиотизм, ибо они могут содержать закладки бла-бла-бла… Этот, вроде, не содержит.

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

> Сперва локально пусть пролезет!

В FF регулярно находят запуск произвольного кода с правами пользователя

cvs-255 ★★★★★
()
Ответ на: комментарий от post-factum

Фраза

Опубликованный код эксплойта оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями

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

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

>Поставлю-ка я это себе вместо sudo, чтобы пароль не вводить.

Улыбнуло. В цытатник.

dikiy ★★☆☆☆
()
Ответ на: комментарий от ttnl
$ ./a.out 
[*] Resolving kernel addresses...
 [+] Resolved econet_ioctl to 0xf84ad2d0
 [+] Resolved econet_ops to 0xf84ad3c0
 [+] Resolved commit_creds to 0xc016e080
 [+] Resolved prepare_kernel_cred to 0xc016e3c0
[*] Calculating target...
[*] Failed to set Econet address.
[*] Triggering payload...
[*] Got root!
# whoami
root
#

Запустился без модификаций о_О.

2.6.32-26-generic убунты.

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

Круто. А у меня падает в самом начале, говорит поддержки econet нету...

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

написано же что на старых ядрах бубунты работает. Обновись.

Zubchick
()
Ответ на: комментарий от cvs-255

>Это потому, что расплодили сущности в ядре.

Это потому, что расплодились ламеры^Wсущности на ЛОРе, вместо того, чтобы ходить в школу

Led ★★★☆☆
()

>lord@localhost:~> ./a.out

[*] Failed to open file descriptors.


openSUSE 11.3 i586.

lord@localhost:~> uname -a

Linux localhost.localdomain 2.6.34-12-desktop #1 SMP PREEMPT 2010-06-29 02:39:08 +0200 i686 i686 i386 GNU/Linux

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

Затыкается на 217 строке при попытке открытия сокета.

unikoid ★★★
()
leg0las@mirkwood-home:~$ cd /tmp/
leg0las@mirkwood-home:/tmp$ uname -a
Linux mirkwood-home 2.6.36-trunk-amd64 #1 SMP Wed Oct 27 14:28:29 UTC 2010 x86_64 GNU/Linux
leg0las@mirkwood-home:/tmp$ gcc 1.c
leg0las@mirkwood-home:/tmp$ ./a.out 
[*] Resolving kernel addresses...
 [+] Resolved econet_ioctl to 0xffffffffa002c07b
 [+] Resolved commit_creds to 0xffffffff81062116
 [+] Resolved prepare_kernel_cred to 0xffffffff81062010
[*] Failed to resolve kernel symbols.

leg0las@mirkwood-home:/tmp$ whoami 
leg0las

нипашед :'-(

leg0las ★★★★★
()

fix

ксплойт протестирован в системах Ubuntu 10.04 и Debian со штатными Linux-ядрами

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