LINUX.ORG.RU

Уязвимость в cdrecord


0

0

cdrecord при установленном uid бите не сбрасывает флаг euid=0 когда запускает пользовательскую команду, заданную через переменную окружения $RSH. Это может привести к повышению привелегий локального пользователя.

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

★★★★★

Проверено: Demetrio ()

uid бит - имеется ввиду suid бит? uid это всё таки поле. На кой чёрт cdrecord'у суидность, да я фильмы смотрю и программы собираю и при этом ещё диски пишу cdrecord'ом, без всякой суидности.

Це ж не виндоус!

anonymous
()

>Это может привести к повышению привелегий локального пользователя.

Каким образом?

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

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

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

> откуда я знаю нафига в некоторых дистрибутивах суидность ставят на cdrecord

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

anonymous
()

> Package name: cdrecord
> Advisory ID: MDKSA-2004:091
> Date: September 7th, 2004

Не флейма ради, но Debian отреагировал на 2 недели раньше Мандрейка ,)

cdrtools (4:2.0+a34-2) unstable; urgency=high
.......
* Fix local root exploit in cdrecord found by Max Vozeler. (CAN-2004-0806)

-- Andreas Metzler <ametzler@debian.org> Tue, 24 Aug 2004 17:21:23 +0200

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

ls -al `which cdrecord`

-rwxr-xr-x 1 root bin 279324 2003-08-18 04:38 /usr/bin/cdrecord

И никогда суидности не было.

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

ls -l /usr/bin/cdrecord

-rwsr-sr-x 1 root bin 279324 2003-08-18 04:38 /usr/bin/cdrecord

Иначе юзеры не могут записывать диски.

Тоже Слака :)

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

>ls -l /usr/bin/cdrecord -rwxr-xr-x 1 root root 363K Aug 20 06:45 /usr/bin/cdrecord*

>gentoo.

ls -al `which cdrecord` -rws--x--- 1 root burning 332888 Апр 25 18:40 /usr/bin/cdrecord

gentoo

petrosha ★★★★★
()

ls -al `which cdrecord` -rwxr-xr-x 1 root root 364570 Apr 6 05:28 /usr/bin/cdrecord

suse 9.1

anonymous
()

k3b suid ставит на cdrecord, например. В вообще она фифх не нужна.

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

> Ну... гнуть пальцы начали :)

Угу. Это же unix-like. Зачем давать рута?

> ls -l /dev/cd* /dev/xpt* /dev/pass*
crw-rw---- 1 root recorders 4, 25 27 авг 20:06 /dev/cd0
crw-rw---- 1 root recorders 229, 0 27 авг 20:06 /dev/pass0
crw-rw---- 1 root recorders 228, 0 27 авг 20:06 /dev/xpt0


>ls -l `which cdrecord`
-r-xr-xr-x 1 root wheel 290892 3 авг 01:57 /usr/local/bin/cdrecord


Кому надо писать, добавляется в группу recorders.

baka-kun ★★★★★
()
Ответ на: комментарий от ananas

>>а sudo настроить?
А смысл ? Какая разница как cdrecord получит права root ? Главное что он их получит и другим даст сволочь !

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

>> Вроде начиная с ядра 2.6.8(.1)неззя без root'овых прав диски записывать.

> Этот баг исправили и в 2.6.9 уже будут новые баги :)

Подробнее - это не баг а фича, в целях безопастности/надежности в SCSI subsystem.
Alan Cox про это месяц назад писал, ссылку не дам.
Соответственно, в 2.6.9 будет аналогично.

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

> Подробнее - это не баг а фича, в целях безопастности/надежности в SCSI subsystem.

Это такой новый вариант security by obscurity: типа "никому кроме рута не дадим писать, нас рать... на права девайса."? Т.е. я правильно понимаю, что они сами заставляют использовать суидные бинарники? Хе. "Наше ядро безопасно. Дыры в юзерспейсе. Юзерспейс под рутом."

baka-kun ★★★★★
()
Ответ на: комментарий от Teak

user $ -rwxr-xr-x 1 root root 205981 Jun 23 2002 /usr/bin/cdrecord

gentoo :)

>> А смысл ? Какая разница как cdrecord получит права root ? Главное что он их получит и другим даст сволочь !

>> Кому надо писать, добавляется в группу recorders.

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

> Какая разница как cdrecord получит права root

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

ananas ★★★★★
()
Ответ на: комментарий от baka-kun

>> Подробнее - это не баг а фича, в целях безопастности/надежности в SCSI
> Это такой новый вариант security by obscurity?
Нет.
Ответ здесь http://lwn.net/Articles/98379/
Имхо - для записи СД надо использовать комманды SCSI не входящие в
множество safe for write. т е В какой нибудь другой SCSI девайс
можно при этом писать не под рутом если есть на файлдевайса права.

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

