На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

Уязвимые сценарии

Одной из основных уязвимостей в том числе сервера IIS, - это плохое
программирование сценариев, используемых в интерактивных Web-страницах. Дело в том, что для обмена информацией со сценариями Web-серверов исполь­зуется протокол CGI (Common Gateway Interface - Общий шлюзовой интер­фейс), который вообще не обеспечивает никакой защиты, а всего лишь регла­ментирует передачу параметров от клиента Web серверному сценарию. Получив запрос к сценарию CGI, сервер просто передает полученные параметры сцена­рию, запущенному на сервере. Причем права сценария на доступ к ресурсам серверного компьютера определяются контекстом безопасности
т.е., применительно к серверу IIS, с правами учетной записи System, обеспечиваю­щей практически полный доступ к ресурсам системы. Вот что это дает хакеру.
То, что происходит с переданными параметрами, определяется про-
граммой, а программы пишут программисты. И каждый, кто хоть когда-либо писал программы, знает, насколько трудно и утомительно согласовать типы фактических
и формальных параметров программы, и насколько мешает творческой фантазии
необходимость скрупулезно проверять корректность передаваемых параметрами данных. Поэтому часто эта задача оставляется на потом, или вообще отбрасывает­ся - и программа становится полностью зависимой от внешней среды.
Так что если, к примеру, в сценарий Perl, выполняемый в режиме интерпрета­ции, т.е, шаг за шагом, по мере считывания кода программы, передать вместо, скажем, числового значения некий
программный код, то не исключено,
что вместо аварийного завершения сценарий сможет исполнить пере­данный код. И это - самые настоя­щие парадные двери для хакера, по­скольку плохо написанных сценари­ев - хоть пруд пруди, и, немного
поискав по сайтам Web, где-нибудь
да наткнешься на открытые двери. И вот, чтобы упростить себе жизнь, хакеры придумали специальные сканеры которые, обойдя весь Web-сайт, находят при­меняемые в нем сценарии и сооб­щают о них заинтересованному и понимающему человеку.
6. Рабочее окно CGI-сканера D@MNED CGI Scanner 2.1
Мы рассмотрим здесь один из наиболее популярных сканеров CGl-сценариев D@MNED CGI Scanner 2.1 (http://shieldandsword.narod.ru/soft/scansec/ scansec.htm). На 6 представлено рабочее окно сканера, содержащее шесть вкладок.
Рассмотрим функциональные возможности, предоставляемые вкладками рабо­чего окна сканера D@MNED CGI Scanner2.1.
На вкладке Scanners log (Журнал сканирования) отображается статистика по всем найденным уязвимым сценариям. Кнопки на панели инструментов, пере­численные в порядке слева направо, позволяют запустить и остановить сканиро­вание, а также очистить и сохранить созданный журнал.
Вкладка Scan list (Список сканируемых узлов), представленная на 7, со­держит список серверов, предназначенных для сканирования. Кнопки в левой части панели инструментов позволяют сохранить, открыть и очистить список серверов, перечисленных на вкладке. Для пополнения списка серверов в поле на панели инструментов следует ввести адрес сервера и щелкнуть на кнопке с кре-
стиком. Чтобы отредактировать элемент списка, следует мышью выделить эле­мент списка, в поле на панели инструментов ввести новое значение и щелкнуть на кнопке со стрелками вверх и вниз. Внизу вкладки представлены элементы управления, позволяющие сканировать целую подсеть класса С. Установка флажка Scan subnet (Сканировать подсеть) отменяет применение списка серве­ров и заставляет сканировать подсеть класса С в диапазоне указан­ном в полях слева. Например, эта запись может быть такой: 234.56.78.1 - 8.
Вкладка CGI holes (Уязвимости CGI) (8) содержит список CGI-сценариев, содержащих известные автору программы уязвимости. Этот стандартный список отображается на вкладке, и его можно пополнить, загрузить и отредактировать с помощью кнопок на панели инструментов, аналогичных содержащихся на
вкладке Scan list (Список сканируемых узлов).
Вкладка Spy (Шпион) отображает информацию о сканируемом хосте (9), включая тип Web-сервера (в данном случае - IIS 5.0), и путь к первой странице сервера (корневой каталог сервера).
Вкладка Option (Параметры), представленная на 10, содержит настройки прокси-сервера, пути к папке сценариев и средства для выбора языка пользователь­ского интерфейса. Советуем не пренебрегать настройками прокси-сервера - любой мало-мальски квалифицированный хакер работает только через прокси-сервер, что дает хотя бы какой-то шанс не засветиться (не сильно обольщайтесь, однако...).
Работа со сканером D@MNED CGI Scanner 2.1 не вызывает затруднений.. Для иллюстрации отсканируем в нашей экспериментальной сети хост А1ех-1 с IP-адресом выполнив такие шаги.
> На вкладке Scan list (Список сканируемых узлов) удалите установленный по умолчанию хост http://www.altavista.com и добавьте IP-адрес 1.0.0.7.
Перейдите на вкладку Scanner log (Журнал сканирования) и запустите про­цедуру сканирования. В результате получится список уязвимых сценариев, представленный на 11.
Числовые коды в списке уязвимо-стей (на 11 отображены 200 и 500) отмечают результат проверки; эти коды перечислены в справоч­ной системе программы. Например,
200 означает успешное завершение
- сценарий найден, а 500 - неудачу.
Так что теперь можно собрать все сообщения с кодом 200 (они так и отмечены   -   SUCCESS)   и далее
можно поискать эксплойт для най­денной уязвимости.
К сожалению, авторы программы D@MNED CGI Scanner 2.1 не позабо­тились о более точном описании найденных уязвимостей и об указании соответствующих им эксплойтов. Такое описание, без сомнения, позволило бы более эффективно взломать сервер с най­денной уязвимостью. Поэтому для дальнейшего продвижения хакеру следует
прибегнуть к базам данных уязвимостей и эксплойтов, про которые мы упомина­ли в Главе 1, например, MITRE CVE (http://www.mitre.org). В данном случае, как видно из htr иidq.; Вот что на этот счет го­ворит база уязвимостей MITRE.
Buffer overflow in extension (idq.dll) in Index Server 2.0 and Indexing Ser-
vice 2000 in IIS 6.0 beta and earlier allows remote attackers to execute arbitrary commands via a long argument to Internet Data Administration (.ida) and Internet Data Query (.idq) files such as default.ida, as commonly exploited by Code Red.
(Переполнение буфера в расширениях ISAPI (idq.dll) в Index Server 2.0 и In­dexing Service 2000 в IIS 6.0 бета-версии позволяет выполнять удаленный взлом для исполнения произвольных команд с помощью длинных аргу­ментов в файлахida (Internet Data Administration - Администрирование данных Интернета) иidq (Internet Data Query - Запрос данных Интернета), например, default.ida, который обычно используется червем Code Red.)
Reference: All versions of Microsoft Internet Information
Services, Remote buffer overflow (SYSTEM Level Access)
Reference: Reference:
Reference: BID:2880
Reference: XF:iis-isapi-idq-bo(6705)
Reference: CIAC:L-098
Как видим, CGI-сканер нашел уязвимость сервера IIS к атакам переполнения буфера - излюбленному инструменту хакинга IIS. А чтобы практически исполь­зовать найденную уязвимость, следует обратиться к базам эксплойтов, одна из которых содержится на сайте http://www.securitylab.ru. И действительно, на этом сайте имеется описание найденной уязвимости, сообщающей следующее.
"В заданной по умолчанию инсталляции IIS позволяется использованиеhtr файлов, которые используются для изменения Web паролей. Переполне­ние памяти "кучи" существует в компоненте сервера, который использует­ся для обработки запросов кhtrфайлам (ISM.DLL).
Эта уязвимость была проверена на IIS 4.0 и 5.0 с SP2 и самыми последни­ми заплатами защиты от 1 апреля 2002.
Когда IIS получает запрос к какому-либо файлу, он проверяет, соответст­вует ли расширение на файле в запросе расширению в отображенных сце­нариях. Затем он передает запрос к ISAPI фильтру для дальнейшей обра­ботки,htr файлы могут не присутствовать на системе для запроса, кото­рый будет обработан ISM.DLL.
Специальный запрос к ISM.DLL может вызвать переполнение кучи в про­цессе обработки. Это переполнение может использоваться для выполне­ния произвольного кода с правами IWAMCOMPUTERNAME.
Уязвимость может использоваться для распространения саморазмножаю­щихся червей. Уязвимость найдена в IIS 4.0-5.1."
К сожалению, на сайте SecurityLab.ru для рассматриваемой уязвимости пред­ложен эксплойт только для систем Unix и что затрудняет его использова­ние в домашних условиях. Такая ситуация очень распространена, и поиск экс-плойтов для других уязвимостей чаще всего приносит всего лишь исходный код программ, что характерно для такого рода инструментов (может быть, это связано с наличием проблем в их разработке).
Более обширную информацию о найденных уязвимостях предоставляет про­грамма CGI Vulnerability Scan (http://www.wangproducts.co.uk), рабочее окно которой представлен на 12.
В приложенной к программе документации можно найти описание уязвимых известных программе, однако эта база данных поддерживает­ся недостаточно эффективно - новые уязвимости в ней отсутствуют. За ними следует охотиться на сайтах Интернета, например, SecurityLab.ru (http://www.securitylab.ru), где очень часто мелькают сообщения о только что най­денных уязвимостях серверов (и других серверов), сопровождаемые описаниями уязвимостей и даже использующими их эксплойтами для хакинга серверов IIS.
Итак, приложив некоторое умение, и при условии некоторого везения хакер мо­жет взломать сервер HTTP - и дело сделано. Ну а если это ему не удастся - что же еще полезного для хакинга компьютерной сети организации или для других целей можно извлечь из Web-сайта? Осталась одна возможность - исследо­вать HTML-код Web-страничек, который подчас хранит в себе очень много ин­тересных открытий. Но чтобы исследовать код HTML, его следует загрузить из
Web, поскольку подробное изучение кода HTML дело не быстрое и не простое.
Наилучшее решение такой задачи состоит в сканировании ресурсов Web в поис­ках полезной информации с последующей загрузкой содержимого сайта на ком­пьютер. Признанным фаворитом среди инструментов, предназначенных для та­ких операций, считается программа Teleport Pro (http://www.ten-max.com), пре­доставляющая широкий набор возможностей по настройке процедур поиска
в сети Web и загрузке найденных ресурсов на локальный компьютер. Вкратце опишем возможности Teleport Pro.
Программа Teleport Pro представляет собой мощный инструмент для офлайно-вого просмотра Web-сайтов, создания зеркальных копий Web-сайтов и извлече­ния из Интернета файлов с полезными ресурсами. Программа Teleport Pro обес­печивает полностью автоматический режим работы, причем одновременно не­скольких копий программы (это свойство называется многопоточностью), функ­ционируя подобно пауку, перемещающемуся в сети Web по ссылкам на Web-сайте. Программы, обладающие последним из указанных свойств, на компьютерном сленге называются - от английского слова «spider» - паук.
Такие Web-спайдеры способны безо всякого участия пользователя «ползать» по сети Web в поисках «жертвы» - файла с нужной информацией. А чтобы опреде­лить, нужен ли вам встреченный при поиске файл, спайдер использует специаль­ные критерии, заданные пользователем. Спайдер Teleport Pro умеет делать сле­дующие вещи.
•  Загружать Web-сайты целиком для последующего просмотра в офлайновом
• Создавать точные копии Web-сайта, полностью сохраняющие структуру ка­талогов вместе с хранимыми файлами.
• Выполнять поиск на Web-сайте файлов определенного типа.
• Автоматически загружать список файлов с Web-сайта.
• Исследовать любой Web-сайт, связанный с центральным Web-сайтом.
• Производить поиск на Web-сайте по ключевым словам.
• Создавать список всех страниц и файлов на Web-сайте.
Все эти возможности Teleport Pro очень полезны для хакинга, поскольку позво­ляют вместо утомительного ручного поиска по Web нужной информации, щелч­ков на ссылках и просмотра страниц автоматически загружать нужные файлы и без всякой спешки тщательно изучать их на своем компьютере.
Для работы с Teleport Pro вы должны создать файл проекта, содержащий не­сколько адресов файлов, хранимых в сети Web. В файле проекта следует также указать несколько правил выбора гиперссылок, по которым должны выполнять­ся переходы спайдера, и файлов для загрузки из Web. Далее командой меню Start (Старт) запускается работа - и вы можете просто подождать ре-
зультата, пока Teleport Pro прочитает файлы с указанными адресами, извлечет их из Web, прочитает гиперссылки из загруженных файлов Web-страниц, перей­дет по ссылкам на другие файлы, и так далее до завершения.
При создании файла проекта вы можете задать режим извлечения из сайта Web файлов только определенного типа и следования по ссылкам также только определенного типа. Например, можно заставить Teleport Pro извлекать из Web только графические файлы и выполнять переходы только внутри домена по ука­занному стартовому адресу, или же указать «глубину» следования по ссылкам. Так что наш Web-спайдер может вести себя достаточно интеллектуально, не по­кидая того уголка сети Web, в который его поместили.
Рабочее окно программы Teleport Pro представлен на 13.
Для реализации всех описанных выше возможностей пользователю Teleport Pro предоставляется мастер создания проектов, к описанию работы которого мы и
перейдем.

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика