Главная
Архив новостей
Безопасность в Unix
Безопасность в Windows
Сборник FAQ'ов
Телефония, фрикинг
Кредитные карты
Криптография
Истории о хакерах
Программы, утилиты
_el@sp.sz.ru

RB2 Network

уязвимости MS IIS: чтение файлов с диска





После непродолжительного затишья Mnemonix'ом (mnemonix@GLOBALNET.CO.UK) вновь было обнаружено несколько серьёзных уязвимостей в Microsoft IIS. Вы, скорее всего, видели, что с новую базу скриптов нашего CGI-сканера добавились несколько странных файлов - blabla.idq, к примеру. При запросе данных несуществующих файлов IIS передаёт управление модулю idq.dll, который возвращает ответ вроде The IDQ file c:\inetpub\wwwroot\blabla.idq could not be found. Естественно, IIS не заботится о том, чтобы обрезать информацию о точном местонахождении файла, м пользователь может узнать расположение httpd docroot в файловой системе сервера. Однако, как показала ситуация, "кривость" idq.dll и ещё одного модуля - webhits.dll - не ограничивается вышеперечисленными фактами.

Похожий обработчик существует и для запросов .htw - им является webhits.dll. На первый взгляд, ничего страшного при вызове несуществующего .htw-файла не происходит никакой "утечки информации", и единственное, что получает пользователь, запросивший, к примеру, blabla.htw, это "format of the QUERY_STRING is invalid"

Но главная уязвимость кроется вовсе не в этом. Любой сайт, работающий под управлением MS IIS и использующий Internet Data Queries для организации, к примеру, поиска по сайту, уязвим для атаки, результатом которой станет доступ к файлам вне виртуальной директории IIS на чтение.

Осуществление атаки требует от оператора знания точного пути к файлу, который он хочет заполучить через IIS. Файл должен находиться на том же логическом диске, что и docroot атакуемого виртуального сервера.

В самом простейшем случае, оператор должен знать путь до хотя бы одного .htw-файла, доступного через IIS. Несколько файлов пмогут быть найдены тут /iissamples/issamples/oop/qfullhit.htw /iissamples/issamples/oop/qsumrhit.htw /iissamples/exair/search/qfullhit.htw /iissamples/exair/search/qsumrhit.htw /iishelp/iis/misc/iirturnh.htw Затем мы формируем запрос вида: http://victim.dom/iissamples/issamples/oop/qfullhit.htw
?CiWebHitsFile=/../../../../../boot.ini&CiRestriction=none
&CiHiliteType=Full


Надежда на то, что от дырки удастся быстро отбиться удалением как всегда проблемных дырявых default-скриптов не оправдалась. При наличии хотя бы одного файла в директории, обслуживаемой IIS'ом, существует вохможность осуществить доступ к файловой структуре логического диска. Fredrik Widlund произвёл исследование, и привёл пример, что, если у нас имеется файл default.htm, то строка запроса, которая заставит сервер вытащить нам boot.ini, будет такова:
/default.htm%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20.htw?CiWebHitsFile=../../../../../boot.
ini&CiRestriction=none&CiHiliteType=Full
Рабочий эксплоит для генерации подобных URL, с помощью которых можно извлечь любой файл при помощи IIS, доступен на данной локации.

Не стоит и говоритьт, что под угрозой оказалсиь тысячи онлайн - магазинов, реализованных на ASP - их исходный код в любое время может стать достоянием общественности. Учитывая, как ревниво Microsoft охраняет любой тип исходных текстов, если проблема не будет быстро ликвидрована, это может обернуться насоящей катастрофой.

И ни для кого не стало новостью, что в idq.dll присутствует похожая уязвимость:
/file.idq?CiTemplateFile=../../../../../boot.ini приведёт к подобному результату (обратите внимание - file.idq ДОЛЖЕН существовать).

 duke

Team Void


<== Back to main page