Если нужно провести пентест или обнаружить вредоносную активность в сети — обсуждаем проект p0f

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Говорим о компактной утилите для сбора цифровых отпечатков. Её применяют для оценки безопасности ИТ-инфраструктуры. Обсудим возможности и альтернативы.

/ Unsplash.com / Lujia Zhang
/ Unsplash.com / Lujia Zhang

Знай свое окружение

За последний год выросло число атак на критическую инфраструктуру и сети компаний — по некоторым оценкам, на целых 32%. В то же время специалисты по ИБ предупреждают, что под угрозой взлома находятся 93% корпоративных сетей. В таком контексте бизнес все чаще проводит оценку безопасности систем — так называемые пентесты.

Важная часть тестирования на проникновение — сбор данных о сети и инфраструктуре и операционных системах. Составить цифровой отпечаток (провести фингерпринтинг) можно несколькими способами — например, FIN-сканирование или исследование TCP-пакетов. Но большинство техник сводится к анализу подключения TCP/IP. 

Такой анализ как раз позволяет провести утилита p0f. Она определит тип ОС на хостах в сети, покажет наличие балансировщика нагрузки, прокси или NAT, а также зафиксирует серверы, которые подделывают заголовки вроде User-Agent и X-Mailer. Но её главная особенность — она действует в пассивном режиме и не генерирует дополнительный трафик.

Как это работает

Для анализа подключений p0f использует кастомные метрики. Среди них — данные заголовков IPv4 и IPv6, TCP-заголовки, особенности механизмов рукопожатия, содержимое нагрузок на уровне приложений.

Также для стека TCP/IP инструмент изучает отпечаток SYN-пакета со стороны клиента и ответы SYN+ACK от сервера. В этом случае учитывают такие факторы, как последовательность опций TCP, соотношение между размером сегмента и окна, а также десяток других особенностей подключения (в т. ч. нулевые и ненулевые значения).

Чтобы точно идентифицировать операционную систему, p0f сравнивает полученный цифровой отпечаток с данными во встроенной базе сигнатур. Она представляет собой обыкновенный текстовый файл p0f.fp.

/ Unsplash.com / Marl Clevenger
/ Unsplash.com / Marl Clevenger

Сама по себе утилита достаточно старая, но её используют несколько проектов — например, дистрибутив для создания межсетевого экрана pfsense, анализатор портов fwknop, файрвол OpenBSD и даже коммерческие инструменты.

По отзывам, p0f может работать в условиях современной криптографии. Однако возраст все же сказывается — один из резидентов Hacker News говорит, что в работе утилиты встречаются ошибки. В целом это ожидаемо, так как её авторы прекратили поддержку. Хотя есть относительно свежая реализация p0f на Python — scapy-p0f. Что касается оригинала, то последнюю версию можно загрузить на официальном сайте.

Альтернативы

Задачи p0f может выполнять другая известная утилита nmap. Однако это инструмент активного фингерпринтинга, то есть он сам сканирует объекты в сети (порты и соответствующие им службы). Методы разнообразные — UDP, TCP, FTP-proxy, FIN, ACK, NULL-сканирование и другие.

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

О чем еще мы пишем в блоге VAS Experts:

  • Нужен ли NAT в мире IPv6

  • Гибридное шифрование с открытым ключом — теперь в формате RFC

  • Зачем заменять MikroTik на программный BRAS?

Источник: https://habr.com/ru/company/vasexperts/blog/689850/


Интересные статьи

Интересные статьи

Портфель решений VMWare Tanzu для работы с платформой Kubernetes упрощает задачи многооблачного развёртывания за счёт централизации управления кластерами и командами в корпоративной инфраструктуре, ...
Иногда команда разработки сталкивается с задачей, в которой у неё мало экспертного опыта, и через пробы и ошибки она находит неочевидное решение. Так произошло и&...
Когда-то нам пришлось полностью переработать защиту популярного PvP-шутера. Результатом стал ряд инструментов, которые мы готовили и зарелизили одновременно, чтобы не дат...
Часть 1 ‣ Часть2 ‣ Часть 3 ‣ Часть 4 ‣ Часть 5 ‣ Часть 6 Пропускная способность сети Starlink В первой заявке, поданной SpaceX в FCC (Федеральная Комиссия по связи), указывалось, чт...
Привет всем! Сегодня я начну серию статей-лекций посвященных теме проектирования беспилотных летательных аппаратов космического назначения (ракет) =). Да-да, — вы не ослышались, самых настоящих р...