Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #45, АВГУСТ 2004 г.

Отравляем приложения

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

Спецвыпуск Xakep, номер #045, стр. 045-052-6


Бажные заголовки

Нередко переполнение случается при обработке специальных заголовков в некоторых службах, в частности, почтовых. Например, совсем недавно я игрался с эксплоитом для eXchange POP3 server’е. Как оказалось, при интерактивном обмене данными заголовок «MAIL FROM:» не проверяется на размер. Если передать серверу более 1019 байт, произойдет аварийное завершение работы сервиса. Сплоит, реализующий уязвимость, выполнен на Perl с юзанием модуля Net::SMTP. Я сам проверял его работу на бажном сервисе, и, что удивительно, шелл действительно открывался ;). Поэтому рекомендую посетить http://www.securitylab.ru/44720.html и использовать эксплоит самостоятельно (только в целях ознакомления!).

Подобная ситуация сложилась с утилитой /bin/mail в некоторых Linux-дистрибутивах. Как оказалось, возможно переполнить буфер, посылая слишком большой параметр cc (carbon copy). В некоторых версиях на /bin/mail накладывается suid-бит, поэтому такой оверлоад на руку всем хакерам. Полноценный локальный эксплоит ты найдешь по адресу http://www.securitylab.ru/38125.html. Его можно юзать как в качестве CGI-сценария, так и консольным приложением.

Кроме этого, похожая брешь нашлась в новой версии Squid Proxy Server’а 2.5. Рассмотрим небольшой кусочек кода:

char *ntlm_check_auth(ntlm_authenticate * auth, int auth_length)

int rv;

char pass[25] /*, encrypted_pass[40] */;

char *domain = credentials;

...

memcpy(pass, tmp.str, tmp.l);

Видим, что переменная pass не проверяется на размер. Однако пользователь вводит пароль вручную, при NTLM-аутентификации. Если Squid собран с поддержкой NTLM, можно смело забивать пароль более 25 символов и попрощаться с сервисом. Если нет... Что же, пинай своего админа и заставляй реализовать NTLM ;).

Примеры переполнений приведены исключительно в ознакомительных целях!

Поразительно, но для MC даже не существует патча, исправляющего уязвимость при обработке архивов.

Здесь приведены не все примеры переполнений. Полный список ищи на сайтах, посвященных компьютерной безопасности.

В WMP 9.0 также содержатся некоторые изъяны. Правда, не очень существенные.

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

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

Чтобы не попасться на удочку хакеру, рекомендуется либо не использовать %f в VirusEvent, либо не юзать директиву вообще.

Старайся не посещать подозрительные сайты и не кликать по непроверенным ссылкам. Тогда твой ослик не пострадает.

Назад на стр. 045-052-5  Содержание