Файл: Обзор методов и средств анализа сетевого трафика и поиска аномалий трафика.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.04.2023

Просмотров: 380

Скачиваний: 14

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Рассматриваемый протокол чаще всего применяется в тех случаях, когда инфраструктура предполагает осуществление контроля девайсов, которые подключены к сети, на предмет выполнения условий, заданных администратором. Он позволяет сетевым администраторам руководить производительностью сети, находить и устранять сетевые проблемы, планировать рост сети. Он собирает статистику по трафику до конечного хоста через пассивные датчики, которые реализуются вместе с маршрутизатором. Существуют три версии (SNMPv1, SNMPv2 и SNMPv3).

SNMP, версия 1 (SNMPv1) — изначальная реализация протокола SNMP. SNMPv1 работает с такими протоколами, как UDP, IP, CLNS, DDP и IPX. SNMPv1 широко используется и де-факто является протоколом сетевого управления в Интернет-сообществе.

Версию 1 критиковали за низкую безопасность. Аутентификация клиентов производилась только с помощью т. н. «общей строки» (community string), по сути пароля, которая передавалась в открытом виде. Разработка SNMPv1 80-х годов проводилась группой сотрудников, которые рассматривали официально финансируемые работы HEMS/CMIS/CMIP организаций OSI/IETF/NSF как одновременно нереализуемые на вычислительных платформах того времени и потенциально неработоспособные. SNMP был одобрен из убеждения в том, что он является промежуточным протоколом, необходимым для принятия мер по широкомасштабному развертыванию сети Интернет и ее коммерциализации. В тот временной период стандарт аутентификации/безопасности был мечтой и ему препятствовали группы разработки протокола.

SNMPv2 (RFC 1441[1]-RFC 1452[2]) пересматривает Версию 1 и включает в себя улучшения в области производительности, безопасности, конфиденциальности и связях между менеджерами. Протокол ввел GetBulkRequest, альтернативу итерационному применению GetNextRequest для получения большого количества управляющих данных через один запрос. В то же время, новая система безопасности на основе сторон из SNMPv2 так и не получила широкое распространение, так как рассматривалась многими как слишком сложная.

Хотя SNMPv3 не приносит никаких изменений в протокол помимо добавления криптографической защиты, он кажется более отличным за счет новых текстовых соглашений, концепций и терминологии.

SNMPv3 в первую очередь добавляет в SNMP защиту и улучшения в удаленной настройке.

Безопасность была наибольшей слабостью SNMP с самого появления. Аутентификация в SNMP версий 1 и 2 сводилась не более чем к паролю (строке сообщества), который пересылался в открытом виде между менеджером и агентом. Каждое SNMPv3-сообщение содержит параметры безопасности, которые закодированы как строка октетов. Значение этих параметров зависит от используемой модели безопасности.


SNMPv3 предоставляет важные особенности безопасности:

  • Конфиденциальность — шифрование пакетов для предотвращения перехвата несанкционированным источником.
  • Целостность — целостность сообщений, для предотвращения изменения пакета в пути, включая дополнительный механизм защиты от повторной передачи перехваченного пакета.
  • Аутентификация — чтобы убедиться, что сообщение пришло из правильного источника.

На практике реализации SNMP часто поддерживают несколько версий: обычно SNMPv1, SNMPv2c, и SNMPv3.

2.1.2 Удалённый мониторинг (RMON)

RMON (англ. Remote Network MONitoring — дистанционный мониторинг сети) — протокол мониторинга компьютерных сетей, расширение SNMP, разработанное IETF. В основе RMON, как и в основе SNMP, лежит сбор и анализ информации о характере данных, передаваемых по сети. Как и в SNMP, сбор информации осуществляется аппаратно-программными агентами, данные от которых поступают на компьютер, где установлено приложение управления сетью. Отличие RMON от своего предшественника состоит, в первую очередь, в характере собираемой информации: если в SNMP эта информация характеризует только события, происходящие на том устройстве, где установлен агент, то RMON требует, чтобы получаемые данные характеризовали трафик между сетевыми устройствами.

RMON предоставляет администраторам возможности управлять локальными сетями также хорошо, как и удалёнными из одной определённой локации/точки.

