Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #84, ДЕКАБРЬ 2005 г.

Потрогай нежно

Александр Любимов aka Sashiks

Хакер, номер #084, стр. 084-068-1


(real_sshx@mail.ru)

Обзор утилит для грамотного remote fingerprint'a

Любому бою всегда предшествует разведка. И не мудрено, ведь чем больше ты знаешь о противнике, тем выше шансы, что ты отправишь его в нокдаун одним ударом. Ни одна сетевая атака не обходится без предварительного определения типа удаленной ОС и снятия баннеров с запущенных на машине сервисов. В дальнейшем полученные данные окажутся критически необходимыми для взлома. Ведь долбить линуксовый ProFTPD сплоитом для виндового Serv-U - занятие для дурачков. Чтобы тебе было комфортней производить разведывательные мероприятия, мы подготовили обзор современного софта для remote fingerprinting'a.

[нежные прикосновения]

Про технологию снятия отпечатков сетевого стэка в твоем любимом журнале упоминалось уже неоднократно. Если ты читал внимательно, то, наверное, знаешь, что для определения типа ОС на машину отправляются специальные IP-пакеты, которые не несут в себе особенной информации, но каждая операционка реагирует на такие запросы по-разному. Именно реакция системы на этот сетевой мусор, то, какими пакетами и в каком порядке ответит система, и определяет ее принадлежность к тому или иному семейству.

Совокупность таких ответов образует сигнатуру, которая позволяет отличать одни операционки от других. Наборы сигнатур различных систем собирают в единую базу и используют для OS fingerprinting'а. Само собой разумеется, что разнообразные утилиты используют различные методики для снятия отпечатков.

Всего есть два вида методов анализа сетевого стэка: активный и пассивный. С активным все предельно просто: отправили несколько пакетов, ждем ответа и анализируем его содержимое. При пассивном исследовании стэка все описанные выше действия проходят без отправки запросов на удаленный хост - компьютер просто ждет появления пакета с машины и анализирует его. Различия налицо: вместо того чтобы «провоцировать» удаленный хост ответить на наши данные, мы просто банально выжидаем, пока компьютер САМ не проявит сетевую активность.

Сегодня я расскажу про тулзы, которые реализуют оба метода исследования. Вот эти негодяи.

[инструментарий следователя]

1. Xprobe2 (http://xprobe.sourceforge.net)

Описание. Это мощный и сильно продвинутый инструмент, разработанный на основе научных исследований Офира Аркина. Алгоритм работы программы не особенно сложный, для нас самым важным моментом будет тот факт, что программа использует UDP-пакеты для снятия отпечатков. Соответственно, если ответа на UDP-запрос от удаленного компьютера не поступит, то определить ОС Xprobe не сможет.

Вообще, при запуске этой тулзы можно указать довольно много опций, которые способствуют довольно-таки гибкой настройке.

Использование. Сейчас я расскажу про самые интересные флаги. Режим сканирования TCP-портов указывается флагом -T; тут нужно указать интересуемый диапазон, хотя бы так: -T20-80,110,3306. Причем в этом случае xprobe попытается найти и зафильтрованные брандмауэром порты. Аналогичным образом производится проверка и UDP-портов, которая активируется флагом -U. Параметр -v выдает подробную информацию по загруженным модулям программы (активировать и дезактивировать модули можно флагами -M и -D). Есть возможность трассировки хоста (флагом -r). При желании можно сохранить отчет программы в формате XML параметром -X.

Содержание  Вперед на стр. 084-068-2