Компания AOL релиз системы для захвата, хранения и индексации сетевых пакетов , предоставляющая инструменты для наглядной оценки потоков трафика и поиска связанной с сетевой активностью информации. Код написан на языке Си (интерфейс на Node.js/JavaScript) и под лицензией Apache 2.0. Поддерживается работа в Linux и FreeBSD. Готовые подготовлены для разных версий CentOS и Ubuntu.
Проект был создан в 2012 году с целью создания открытой замены коммерческой платформы обработки сетевых пакетов, способной масштабироваться до уровня объёмов трафика AOL. Внедрение новой системы в AOL позволило добиться полного контроля за инфраструктурой за счёт развёртывания на своих серверах и значительно снизить издержки — применение Moloch для полного захвата трафика во всех сетях AOL по затратам обошлось в сумму, аналогичную той, что при применении раньше тратилась на захват трафика только в одной сети. Система может масштабироваться для обработки трафика на скоростях в десятки гигабит в секунду. Объём хранимых данных ограничивается только размером имеющегося дискового массива.
Метаданные о сеансах индексируются в кластере на базе движка .
Moloch включает инструменты для захвата и индексации трафика в штатном формате PCAP, а также для быстрого доступа к проиндексированным данным. Для анализа накопленной информации предлагается web-интерфейс, позволяющий выполнять навигацию, поиск и экспорт выборок. Также предоставляется , позволяющий передавать в сторонние приложения данные о захваченных пакетах в формате PCAP и разобранных сеансах в формате JSON. Применение формата PCAP существенно упрощает интеграцию с существующими анализаторами трафика, такими как Wireshark.
Moloch состоит из трёх базовых компонентов:
- Traffic capture system — a multithreaded application written in C for monitoring traffic, recording PCAP dumps to disk, parsing captured packets, and sending metadata about sessions (SPI, Stateful Packet Inspection) and protocols to an Elasticsearch cluster. It is possible to store PCAP files in encrypted form.
- Web-интерфейс на базе платформы Node.js, который запускается на каждом сервере захвата трафика и обрабатывает запросы, связанные с доступом к проиндексированным данным и передачей PCAP-файлов через .
- Metadata storage based on Elasticsearch.
В web-интерфейсе предусмотрено несколько режимов просмотра — от общей статистики, карты соединений и наглядных графиков с данными об изменении сетевой активности до инструментов для изучения отдельных сеансов, анализа активности в разрезе используемых протоколов и разбора данных из PCAP-дампов.
V :
- Осуществлён переход на использование бестипового формата для индексации в Elasticsearch.
- Добавлены примеры фильтров захвата трафика на языке Lua.
- Реализована поддержка 46-черновой редакции протокола QUIC.
- Переработан код для разбора протоколов, появилась возможность написания парсеров для протоколов уровня Ethernet и IP.
- Предложены новые парсеры для протоколов arp, bgp, igmp, isis, lldp, ospf и pim, а также парсеры неизвестных протоколов unkEthernet и unkIpProtocol.
- Добавлена опция для выборочного отключения парсеров (disableParsers).
- В web-интерфейс добавлена возможность показа любого целочисленного поля на графиках, выставленного на странице с настройками.
- Графики и заголовки теперь могут закрепляться и не смещаться при прокрутке страницы.
- Большая часть навигационных панелей по умолчанию скрыта или свёрнута.
Allikas: opennet.ru