2.1.3 NetFlow

NetFlow — сетевой протокол, предназначенный для учёта сетевого трафика, разработанный компанией Cisco Systems. Является фактическим промышленным стандартом и поддерживается не только оборудованием Cisco, но и многими другими устройствами (в частности, Juniper, ZTE и Enterasys). Также существуют свободные реализации для UNIX-подобных систем.[9]

Существует несколько версий протокола, наиболее распространёнными из которых являются версии 5 и 9.

Для сбора информации о трафике по протоколу NetFlow требуются следующие компоненты:

  • Сенсор. Собирает статистику по проходящему через него трафику. Обычно это L3-коммутатор или маршрутизатор, хотя можно использовать и отдельно стоящие сенсоры, получающие данные путём зеркалирования порта коммутатора.
  • Коллектор. Собирает получаемые от сенсора данные и помещает их в хранилище.
  • Анализатор. Анализирует собранные коллектором данные и формирует пригодные для чтения человеком отчёты (часто в виде графиков).


Рисунок 2. Архитектура NetFlow.

NetFlow использует UDP для передачи данных о трафике коллектору. Как правило, коллектор слушает порт 2055, 9555 или 9995.

Сенсор выделяет из проходящего трафика потоки, характеризуемые следующими параметрами:

  • Адрес источника;
  • Адрес назначения;
  • Порт источника для UDP и TCP;
  • Порт назначения для UDP и TCP;
  • Тип и код сообщения для ICMP;
  • Номер протокола IP;
  • Сетевой интерфейс (параметр ifindex SNMP);
  • IP Type of Service.

Потоком считается набор пакетов, проходящих в одном направлении. Когда сенсор определяет, что поток закончился (по изменению параметров пакетов, либо по сбросу TCP-сессии), он отправляет информацию в коллектор. В зависимости от настроек он также может периодически отправлять в коллектор информацию о все еще идущих потоках.

Если используется UDP, то потерянная из-за проблем сетью запись не будет получена коллектором. Коллектор может определить потери пакетов по значениям номера записи, которые по стандарту должны быть возрастающими.

Если сенсором выступает сетевое устройство (маршрутизатор или коммутатор), то для экономии ресурсов NetFlow включают только для тех интерфейсов, на которых хотят собирать статистику.

Для экономии ресурсов процессора также применяется «sampled NetFlow». В этом случае сенсор анализирует не все, а каждый n-ый пакет, где n может быть заданным административно или выбираемым случайным образом. При использовании sampled NetFlow получаемые значения являются не точными, а оценочными.

2.2 Технологии не основанные на маршрутизаторах.

Хотя технологии, не встроенные в маршрутизатор всё же ограничены в своих возможностях, они предлагают значительную гибкость, по сравнению технологиями встроенными в маршрутизаторы. Эти методы разделяются на активные и пассивные.

2.2.1 Активный мониторинг.

Активный мониторинг сообщает проблемы в сети, собирая измерения между двумя конечными точками. Система активного измерения имеет дело с такими метриками, как: полезность, маршрутизаторы/маршруты, задержка пакетов, повтор пакетов, потери пакетов, неустойчивая синхронизация между прибытием, измерение пропускной способности.

2.2.2 Пассивный мониторинг, MRTG, Zabbix

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


MRTG (англ. Multi Router Traffic Grapher) — инструмент для организации сервиса мониторинга и измерения данных с течением времени, является свободным программным обеспечением под лицензией GPL. При помощи MRTG собираются данные от различных источников и затем они отображаются в виде различных графиков, пример которого приведен на рисунке 3.

Рисунок 3. Анализ загрузка канала в MRTG.

Области применения:

  • загруженность канала (входящий, исходящий, максимальный, средний трафик);
  • использование процессора, оперативной памяти, жёсткого диска;
  • наблюдение за температурными показателями аппаратных ресурсов;

Zabbix — свободная система мониторинга и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования, написанная Алексеем Владышевым.

