🔍 dns monster: Пассивная система перехвата/мониторинга DNS

Обзоры

DNS Monster

Пассивный сбор и мониторинг DNS, написанный на Golang с Clickhouse и Grafana: dnsmonster реализует пакетный сниффер для DNS-трафика.

Он может принимать трафик из pcap-файла, лайв интерфейса или сокета dnstap, и может использоваться для индексации и хранения тысяч DNS-запросов в секунду (было показано, что он способен индексировать 200k+ DNS-запросов в секунду на обычном компьютере).

Его цель – быть масштабируемым, простым и легким в использовании, и помочь командам безопасности понять детали DNS-трафика предприятия.

dnsmonster не стремится отслеживать DNS-переговоры, его цель – индексировать DNS-пакеты, как только они поступают.

Он также не стремится нарушить конфиденциальность конечных пользователей, имея возможность маскировать IP-адрес источника от 1 до 32 бит, что делает данные потенциально неотслеживаемыми.

ВАЖНОЕ ПРИМЕЧАНИЕ: Код до версии 1.x считается бета-версией и может быть изменен. Пожалуйста, ознакомьтесь с примечаниями к выпуску для каждого тега, чтобы увидеть список сценариев взлома между каждым выпуском, и как уменьшить потенциальную потерю данных

Основные возможности

  • Может использовать афпакет Linux и захват пакетов с нулевой копией.
  • Поддерживает BPF
  • Может выполнять фаззинг исходного IP-адреса для повышения конфиденциальности
  • Может иметь коэффициент выборки перед обработкой
  • Может иметь список “skip” fqdns, чтобы избежать записи некоторых доменов/суффиксов/префиксов в хранилище, тем самым улучшая производительность БД
  • Может иметь список “разрешенных” доменов, чтобы только регистрировать попадания определенных доменов в Clickhouse/Stdout/File.
  • Модульный вывода с различной логикой для каждого потока вывода. В настоящее время stdout/file/clickhouse
  • Горячая загрузка пропускающих и разрешающих файлов доменов
  • Автоматическая политика сохранения данных с использованием атрибута TTL ClickHouse
  • Встроенная приборная панель с использованием Grafana
  • Может поставляться в виде одного статически связанного бинарного файла
  • Возможность конфигурирования с помощью переменных Env, опций командной строки или конфигурационного файла
  • Возможность выборки выходных метрик с помощью функции ClickHouse’s SAMPLE
  • Высокая степень сжатия благодаря встроенному в ClickHouse хранилищу LZ4
  • Поддерживает DNS по TCP, фрагментированный DNS (udp/tcp) и IPv6.
  • Поддержка dnstrap через сокет Unix или TCP

СКАЧАТЬ

 

Добавить комментарий