
BugTraq
Xakep, номер #039, стр. 039-008-1
SideX (sidex@real.xakep.ru)
Переполнение буфера и D.o.S в Squid
BT id 4148; 4146; 4150
Класс - ошибка смежных условий; ошибка при обработке чрезвычайных условий; ошибка дизайна
Тип эксплойтинга - удаленный
Дата - 21.02.2002
Уязвимый продукт - Squid Web Proxy 2.0-2.4 (3)
Автор - Jouko Pynnonen jouko@solutions.fi, Henrik Nordstrom
Нерадивые пользователи нагоняют траффик в твоей сети просмотром порнухи, и начальство дало задание снизить показатель с 60% до 40? =) Ставим Squid, снабдив его заданием фильтровать XXX-сайты! По практике именно этот зверь наиболее удобен при фильтрации, да и вообще, на мой взгляд, является лучшим *nix-проксом. Нерадивый админ запретил качать mp3-шки и divx'ы? =( Разбираем его прокси, а может, всю систему через установленный Squid!
В один день горячие финские парни снабдили нас аж тремя багами в Squid'e, которые удаленно эксплойтятся. Наибольший интерес вызвало переполнение буфера через посылку определенного FTP URL'a прокси-серверу. Результат атаки - получения shell'a с привилегиями юзера, с которого крутится squid; удачный результат - получение root-доступа. Второе маловероятно, т.к. далеко не всякий админ активирует chroot-опцию в squid.conf. Эксплойтинг с исполнением нужного кода жестко привязан к конкретной системе, т.к. работает напрямую с malloc(), который реализуется индивидуально в каждой системе. D.o.S же организовывается тривиальной посылкой супердлинного логина и пароля.
Как ты заметил по заголовку, здесь описываются сразу три бага. Второй «дыр» появляется с активацией поддержки SNMP-протокола (отключено по умолчанию), о котором можно подробнее узнать из 1157 RFC. Активируется носитель дыры при компиляции, ключом --enable-snmp, а эксплойтится посылкой пакетов специального содержания. Система реагирует жором всех ресурсов, доступных Squid'у, т.е. может завалить всю работу, если не было установлено ограничений для обозначенного прокса.
Последний баг основан на активированной поддержке достаточно молодого протокола - HTCP (2756 rfc), который, как и предыдущий активатор бага, не включен по умолчанию в Squid'e. Тут проблема заключается в невозможности отключения обработки HTCP через squid.conf, несмотря на убеждение в этом со стороны документации прокси-сервера. Т.е. активированный по ходу компиляции (--enable-htcp), он останется в системе вплоть до вторичной компиляции без использования указанного ключа.
Все описанные проблемы сходят на «нет» с установкой Squid'a версии 2.4 stable 4 или же с добавлением краткого кода в 2.4 (3). Как водится, первый метод предпочтителен.
Данный продолжительный постинг навевает мысли насчет того, что не стоит при компиляции активировать малознакомые опции, которыми ты, скорее всего, не будешь пользоваться. Также в 10001-ый раз стоит задуматься о максимальном сокращение suid'ных прог среди процессов системы и не увлекаться chroot'ом.
Нарушение сегментации в Sun Java VM
BT id 3992
Класс - ошибка обработки чрезвычайных условий
Тип эксплойтинга - локальный
Дата - 30.01.2002
Уязвимый продукт - SUN JRE (Linux Production Release) 1.2.2; 1.3.1

















































































































