Некоторая помощь от h e l p d e s k . E x e
Среди серверов, которые Роберт обнаружил с помощью своего Network Mapper был один, на который он особенно надеялся: helpdesk.companyX.com. Когда он пытался проникнуть на этот сайт, то появилось диалоговое окно с требованием ввести имя пользователя и пароль, допуская туда только авторизованных пользователей.
Приложения для helpdesk находились на сервере, где работала IIS4, древняя версия Microsoft Internet Information Server (IIS), которая, как Роберт знал, имела целый ряд лазеек. При небольшом везении он мог бы найти одну незаделанную и поэтому полезную для него.
Он обнаружил зияющую дыру. Некоторые администраторы компаний инициируют MS Front Page таким образом, что любой может выгрузить или загрузить файлы из корневой директории, где хранятся файлы Интернет‑сервера.
(Мне хорошо знакома эта проблема. Однажды Интернет‑серверы в компании по обеспечению безопасности, которую я создал, были атакованы через аналогичную брешь, потому что системный администратор, который добровольно помогал мне, неправильно сконфигурировал систему. К счастью, сервер работал в своем собственном сегменте сети, отделенном от остальной).
Поняв, что эта ошибка дает ему возможность загружать файлы на сервер и сгружать с сервера, он начал смотреть на параметры сервера.
«Наиболее распространенный вариант использования тупых IIS‑серве‑ров состоит а возможности авторизации FrontPage».
И у этого сайта была такая слабость. Развертывание Microsoft FrontPage (программа‑приложение, используемая для простого создания и редактирования HTML‑документов) без установки соответствующих разрешений на пропуск файлов — обычное заблуждение системных администраторов, которые иногда специально конфигурируют так сайт из соображений удобства. В данном конкретном случае любой человек мог не только прочесть файлы, но также и загрузить туда файлы в любую незащищенную директорию. Роберт действовал в том же стиле.
«Я смотрел на все это и думал: «Черт побери, я могу прочесть или отредактировать любую страницу на этом сервере без всякого имени пользователя или пароля.
Таким образом, я мог войти и изучать корневую директорию на Интернет‑сервере».
По мнению Роберта, большинство хакеров упускают такую возможность.
«Дело в том, что когда люди устанавливают сканер сети на сервере, они чаще всего не смотрят на ошибки в конфигурации таких приложений, как FrontPage. Они смотрят (чтобы посмотреть на тип сервера) и говорят „ Э т о Apache“ или „ Э т о I I S “ . И они упускают возможность упростить свою жизнь в том случае, если FrontPage неправильно сконфигурирована».
Это было не так прекрасно, как он ожидал, поскольку «на этом сервере было не так уж много интересного». И все же он заметил, что приложение под названием «helpdesk.exe» появляется, когда он получает доступ к сайту через свой браузер. Это могло бы оказаться очень полезным, но требовало знать имя пользователя и пароль.
«Итак, я смотрел на все это и думал, как атаковать этот треклятый сайт? Я не люблю делать одну вещь: это загружать файлы на Интернет‑сервер, потому что, если администратор просмотрит записи об Интернет‑активности и увидит, что среди тысячи сотрудников его компании, которые обращались к helpdesk.exe, неожиданно оказался парень из Южной Атлантики, работающий с two.exe или каким‑то другим приложением, это сразу насторожит его, правильно? Поэтому я старался избегать подобных записей».
Приложение helpdesk состоит из одного исполняемого файла и файла библиотеки динамических связей ( D L L ) (файлы с расширением .DLL содержат набор функций Windows, которые может вызывать приложение).
Имея возможность загружать сайты в корневую директорию Интернет‑сайта, атакующий может легко загрузить туда простую программку, которая даст возможность хакеру выполнять команды через свой браузер. Но Роберт был не простым хакером. Он гордился собой, потому что он был невидим и практически не оставлял следов в записях Интернет‑сервера. Вместо простой загрузки на сервер переделанной программы, он перегружал на свой компьютер файлы helpdesk.exe и helpdesk.dll, чтобы понять, как работают эти приложения, полагаясь на свой опыт и знания. «Я проделал массу работы по обратной инженерии приложений и изучению программ, написанных на ассемблере, поэтому я знаю, как разбираться в скомпилированном с языка С коде и переводить его обратно на ассемблер».
Программа, которой он пользовался, называлась I D A Pro, интерактивный «дисассемблер» (ее продают на сайте http://www.ccso.com ), ей пользовались по его словам «многие компании, занимающиеся вирусами и охотой на вирусных червей, которым нужно декомпилировать некоторые тексты до уровня ассемблера, а потом разобраться в том, что они делают». Он декомпилировал helpdesk.exe и, одобрил работу, выполненную профессиональными программистами, решив, что она «написана вполне прилично».