Утилиты для определения операционной системы при пентесте

Zuzamod

Новичок
Пользователь
Регистрация
16 Янв 2018
Сообщения
76
Реакции
1
Содержание

1 Утилиты для определения операционной системы
1.1 Nmap
1.2 NetworkMiner
1.3 p0f v3
1.4 NetScanTools
1.5 X probe
1.6 Ettercap
1.7 THC-Archive
2 Выводы


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

Еще по теме: Инструменты для пассивного сбора информации



Если вы регулярно читаете наш сайт, то наверняка уже встречали упоминание многих из этих программ. Возможно, вам знаком и термин TCP/IP stack fingerprinting, которым обозначается принцип их работы.

Давайте же окинем широким взглядом с высоты птичьего помета полета наиболее актуальные утилиты, пригодные для определения операционной системы при пентесте и постараемся оценить их особенности и возможности.

Утилиты для определения операционной системы
Опытные пентестеры, хакеры и считающие себя таковыми могут смело пропустить пару молочных коктейлей и этот раздел, для остальных же проведем небольшой теоретический экскурс. Очевидно, что на начальном этапе разведки удаленная система представляется для нас «черным ящиком», и в лучшем случае мы знаем только IP-адрес.

Как минимум необходимо выяснить, какие на исследуемом хосте открыты порты, под управлением какой операционной системы он работает, какой софт там установлен и способен взаимодействовать с сетью. А уже затем, собрав необходимую информацию, можно искать уязвимости и думать, как обратить их во благо человечества.

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

Определить, какая операционная система работает на хосте, можно пассивными и активными методами.

В первом случае обычно применяется сниффинг с помощью инструментов вроде Wireshark и последующий анализ трафика.
Во втором случае используется принцип паттернов: каждая ОС имеет характерный набор открытых портов, на которые можно постучаться и оценить их доступность. А потом, глядя на эту живописную картину, сделать соответствующие выводы.
И в том и в другом случае мы исследуем подобие отпечатков пальцев операционной системы, поэтому совокупность методов так и принято называть — fingerprinting.

Как правило, все методы пассивного анализа трафика сводятся к изучению стека TCP/IP на удаленной машине. Заголовки пакетов содержат поля, значения которых характерны для строго определенных ОС. Например, время жизни пакета TTL (Time To Live), равное 64, чаще всего встречается в Linux и FreeBSD. Если в заголовке не установлен флаг фрагментации (DF, Don’t Fragment), это намекает, что мы имеем дело с OpenBSD.

Другими косвенными признаками служат размер окна (window size), значение максимального размера сегмента (maximum segment size, MSS), window scaling value, состояние флага sackOK. Методом исключения мы можем вычислить ОС, которая крутится на интересующем нас хосте. А облегчат это дело утилиты, о которых и пойдет речь.

Nmap
Сайт: nmap.org
Платформа: GNU/Linux, macOS, Windows (x86)
Это очень популярный кросс-платформенный инструмент с богатой историей и широким арсеналом функциональных возможностей. Он умеет многое и помимо фингерпринтинга, но нас интересуют в первую очередь его «разведывательные возможности».

Актуальная версия Nmap 7.80 обладает интуитивно понятным графическим интерфейсом, но для олдфагов предусмотрен режим работы из командной строки. В этом случае можно использовать команду nmap -O -PN , где URL — адрес исследуемого сайт...дете в итоге использовать в деле — решать вам
 
Назад
Сверху