Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #71, НОЯБРЬ 2004 г.

Локальное нападение

Докучаев Дмитрий aka Forb

Хакер, номер #071, стр. 071-056-3


Некролог:

Эксплойт для linuxconf действительно показывает высокие результаты на системах Mandrake 8.1, 8.2 и RedHat 7.1-7.2 (проверено лично мной). Сложность использования в том, что перед получением привилегий взломщик должен несколько раз запустить lconfex.c и handy.sh, а в некоторых случаях даже поиграть со значением параметра -b. Пакет autolinuxconf.tgz находится здесь: http://packetstormsecurity.nl/0209-exploits/autolinuxconf.tgz.

RedHat 7.3 & 2.6.4

После того как я взломал одного лопоухого юзера с помощью эксплойта для lsass, у меня появился конфиг wcx_ftp.ini. Пропарсив записи, я нашел полноценный FTP-аккаунт какого-то хостинга. Первая мысль, которая пришла в голову, - попробовать залогиниться по SSH. К моему счастью, пароли внезапно совпали. После анализа операционки выяснилось, что в качестве дистрибутива используется известный RedHat 7.3. Что касается ядра, то его версия была непробиваемая (даже do_mremap.c не мог завалить его), поэтому нужно было искать что-то другое. Я знал, что практически все суидные файлы в этой системе были свежими и пропатченными. Сервисы также отличались своей стойкостью: в качестве FTPD выступал безопасный vsftpd, на 25 порту крутился пресловутый postfix. Но внезапно я вспомнил о нашумевшем баге в sudo. Я поспешно слил необходимый эксплойт, скомпилил хакерское творение и запустил с дефолтными параметрами. На экране быстро замелькали какие-то цифры, а через 5 секунд появился вывод команды id. Я стал рутом!

Некролог:

В конце 2002 года в свет вышел эксплойт hudo.c, который мог получить рутовые привилегии в различных операционных системах. Единственная сложность при использовании - необходимость указания специфических параметров. По умолчанию можно задавать опции вида $((16392-8)) $((16392-8-256-16)), как ни странно, они работают :). Помимо этих аргументов, нужно указать версию операционной системы. Публичный эксплойт снабжается списком рабочих таргетов, среди которых есть и RedHat 7.3. Ссылка на эксплойт: http://packetstormsecurity.org/0211-exploits/hudo.c.

FreeBSD 4.6-STABLE

Теплым летним утром я браузил инет в поисках ссылки на злополучную программу для Windows, которая прятала окна в панели задач. Гугл сказал, что софтина находится на одном портале со звучным именем. Я зашел на этот самый сайт, но обнаружил, что линк на тулзу битый. Это весьма меня огорчило. К тому же, я заметил, что ссылки на разделы оформлены в виде www.host.ru/page=data/info.php. Довольно стандартная ситуация. Учитывая облом с программой, я решил изменить путь к скрипту на ../../../../../etc/passwd. Но ни к чему хорошему это не привело - скрипт вернул контент index.php. Тогда я подключил смекалку и изменил путь на data/../../../../../etc/passwd. Как ты догадался, содержимое passwd мгновенно отобразилось на экране. Видимо, админ решил ограничиться проверкой на наличие «data» в начале пути. К сожалению, сервер прикрывался файрволом, был открыт лишь 22 порт. Но не все было так плохо: среди аккаунтов присутствовала запись testftp с комментарием test FTP-account FTP. Я попробовал подключиться к системе с аналогичным паролем, и мне это удалось! Выполнив uname -a, я узнал, что на серваке вертится FreeBSD 4.6-STABLE (впрочем, версию системы я опознал сразу после отображения /etc/passwd). Защищенную Фряху вполне мог порутать известный эксплойт unixtank.c, эксплуатирующий ошибку в бинарнике /usr/sbin/keyinit. Я скачал необходимый файл, скомпилил его и запустил с параметром root. Но вот незадача: эксплойту хотелось, чтобы текущий пользователь имел доступ к изменению прав. Логин testftp не входил в группу wheel, поэтому прежде чем рваться к рутовым привилегиям, я должен был получить права любого аккаунта из группы wheel. Нужный логин (admin) быстро нашелся. Я запустил unixtank с параметром admin и засуидился на него с помощью подложного ключа. Затем, уже под админом, запустил эксплойт с аргументом root и повторил все нехитрые действия для рутового аккаунта. В награду за успешное эксплуатирование я получил постоянный нулевой uid :).

Назад на стр. 071-056-2  Содержание  Вперед на стр. 071-056-4