Zeek
Zeek — свободное программное обеспечение с открытым исходным кодом для сетевого анализа. Верн Паксон начал разработку Zeek в 1995 году в Лаборатории им. Лоуренса в Беркли. Zeek используется как монитор безопасности сети (NSM), а также для задач обнаружения сетевых вторжений (NIDS). Проект Zeek распространяется под лицензией BSD.
Общие сведения
| Zeek | |||
|---|---|---|---|
| Тип | Система обнаружения вторжений в сети | ||
| Автор | Верн Паксон | ||
| Написана на | C++ | ||
| Операционные системы | Linux, FreeBSD, macOS | ||
| Последняя версия | 8.1.1 (29 января 2026) | ||
| Репозиторий | github.com/zeek/zeek | ||
| |||
| |||
| Лицензия | BSD | ||
| Сайт | zeek.org | ||
Вывод данных
Пример лога
Далее приведён пример записи (в формате JSON) из файла conn.log[3]:
{
"ts": 1554410064.698965,
"uid": "CMreaf3tGGK2whbqhh",
"id.orig_h": "192.168.144.130",
"id.orig_p": 64277,
"id.resp_h": "192.168.144.2",
"id.resp_p": 53,
"proto": "udp",
"service": "dns",
"duration": 0.320463,
"orig_bytes": 94,
"resp_bytes": 316,
"conn_state": "SF",
"missed_bytes": 0,
"history": "Dd",
"orig_pkts": 2,
"orig_ip_bytes": 150,
"resp_pkts": 2,
"resp_ip_bytes": 372,
"tunnel_parents": []
}
Threat hunting
Одно из основных назначений Zeek — использоваться при охоте за киберугрозами (threat hunting)[4].
Название
Первоначально автор программы, Верн Паксон, дал системе название «Bro» — как предупреждение, отсылающее к роману Джорджа Оруэлла «1984» и образу Большого Брата. В 2018 году команда проекта решила переименовать программу. В 1990-х годах в Лаборатории Лоуренса в Беркли разработчики запускали свои датчики от имени псевдопользователя «zeek», что и послужило вдохновением для переименования в 2018 году[5].
Развёртывание Zeek
Администраторы безопасности определяют точки в сети, где им требуется мониторинг трафика. В этих местах разворачиваются сетевые TAP-адаптеры или включаются зеркалирующие порты коммутаторов (SPAN) для доступа к трафику. Zeek устанавливают на серверы, имеющие доступ к этим точкам[6]. Программное обеспечение Zeek на сервере интерпретирует сетевой трафик в виде журналов, которые можно сохранять на локальном диске или в удалённом хранилище[7].
Архитектура и анализаторы Zeek
Событийный движок Zeek анализирует сетевой трафик в реальном времени или в записи, формируя нейтральные журналы событий. Zeek использует как типовые порты, так и динамическое определение протокола (анализ сигнатур и поведения) для идентификации протоколов сети[8].
Политики Zeek реализуются на собственном языке сценариев, обладающем полной Тьюринг-полнотой. По умолчанию Zeek записывает сведения о событиях в файлы, но по мере необходимости может быть сконфигурирован для дополнительных действий: отправки сообщений, создания оповещений, выполнения системных команд, обновления метрик или вызова других Zeek-скриптов.
Анализаторы Zeek выполняют декодирование прикладного уровня, обнаружение аномалий, сопоставление сигнатур и анализ соединений[9]. Архитектура Zeek проектировалась с учётом возможности гибкого добавления новых анализаторов. Современный способ реализации новых протокольных анализаторов основан на фреймворке Spicy[10].
Примечания
Ссылки
- https://zeek.org — Официальный сайт Zeek Network Security Monitor
- Bro: A System for Detecting Network Intruders in Real-Time — Верн Паксон
- Zeek Nedir? Nasıl Kurulur? — KernelBlog Emre Yılmaz (на турецком)