Zabbix-сервер — ядро системы, которое может удалённо проверять сетевые сервисы; является хранилищем, в котором хранятся все конфигурационные, статистические и оперативные данные, и он является тем субъектом в программном обеспечении Zabbix, который оповестит администраторов в случае возникновения проблем с любым контролируемым оборудованием.

Веб-интерфейс — часть Zabbix-сервера, и, как правило (но не обязательно), запускается на том же физическом узле, что и Zabbix-сервер. Работает на PHP, требует веб-сервер (например, Apache httpd) (Рисунок 4).

Рисунок 4. Веб-интерфейс Zabbix.

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

  • Распределённый мониторинг вплоть до тысяч узлов, конфигурация младших узлов полностью контролируется старшими узлами, находящимися на более высоком уровне иерархии.
  • Сценарии на основе мониторинга
  • Автоматическое обнаружение
  • Централизованный мониторинг журналов
  • Веб-интерфейс для администрирования и настройки
  • Отчётность и тенденции
  • SLA-мониторинг
  • Поддержка высокопроизводительных агентов (zabbix-agent) практически для всех платформ
  • Комплексная реакция на события
  • Поддержка SNMP v1, 2, 3
  • Поддержка SNMP-ловушек
  • Поддержка IPMI
  • Поддержка мониторинга JMX-приложений
  • Поддержка выполнения запросов в различные базы данных без необходимости использования сценарной обвязки
  • Расширение за счёт выполнения внешних скриптов
  • Гибкая система шаблонов и групп
  • Возможность создавать карты сетей


Глава 3. Обзор инструментов анализа сетевого трафика

3.1 Анализаторы трафика.

Анализаторы трафика, или снифферы, изначально были разработаны для решения сетевых проблем. C помощью их можно перехватывать, анализировать и сохранять для последующего изучения пакеты, передаваемые по сети. Всё это, это позволяет системным администраторам наблюдать за передачей данных по сети, диагностировать и устранять появляющиеся проблемы. В этом качестве снифферы представляют собой мощный инструмент диагностики сетевых проблем. С другой стороны, подобно многим мощным инструментам, изначально предназначавшимся для администрирования, с течением времени снифферы стали использоваться совершенно для других целей. Поскольку, сниффер в руках злоумышленника представляет достаточно опасное средство, могущее использоваться для перехвата паролей и другой конфиденциальной информацией.

В начале 90-х годов широко использовался взломщиками, с целью захвата пользовательских логинов и паролей, которые в ряде сетевых протоколов передавались в незашифрованном или с использованием не криптостойких алгоритмов. Широкое использование хабов позволяло перехватывать трафик без больших затрат в больших сегментах сети и практически без риска быть обнаруженным.

Сниффер может анализировать только ту информацию, что проходит через прослушиваемую им сетевую карту. Внутри одного сегмента сети Ethernet все пакеты рассылаются для всех машин, это дает возможность перехватывать чужую информацию. Использование коммутаторов и их правильная конфигурация уже может являться одним из этапов защиты от прослушивания.[5]

Между сегментами информация передаётся через коммутаторы. Коммутация пакетов - форма передачи, при которой данные, разбитые на отдельные пакеты, могут пересылаться из исходного пункта в пункт назначения разными маршрутами. Так что если кто-то в другом сегменте посылает внутри него какие-либо пакеты, то в ваш сегмент коммутатор эти данные не отправит.

Поэтому если сеть построена на основе коммутатора, то сниффер, установленный на одном из компьютеров сети, может перехватывать только те пакеты, которыми обменивается его компьютер с другими узлами сети.

Перехват трафика можно осуществлять:

  • «прослушиванием» сетевого интерфейса, данный метод будет эффективен при использовании в сегменте концентраторов вместо коммутаторов, иначе метод малоэффективен, поскольку на сниффер попадают лишь широковещательные фреймы;
  • подключением сниффера в разрыв канала;
  • ответвлением трафика с помощью программных или аппаратных средств и направлением его копии на сниффер (Network tap);
  • посредством атаки на канальном (2) (MAC-spoofing) или сетевом (3) уровне (IP-spoofing), приводящую к перенаправлению трафика жертвы или всего трафика сегмента Ethernet на сниффер с последующим возвращением трафика в надлежащий адрес.