[(19:49)(84.19%)(p3):/usr/src ] egrep "xpt|cd" /etc/devfs.conf
link acd0 cdrom
link acd0 dvd
perm cd0 0660
perm acd0 0660
perm xpt0 0660

[(19:50)(84.19%)(p3):/usr/src ] ls -l /dev/xpt0 /dev/cd0
crw-rw---- 1 root operator 4, 23 9 сен 16:35 /dev/cd0
crw-rw---- 1 root operator 232, 0 9 сен 16:35 /dev/xpt0
[(19:50)(84.19%)(p3):/usr/src ] grep operator /etc/group
operator:*:5:root,toxa,any_user_who_is_able_to_burn_cds



там же...

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

хватит показывать какие вы умные не поняв о чем речь, чмод 660 тут все умеют делать.
suid на cdrecord нужен обязательно для последней версии Linux.
Его также иногда ставят под другими OS/ядрами Linux , чтобы он
1) realtime процессом становился при записи ,
2)не свопироваемую память аллоцировал.

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

а зачем? у меня и так он нормально пишет. "просто работает" ((с) Слака), зачем извращения, сопряженные с открытием потенциальной дыры в системе?

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

зачем, значит...

> а зачем? у меня и так он нормально пишет.

Затем, что не у всех PIV 3GHz, 1Gb RAM. Балбесы, пользующие такую махину просто ради того, чтоб лазить по сетке/смотреть фильмы/слушать музыку/писать диски, еще не повод для того, чтоб криво писать софт.

Dselect ★★★
()
Ответ на: зачем, значит... от Dselect

Балбесы и прочие голодные студенты, не способные проапгрейдить свой _десктоп_ до среднестатистической конфигурации (на которой cdrecord будет писать без извратов) - еще не повод для того, чтобы открывать по дефолту дыры в настройках для криво написанного софта.

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

keep on rotting, keep on dreaming, one day, may be

> Балбесы и прочие голодные студенты, не способные проапгрейдить свой _десктоп_ до среднестатистической

"Мне PIV, 2GB RAM, 200GB HDD, ну, что там еще для тетриса надо?"

Если у пЫонерa шибко много денег, и он хочет пожертвовать их шаражке с вывеской Интёлъ -- ради бога. Хочет это делать каждый год? -- Да пожалуйста, мне не жалко. Или вечно негнущиеся пальцы не дают спокойно пройти в двери?

Но мне-то это зачем эти цацки?

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

SELinux в руки, и exec-shield навстречу. Кому не нравится -- RSBAC и PaX.

Dselect ★★★
()
Ответ на: keep on rotting, keep on dreaming, one day, may be от Dselect

Смешно. Мы отталкиваемся от "конфигурации, на которой cdrecord нормально работает". Это значит, купить машину пару лет назад и не обновлять еще столько же. При чем здесь каждый год? И при чем здесь интель? Эх, любители красного словца...

> SELinux в руки, и exec-shield навстречу. Кому не нравится -- RSBAC и PaX.

Самая лучшая security engine - это Theo Deraadt, который, если припрет, перепишет и пропатчит, а потом привсепнет этот cdrecord ;-)

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

Сынок, Деда Мороза НЕТ!

> Смешно. Мы отталкиваемся от "конфигурации, на которой cdrecord нормально работает".

cdrecord _нормально_ работает на P133, 64Mb RAM, 1Gb HDD. (Нормально работает = диски пишет)

> Это значит, купить машину пару лет назад и не обновлять еще столько же.

Красноглазые верят в то, что upgrade ускоряет работу... А в Деда Мороза?

> При чем здесь каждый год?

Да, каждые 2 года... Какая, к черту, разница? На кой покупать новую вещь, если она делает то же самое, что и старая, ничуть не лучше?

> И при чем здесь интель?

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

> Самая лучшая security engine - это Theo Deraadt, который, если припрет, перепишет и пропатчит, а потом привсепнет этот

Ага, очень надежная ОСь, в которой нельзя просто запустить софтину, не перелопатив ее, круче только m$-do$...

Dselect ★★★
()
Ответ на: Сынок, Деда Мороза НЕТ! от Dselect

> cdrecord _нормально_ работает на P133, 64Mb RAM, 1Gb HDD. (Нормально работает = диски пишет)

без извращений, для которых на нем нужен suid-bit? Если без, то о чем вообще речь.

>Красноглазые верят в то, что upgrade ускоряет работу... А в Деда Мороза?

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

> При чем здесь каждый год?
>Да, каждые 2 года... Какая, к черту, разница?

2+2 = 4. Округляя, получим 5 лет. Какие еще два?

> Ага, очень надежная ОСь, в которой нельзя просто запустить софтину, не перелопатив ее, круче только m$-do$...

Все нужные софтины уже перелопачены. Большинство, во всяком случае.

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

>1) realtime процессом становился при записи ,

>2)не свопироваемую память аллоцировал.

Нахуа? Ему всё равно данные с диска читать. И если у тебя машина трешится, то ни realtime ни memory lock тебя не спасут.

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