Проект ntop, развивающий инструменты для захвата и анализа трафика, опубликовал инструментарий для глубокого инспектирования пакетов nDPI 5.0, продолжающий развитие библиотеки OpenDPI. Проект nDPI основан после безуспешной попытки передачи изменений в репозиторий OpenDPI, который остался без сопровождения. Код nDPI написан на языке Си и распространяется под лицензией LGPLv3.
Система позволяет определять в трафике используемые протоколы уровня приложений, анализируя характер сетевой активности без привязки к сетевым портам (может определять известные протоколы, обработчики которых принимают соединения на нестандартных сетевых портах, например, если http отдаётся не с 80 порта, или, наоборот, когда какую-то другую сетевую активность пытаются закамуфлировать под http через запуск на 80 порту).
Отличия от OpenDPI сводятся к поддержке дополнительных протоколов, портированию для платформы Windows, оптимизации производительности, адаптации для применения в приложениях для мониторинга трафика в режиме реального времени (убраны некоторые специфичные возможности, замедлявшие движок), возможности сборки в форме модуля ядра Linux и поддержке определения субпротоколов.
Поддерживается определение 56 типов сетевых угроз (flow risk) и более 450 протоколов и приложений (от OpenVPN, Tor, QUIC, SOCKS, BitTorrent и IPsec до Telegram, Viber, WhatsApp, PostgreSQL и обращений к Gmail, Office 365, Google Docs и YouTube). Имеется декодировщик серверных и клиентских SSL-сертификатов, позволяющий определить протокол (например, Citrix Online и Apple iCloud), используя сертификат шифрования. Для анализа содержимого pcap-дампов или текущего трафика через сетевой интерфейс поставляется утилита nDPIreader.
- Реализован универсальный механизм для идентификации трафика, комбинирующий в одном маркере трафика (fingerprint) метаданные о слепках TCP, хэшах TLS-сертификата и JA4 (идентификаторы для определения сетевых протоколов и приложений). Новый механизм позволяет более точно определять и сопоставлять шифрованный или обфусцированный трафик.
- Добавлена возможность определения потоков TLS, QUIC и HTTP, в которых фигурируют имена хостов (например, в SNI для TLS/QUIC и в заголовке Host для HTTP), для которых ранее не выполнялся резолвинг через DNS. Подобная активность может применяться для выявления аномалий, скрытых каналов передачи данных и методов обхода фильтрации.
- До 2^16 поднято ограничение на число определяемых протоколов и категорий трафика, что позволяет выявлять практически неограниченное число протоколов при инспектировании трафика. Все доступные протоколы теперь включены по умолчанию.
- В правила добавлены новые опции для классификации трафика по слепкам (fingerprint), JA4-идентификаторам приложений и протоколов, HTTP URL и категориям.
- Улучшена поддержка технологии FPC (First Packet Classification), нацеленной на определение протоколов, приложений и сервисов по первому пакету, отправляемому при установке соединения. FPC позволяет существенно снизить нагрузку на CPU при инспектировании трафика.
- Удалена поддержка псевдопротоколов, таких как ADULT_CONTENT, LLM и ADS_ANALYTICS_TRACK, вместо которых теперь используется классификация на основе категорий.
- Добавлена поддержка и возможность разбора новых протоколов, среди которых Microsoft Delivery Optimization, Rockstar Games, Kick.com, MELSEC, Hamachi, GLBP, Matter, TriStation, Samsung SDP, ESPN и Akamai.
- Добавлены новые подкатегории и расширена классификация сервисов Amazon/AWS.
- Добавлено около 30 новых категорий и повышена детализация при анализе трафика.
- Добавлен анализатор размера блоков данных для TLS-соединений.
- Добавлена возможность создания стеков протоколов, охватывающих два и более протокола при классификации трафика.
- Добавлены новые API для ранжирования трафика и кодирования/декодирования шестнадцатеричных последовательностей.
- Обновлены списки ботов, сетевых сканеров и пулов майнинга.
- Обновлён код для разбора протоколов HTTP, TLS и STUN.
- Ускорена инициализация и повышена эффективность управления памятью.
Источник: https://www.opennet.ru/opennews/art.shtml?num=64299




