
BugTraq #9
Xakep, номер #033, стр. 033-008-2
SSI/IIS
by MS Technet
В трехбуквенных сокращениях - потеряться не сложно, тут тебе и IIS, и ISS, и SSI... Сегодняшний случай - пересечение всех трех. 1 - обладатель бага, 2 - средство поиска дыры, 3 - точное местоположение уязвимости. Для интерпретации SSI юзается модуль ssinc.dll. По дефолту ssinc вступает в половую связь с .stm, .shtm и .shtml файлами.
SSI обрабатывает #include:
<!--#include file="Filename"-->
Реагируя с #include, ssinc.dll запрашивает на верность имя папки, где лежит .shtml файл, потом прописывает в конец этот файл и дает новый путь.
Получив имя файла через test.shtml ssinc.dll, чекает объем источника информации (aka file). Когда объем превышает 0x801 байт, ssinc.dll производит обрезание до 0x801 байт и дописывает в конце '\0'. Получается, что имя файла (включая '\0') будет не больше, чем 0x802 (2550) байт. Но на практике ssinc.dll не проверяет длину обновленной строки, где лежит путь, из конца имени текущего каталога. Т.е. легко обустраивается переполнение буфера. Когда (читай - всегда) ssinc.dll обладает системными привилегиями, у атакующего возникает маза выполнить произвольный код с системными правами.
Для эксплойтинга необходимы два условия:
1. Доступ к созданию файла или папки в ВЕБ-директории.
2. Возможность обращения к созданному файлу через web сервис.
Эксплойтим:
1. Создаем файло "xakep.shtml", включающего в тело подобную инфу:
<!--#include file="AAAA[...]AA"-->
Число 'A' следует сделать огромедным, больше чем 2049.
2. Делается папка "a" в каталоге Web. Копируется "xakep.shtml" в "a" каталог.
3. Открываем "xakep.shtml" c помощью браузера: http: // xakep.ru/a/xakep.shtml
4. IIS вернет пустую страницу. Сие станет известием произошедшего переполнения.
Sendmail
Cade Cairns <cairnsc@securityfocus.com>
На мой взгляд, использование сендмыла админом, который знает о существование Postfix`a и qmail`a, - нелогично. Первая тема о степени security сервака - наличие suid`ных прог на нем. Первой же проблемой часто оказывается требование sendmail`ом - root привилегий. Новый баг - локальный, и, соответственно, поможет поднять права локального юзера до r00t`овских. Затронуты версии 8.11 и 8.12 в различных проявлениях (beta 5, 7, 8 и т.д.) Из предыдущих версий безопасными остаются 8.9 и 8.10 (по крайней мере от рассматриваемой дырищи).
Уязвимость притаилась в функции tTflag(), что напрямую завязана с опцией программы -d, т.е. баг становится актуальным при активной d. За полным описанием, как и за готовым эксплойтом, следует лезть в классический багтрек. Сплойт, кстати говоря, написан нашим соотечественником - Александром Юрченко, с названием Алсу -). http://www.securityfocus.com/bid/3163
Microsoft Outlook Express