LINUX.ORG.RU
ФорумTalks

[opennet] В Glibc обнаружена серьезная уязвимость

 


0

1

В системной библиотеке GNU C Library (glibc), являющейся основой большинства Linux-дистрибутивов, обнаружена критическая уязвимость, позволяющая любому локальному пользователю получить привилегии суперпользователя. Проблема вызвана игнорированием в Glibc требования спецификации ELF по запрещению использования текущего пути к исполняемому файлу ($ORIGIN) в процессе динамического связывания программ с идентификатором смены владельца или группы (suid/sgid). Проблема проявляется в конфигурациях, в которых пользователь имеет возможность создавать жесткие ссылки в файловой системе, допускающей наличие suid-файлов.

Уязвимость протестирована в Fedora 13 и RHEL 5 / CentOS 5, другие дистрибутивы судя по всему также подвержены проблеме. Исправления пока недоступны, статус выхода обновлений в различных Linux-дистрибутивах можно наблюдать на следующих страницах: Slackware, Gentoo, Mandriva, openSUSE, CentOS, Fedora, RHEL, Debian, Ubuntu.

Проблема была известна и ранее, но разработчики Glibc считали, что эксплуатировать ее невозможно. Используя режим аудита связывания программ (LD_AUDIT) в ld.so, вкупе с подменой $ORIGIN через создание жесткой ссылки и запуском suid-программы через файловый дескриптор, удалось разработать практический метод атаки.

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

★★★★★

Что-то локалруты зачастили в последнее время. Не иначе линукскапец приближается… :(

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

rain@acnote:~$ cat /tmp/error
Inconsistency detected by ld.so: dl-open.c: 231: dl_open_worker: Assertion `(call_map)->l_name[0] == '\0" failed!

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

>Вот вам монолитность.

+1 Интересно, сколько ещё багов и дыр должны найти в ядре, чтобы Линус начал слушаться взрослых?

AX ★★★★★
()

Итого, по результатам тестирований (в т.ч. и с обсуждения на опеннете):
Debian Squeeze / Sid, Ubuntu 10.10, OpenSuSe 11.3, Arch - не работает
CentOS 5 - сработало

YAR ★★★★★
() автор топика

Дуршлаг.

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

Debian Lenny - тоже не работает

YAR ★★★★★
() автор топика

Inconsistency detected by ld.so: dl-open.c: 231: dl_open_worker: Assertion `(call_map)->l_name[0] == '\0" failed!

Debian sid, amd64.

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

УМВРЧЯДНТ?

Обновил наверно. А у меня была истерика, когда с неделю назад у всех наших бубунтойдов, сидящих в ряд замигали лампочки на клавах и встала работа.

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

>А какое отношение имеет Линус к glibc?
Школьникам лишь бы что-нибудь ляпнуть

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

И чего?

«Я пью воду, негр пьет воду. Значит, я - негр». Вот твоя логика

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

>А у меня была истерика, когда с неделю назад у всех наших бубунтойдов, сидящих в ряд замигали лампочки на клавах и встала работа.

Какой-то ты нервный. Вот у моего коллеги просто встал :)

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

>Убунте 10.10 не работает.

В Убунте тоже должен быть eglibc

ttnl ★★★★★
()

В бубунте и debian нету glibc. Тут eglibc.

Debian sid и ubuntu 10.10 не сработало...

BeerSeller ★★★★
()

Stop reopening the bug!!!!!111111111111111111

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

Истерика была у троллей. У меня индикатор за неделю, пока не обновили gnome-settings-daemon (сегодня пришло), сглючил ровно один раз. И был перезапущен лёгким движением руки (g-s-d). По сравнению с падениями плазмы в КДЕ - детские шалости.

Кстати, наутилус с отключенным g-s-d (нативный) прикольно выглядит, мне даже понравилось.

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

Я в курсе, но проверить не мешало. Ну и да, чуть ниже я отписал - проверил еще на Lenny, там вроде обычный glibc еще

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

>Обновил наверно. А у меня была истерика, когда с неделю назад у всех наших бубунтойдов, сидящих в ряд замигали лампочки на клавах и встала работа.

Для критически важных систем LTS, обычным вупускам надо хотябы дать отстояться.

Andaril
()

$ exec 3< /exploit/target
bash: /exploit/target: Отказано в доступе

ЧЯДНТ?

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

>Кстати, наутилус с отключенным g-s-d (нативный) прикольно выглядит, мне даже понравилось.

у меня чуть глаза не вытекли от сего

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

2.7 , обычный glibc

на eglibc перешли в версии 2.9 (-13)

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

впрочем нюанс не в создании дескриптора

suid бинарник должен быть доступен по чтению, если он mode go-r (по умолчанию много где) , то дескриптор не сможет быть открыт

впрочем в eglibc все равно не работает

$ LD_AUDIT=«\$ORIGIN» exec /proc/self/fd/3
Inconsistency detected by ld.so: dl-open.c: 231: dl_open_worker: Assertion `(call_map)->l_name[0] == '\0" failed!

Sylvia ★★★★★
()

Как Левин в рассылке ALT написал, в OWL и ALT этой уязвимости нет лет 9...

AS ★★★★★
()

Да ладно, поправят, баги... они везде.

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

кроме RedHat/CentOS вроде нигде не подтверждается ?

какой позор на седины Дреппера...

Sylvia ★★★★★
()

closed, resolution: wontfix

>Проблема была известна и ранее, но разработчики Glibc считали...

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