- Исследование сетевого трафика
- Инструментарий и методика исследования
- Примеры разбора трафика
- Читать ещё:
- Все методы и способы анализа локальной сети: сканирование скорости, IP-адресов и трафика
- Что такое анализ локальной сети
- Как провести сканирование скорости
- С помощью «Командной строки»
- С помощью сторонних программ
- Как посмотреть список IP-адресов, подключённых к ЛС
- Программы, помогающие провести анализ трафика
- Wireshark
- Видео: обзор программы Wireshark
- Kismet
- NetworkMiner
Исследование сетевого трафика
Специально для будущих студентов курса «Network engineer. Basic» наш эксперт — Александр Колесников подготовил интересный авторский материал.
Также приглашаем принять участие в открытом онлайн-уроке на тему «STP. Что? Зачем? Почему?». Участники урока вместе с экспертом рассмотрят протокол STP, разберут логику его работы, разберут его преимущества и недостатки.
Статья расскажет, как можно работать с сетевым трафиком. На примере нескольких дампов сетевого трафика будет разобрана работа нескольких полезных инструментов, показаны подходы к извлечению и сборке информации из трафика.
Инструментарий и методика исследования
Для разбора трафиков будем использовать следующее программное обеспечение:
Все инструменты не нуждаются в особенно развернутом представлении, так как являются единственными в своем роде бесплатными решениями для работы с трафиком. Первые два tshark и wireshark вообще предоставляются в составе одного и того же решения. Оба инструмента позволяют выполнять запись и разбор трафика с точки зрения статистики, передаваемых данных и структурах протокола.
Попробуем использовать эти инструменты на записанных сетевых трафиках. Все трафики взяты из различных ресурсов и собраны вот здесь, поэтому читатель при желании может самостоятельно провести их анализ по инструкциям из статьи.
Disclamer: Все файлы трафиков взяты из различных соревнований CTF, все права на задания принадлежат их авторам.
Для исследования трафиков будем придерживаться минимальной стратегии:
- Определить количество участников сети;
- Определить стек используемых протоколов;
- На основании пункта 2 принять решение искать данные по убыванию популярности использования трафика;
- Если выясняется, что данные, которые передаются в трафике, не были обработаны дополнительным кодированием, то применять фильтр по тексту.
Примеры разбора трафика
Первое задание для разбора:
1.pcap(9cd84b46fee506dae818ecdca76607d1) . Задача — найти данные, которые будут содержать информацию вида FLAG-. . Приступим к разбору. Пройдемся по методике, которую описали в прошлом пункте:
Количество участников в сети очень просто определить при помощи WireShark (Всё, что описано для этого инструмента, можно повторить и на tshark . Автор использует WireShark для наглядности). В опциях WireShrak выбираем «Statistics->Endpoints»:
Итого у нас 8 уникальных IP адресов, которые участвовали во взаимодействии. Определим стек протоколов. Сделать это можно в том же самом меню «Statistics->Protocol Hierarchy»:
Итак, самый популярный протокол взаимодействия — http. Этот протокол внутри файла pcap хранится в текстовом представлении поэтому можно попробовать показать все данные из body пересылаемых данных и отфильтровать данные по формату искомой строки. Попробуем это сделать с помощью tshark . Команда для фильтра будет выглядеть так:
tshark -r ./1.pcap -Y http -Tfields -e http.file_data | grep "FLAG"
В результате получаем результат:
Второй файл для исследования — 2.pcap (9a67e1fb9e529b7acfc6e91db6e1b092) . Проведем этапы исследования. Количество участников взаимодействия:
В этом случае участников 13 — задание усложняется. Какие протоколы используются:
К сожалению, в этот раз всё не так просто с используемыми протоколами для передачи данных. Среди информации пересылаемой через tcp протокол ничего интересного для нашего задания не встретилось. В udp же попалось кое-что интересное:
Однако, если обратить внимание на резолв локальных адресов через dns, то мы можем обнаружить вот такую картину:
Странная часть ip адреса, которая очень похожа на какие-то кодированные шестнадцатеричные символы. Попробуем их провести через кодировку:
tshark -r ./2.pcap -Y '!icmp.code && dns.qry.name contains 192.168' -Tfields -e dns.qry.name | tr '.' ' ' |awk '' |xxd -r
Полученная строка очень похожа на base64 кодировку, раскодируем:
В качестве целевого сетевого трафика будем использовать 3.pcap(0e66830db52ad51971d40c77fa5b02c0) . Проанализируем количество участников взаимодействия и статистику используемых протоколов:
Похоже, что в этот раз протоколов меньше, но вариантов куда спрятать данные — больше. Попробуем отфильтровать данные по протоколу http.
Самые интересные строки находятся в конце записанного трафика, это запросы http к файлам «flag.zip» и «secret.txt». Сдампим их через Wireshark и попробуем открыть:
Попробуем сдампить файл, который называется flag.zip через WireShark. Стандартным интерфейсом это сделать не получится, поэтому придется сделать небольшой хак — сохранить данные в Raw формате:
Открываем с уже найденным паролем:
Похоже, что файл поврежден в нем нет части, которая содержит необходимую нам информацию. Спустя время, если отфильтровать по потокам, которые есть в tcp, можно натолкнуться на части фрагменты архивов:
Сохраним дамп этого потока и вырежем с помощью простой программы фрагмент архива:
python data = [] with open('dump') as f: data = f.read() with open('tesst.zip','w') as w: w.write(data[1010788:])
Похоже, что часть данных недоступна, но мы смогли восстановить файл flag.txt
Описанная методика может позволить извлекать информацию из записанных сетевых данных. В качестве закрепления материала, предлагаем читателю найти данные в трафике 4.pcap(604bbac867a6e197972230019fb34b2e) .
Читать ещё:
- Сокеты в ОС Linux
Все методы и способы анализа локальной сети: сканирование скорости, IP-адресов и трафика
Отлаженная домашняя или корпоративная сеть может начать сбоить: проблемы с передачей файлов, общие тормоза сети, конфликтность адресов и т. д. В таких случаях необходимы программный анализ и исправление неполадок. Но сначала необходимо провести сканирование локальной сети, состоящее из нескольких этапов.
Что такое анализ локальной сети
Комплекс мер по изучению параметров соединения между компьютерами в домашней или корпоративной сети называется анализом локальной сети (АЛС). Процесс включает в себя:
- измерение скорости сети;
- просмотр IP-адресов подключённых устройств;
- анализ трафика сети — процесс, который позволяет выявить конфликтную машину или неисправность паутины в определённом узле.
Эта процедура может обнаружить вредоносное программное обеспечение и изолировать его распространение на всю сеть. Поэтому АЛС стоит проводить даже в профилактических целях.
Как провести сканирование скорости
Первый параметр, который стоит просмотреть на предмет ошибок, — это скорость передачи данных. Если при обмене пакетами информации в ЛС происходят сбои, замедления потери команд, то налицо нарушение протоколов или конфликт адресов. В таких случаях стоит начинать искать неполадку. Просмотреть информацию о скорости передачи данных можно через «Командную строку» или стороннее ПО.
С помощью «Командной строки»
Терминал «Командной строки» — уникальный инструмент для управления компьютером и вывода необходимой информации пользователю. Консоль также может помочь с АЛС, в частности вывести отчёт о скорости доступа в ЛС:
- Чтобы запустить «Командную строку», открываем меню «Пуск», переходим в папку «Служебные» и кликаем по иконке «Командная строка».
Через меню «Пуск» открываем консоль «Командной строки»
Прописываем команду ipconfig /all и находим основной шлюз компьютера
Через команду Ping основного шлюза узнаём скорость обмена данных с роутером
Если максимальное значение будет больше 1500 мсек даже в беспроводной сети, имеет смысл провести анализ трафика, а также проверить каждый компьютер на наличие вредоносного ПО антивирусными программами.
С помощью сторонних программ
Не только с помощью «Командной строки» можно узнать скорость внутри ЛС. Существуют дополнительные инструменты в виде сторонних программ. По интернету их гуляет огромное количество и большинство схожи между собой как по интерфейсу, так и по выводимым данным. Одной из таких утилит является LAN Speed Test. Утилита на должном уровне справляется с анализом скорости, имеет простой и понятный интерфейс.
- Скачиваем, устанавливаем и запускаем программу.
- На главной странице приложения нажимаем кнопку Start Test.
В интерфейсе программы LAN Speed Test нажимаем кнопку Start Test
Данные о скорости в сети выводятся в виде таблицы
Также для анализа можно использовать другие утилиты, к примеру, Iperf или LAN Bench.
Первая весьма полезная для домашней и небольшой корпоративной сети. Приложение можно установить на все машины и следить за пингом. Оно весьма полезно, так как может производить мониторинг и вести записи продолжительное время.
Iperf — это программа для слежки за пингом и выявления небольших неполадок в ЛС
LAN Bench — это минималистическая утилита, похожая на LAN Speed Test. Ею очень легко мониторить скорость и пинг в сети, достаточно открыть интерфейс и нажать кнопку Test. Ниже сразу начнут появляться результаты.
LAN Bench — это простейшая утилита для оценки скорости ЛС
Как посмотреть список IP-адресов, подключённых к ЛС
Иногда возникает необходимость узнать информацию о подключённых к сети устройствах. В основном это касается беспроводных маршрутизаторов, к которым можно подключиться незаметно и «воровать» трафик. Посмотреть список устройств можно сторонними ПО и штатными средствами (веб-админкой маршрутизатора).
С первым всё довольно просто: существует простейшая утилита под названием Wireless Network Watcher. Она, как IP-сканер локальной сети, прекрасно справляется с анализом адресатов сети и выводит на экран всю доступную информацию о них.
Через программу Wireless Network Watcher можно увидеть список всех подключённых к сети устройств
Однако у программы есть два минуса:
- для её работы необходимо проводное подключение к роутеру;
- инструментарий программы ограничивается только выводом информации. Если нарушитель будет обнаружен, она ничего не сможет с ним сделать. То же касается и аналогичных программ. Заблокировать доступ к сети можно только внутри веб-админки роутера.
Для просмотра информации о подключённых устройствах через веб-админку маршрутизатора необходимо сначала её открыть:
- На тыльной стороне устройства знакомимся с реквизитами для входа.
На тыльной стороне роутера знакомимся с реквизитами для входа
Через браузер открываем панель управления маршрутизатором
Находим пункт «Статистика беспроводного режима» и знакомимся со всеми подключёнными устройствами
Программы, помогающие провести анализ трафика
Анализ трафика — это сложный процесс, который должен быть известен любому профессионалу в IT-индустрии, сисадмину и другим специалистам в области. Процедура оценки передачи пакетов больше похожа на искусство, чем на элемент технического управления. Одних данных от специальных программ и инструментов тут недостаточно, необходима ещё интуиция и опыт человека. Утилиты в этом вопросе лишь инструмент, что показывает данные, остальное должен делать уже ваш мозг.
Wireshark
Wireshark — это новый игрок на рынке сетевого анализа трафика. Программа имеет довольно простой интерфейс, понятное диалоговое окно с выводом данных, а также множество параметров для настройки. Кроме того, приложение охватывает полный спектр данных сетевого трафика, потому является унитарным инструментом для анализа без необходимости добавлять в функционал программы лишние утилиты.
Wireshark имеет открытый код и распространяется бесплатно, поэтому захватывает аудиторию в геометрической прогрессии.
Возможно, приложению не хватает визуализации в плане диаграмм и таблиц, но минусом это назвать сложно, так как можно не отвлекаться на просмотр картинок и напрямую знакомиться с важными данными.
Wireshark — это программа с открытым кодом для анализа трафика ЛС
Видео: обзор программы Wireshark
Kismet
Kismet — это отличный инструмент для поиска и отладки проблем в ЛС. Его специфика заключается в том, что программа может работать даже с беспроводными сетями, анализировать их, искать устройства, которые настроены неправильно, и многое другое.
Программа также распространяется бесплатно и имеет открытый код, но сложный в понимании интерфейс немного отталкивает новичков в области анализа трафика. Однако подобный инструмент всё больше становится актуальным из-за постепенного отказа от проводных соединений. Поэтому чем раньше начнёшь осваивать Kismet, тем скорее получишь от этого пользу.
Kismet — это специальный инструмент для анализа трафика с возможностью вывода информации о беспроводной сети
NetworkMiner
NetworkMiner — это продвинутое программное решение для поиска проблем в сети через анализ трафика. В отличие от других приложений, NetworkMiner анализирует не сам трафик, а адреса, с которых были отправлены пакеты данных. Поэтому и упрощается процедура поиска проблемного узла. Инструмент нужен не столько для общей диагностики, сколько для устранения конфликтных ситуаций.
Программа разработана только для Windows, что является небольшим минусом. Интерфейс также желает лучшего в плане восприятия данных.
NetworkMiner — это инструмент для Windows, который помогает находить конфликты и неточности в ЛС
Провести полный анализ сети можно как штатными, так и сторонними способами. А полученные данные помогут исправить возможные неполадки, недочёты и конфликты.