Кибератаки в подробностях: атаки с применением снифферов
Содержание:
- Как предотвратить атаки сетевых перехватчиков
- Инструменты сетевого анализа трафика
- 8) LiveAction Omnipeek – PAID
- Для чего нужны снифферы?
- Настройка Fiddler
- Rewrite
- 6) Manage Engine Netflow Analyzer – PAID
- 10) Steelcentral Packet Analyzer – PAID
- Фильтрация
- Пример перехвата USB трафика с Wireshark
- Лучшие снифферы пакетов и анализаторы сети
- Packet Sniffer Connections
- Программы-сниферы
- Описание атаки ARP-spoofing
- Как работает сетевой сниффинг
- Что может Intercepter-NG
- Основные настройки
- Quick mode
- Ethernet
Как предотвратить атаки сетевых перехватчиков
Если вы обеспокоены тем, что программное обеспечение для слежения за сетью отслеживает сетевой трафик, исходящий от вашего компьютера, есть способы защитить себя.
Существуют этические причины, по которым кому-то может понадобиться использовать сетевой сниффер, например, когда сетевой администратор отслеживает поток сетевого трафика.
Когда сетевые администраторы обеспокоены злонамеренным использованием этих инструментов в своей сети, они используют анти-снифф-сканирование для защиты от атак сниффера. Это означает, что корпоративные сети обычно безопасны.
Тем не менее, легко получить и использовать сетевой сниффер со злыми намерениями, что делает его незаконное использование в вашем домашнем интернете поводом для беспокойства. Для кого-то может быть легко подключить такое программное обеспечение даже к корпоративной компьютерной сети.
Если вы хотите защитить себя от того, кто шпионит за вашим интернет-трафиком, используйте VPN, который шифрует ваш интернет-трафик.
Инструменты сетевого анализа трафика
Wireshark (ранее известный как Ethereal) широко известен как самый популярный в мире анализатор сети. Это бесплатное приложение с открытым исходным кодом, которое отображает данные трафика с цветовой кодировкой, чтобы указать, какой протокол использовался для его передачи.
В сетях Ethernet его пользовательский интерфейс отображает отдельные кадры в нумерованном списке и выделяется отдельными цветами независимо от того, отправляются ли они по TCP, UDP или другим протоколам.
Wireshark также группирует потоки сообщений, отправляемые туда и обратно между источником и пунктом назначения (которые со временем перемешиваются с трафиком из других соединений).
Wireshark поддерживает перехват трафика через кнопочный интерфейс запуска/остановки. Инструмент также содержит параметры фильтрации, которые ограничивают данные, отображаемые и включаемые в записи. Это критическая функция, поскольку большая часть сетевого трафика содержит обычные управляющие сообщения, которые не представляют интереса.
За эти годы было разработано много различных приложений для зондирования. Вот несколько примеров:
- tcpdump (инструмент командной строки для Linux и других операционных систем на основе Unix)
- CloudShark
- Cain and Abel
- Microsoft Message Analyzer
- CommView
- OmniPeek
- Capsa
- Ettercap
- PRTG
- Free Network Analyzer
- NetworkMiner
- IP Tools
Некоторые из этих инструментов сетевого анализа являются бесплатными, в то время как другие чего-то стоят или имеют бесплатную пробную версию. Кроме того, некоторые из этих программ больше не поддерживаются и не обновляются, но всё ещё доступны для скачивания.
8) LiveAction Omnipeek – PAID
Though not free, this network analyzer offers professionals a powerful and intuitive way to view network congestion, identify problems, and focus on solving Wi-Fi speed issues among others.
Many network tools have a distinct focus on traditional wired networks, but Omnipeek provides a sophisticated way to visualize the data flow within wireless networks as well. This makes it thoroughly up to the job in the modern world, where wireless networks are very common.
Moreover, it helps admins to troubleshoot and monitor Voice and Video traffic, end-user devices, and also decode over 1000 protocols.
The solution offers also an appliance option (LiveCapture) used to distribute the collection and network monitoring at remote sites and branches.
Для чего нужны снифферы?
Сниффер не всегда вредоносен. «Сниффер — общее название оборудования и программного обеспечения. Они могут предназначаться для балансировки трафика, а могут использоваться и злоумышленниками. Есть аппаратные и программные снифферы», — рассказал РБК Трендам эксперт по кибербезопасности «Лаборатории Касперского» Дмитрий Галов.
Есть четыре сферы, в которых люди используют сниффер в благих намерениях:
- Сетевые инженеры: чтобы оптимизировать сеть, они должны следить за трафиком.
- Системные администраторы: им необходимо наблюдать за трафиком, чтобы собирать данные о показателях, вроде пропускной способности сети.
- Специалисты по кибербезопасности: они могут заметить подозрительную активность в Сети, отслеживая ее. Аномальные всплески или различные типы трафика могут указывать на наличие вредоносного программного обеспечения или проникновения хакеров в систему.
- Корпорации. Работодатели могут использовать программное обеспечение для отслеживания своих сотрудников и выяснять, сколько времени в течение рабочего дня они тратят на работу и сколько — на развлечения.
Однако сниффер может быть использован и злоумышленниками для кражи данных. Снифферы анализируют все, что через них проходит, включая незашифрованные пароли и учетные данные. Поэтому хакеры, имеющие к ним доступ, могут завладеть личной информацией пользователей.
Индустрия 4.0
Как защитить свои данные в сети?
В сентябре 2018 года выяснилось, что пользователи сайта и мобильного приложения British Airways подверглись кибератаке. Под угрозой оказались все клиенты международной авиакомпании, осуществившие бронирование авиабилетов на сайте или в приложении в период с 25 августа по 5 сентября 2018 года. В руки злоумышленников попали личные и финансовые данные 380 тыс. человек. Похожая атака была организована на клиентов американского онлайн-магазина Ticketmaster.
В целях обслуживания сети сниффер обеспечивает:
- захват пакетов данных;
- запись и анализ трафика;
- расшифровку пакета;
- устранение неполадок сети;
- тестирование межсетевого экрана;
- обеспечение бесперебойного потока трафика.
Незаконно сниффер используется для:
- сбора личной информации, такой как имена пользователей, пароли, номера кредитных карт и т.д;
- запись сообщений, вроде электронных писем;
- подделки личных данных;
- кражи денег.
Самые популярные модели снифферов:
- WinSniffer — обладает множеством настраиваемых режимов, способен перехватывать пароли различных сервисов;
- CommView — обрабатывает данные, передаваемые по локальной сети и в интернет, собирает сведения, связанные с модемом и сетевой картой, и расшифровывает их, что дает возможность видеть полный список соединений в сети и статистические сведения по IP;
- ZxSniffer — компактный сниффер, известный малым объемом (0,3 МБ);
- SpyNet — популярный анализатор, в основную функциональность которого входят перехват трафика и декодирование пакетов данных;
- IRIS — имеет широкие возможности фильтрации, может перехватывать пакеты с заданными ограничениями.
Настройка Fiddler
В меню File есть опция «Capture Traffic». По умолчанию опция включена. Это означает что Fiddler прописывает в реестре Windows себя в качестве прокси-сервера. Браузеры Internet Explorer, Edge, Chrome используют данную настройку, а значит HTTP-пакеты от этих браузеров пойдут через Fiddler.
Если опция «File -> Capture Traffic» выключена, то Fiddler перестает работать как системный прокси-сервер и перехватывает только те пакеты, которые идут непосредственно на адрес Fiddler. Это может быть когда вы настроили ваше приложение или браузер сами для работы через ip/port Fiddler. По умолчанию Fiddler слушает на порту 127.0.0.1:8888
Опция «Keep: All sessions».В данном режиме Fiddler не очищает журнал собранных HTTP-пакетов. Если требуется продолжительная работа Fiddler, то при большой нагрузке этих пакетов будет очень много и Fiddler скушает всю доступную оперативную память компьютера. Чтобы этого не случилось переключите в режим «Keep: 100 sessions».
Опция «Decode».По умолчанию выключена. В процессе анализа собранных пакетов рекомендуется включить чтобы пакеты автоматически декодировались. Либо можно выделить собранные пакеты через Ctrl+A, вызвать меню нажатием правой кнопки мыши по выделенным пакетам и нажать «Decode Selected Sessions».
Rewrite
Функция Rewrite может быть полезна, если вам нужно переписать данные, которые отправляются в Charles Proxy. В отличие от простого редактирования Rewrite позволяет задать правила изменения и работать в автоматическом режиме. Можно изменять и добавлять заголовки, искать и заменять текст в теле запроса или ответа. Можно даже менять статус ответа.
Rewrite удобно использовать, когда нужен готовый ответ, но мы не хотим каждый раз ставить брейкпоинт и вписывать его в ручную. Редактируя таким образом ответ, фактически, мы ставим заглушку — можем имитировать работу сторонних партнеров. Честно говоря, в Postman-е эта функция реализована более интуитивно. Но раз мы говорим про Charles, не будем отходить от его примера.
Настроить это можно через Rewrite settings, доступные в контекстном меню. Единственный недостаток инструмента в том, что каждое правило замены прописывается отдельно.
Помимо изменения запросов и ответов мы можем запретить кэширование или cookie (функции No caching и Block cookies). Эти опции повторяют аналогичные инструменты панели разработчика в браузере. В обоих случаях настраивается список хостов, для которых действует настройка. Если же список пуст, то кэширование и cookie отключаются на всех перехваченных хостах.
6) Manage Engine Netflow Analyzer – PAID
This real time network analysis tool uses an attractive graphical interface to display traffic data over a network.
It is based on packet flow technologies and supports Cisco’s Netflow, Juniper’s JFlow, sFlow, IPFix, Appflow and Netstream.
Using the above Flow Technologies, this software is ideal for people who want to be able to visualize everything in real time and drill down on the details to identify any potential network issues.
It supports major hardware vendors such as Cisco and HP, and can display data from all supported hardware devices using Flow Technology.
This is an easy way to see where there might be any network problems. Color-coded pie charts and summarized information on a single screen make this a wise choice for professional network administrators.
The Manage Engine tool works as a collector to receive flow traffic from network devices such as routers, switches etc and any other device that can send flow data. This allows it to monitor bandwidth usage, application usage, security monitoring etc.
10) Steelcentral Packet Analyzer – PAID
An attractive and intuitive interface is one of the characteristics of this tool.
This makes it quite easy to diagnose problems and bottlenecks across a network. What makes it even easier to use is the included preset analysis views.
By applying one of these preset views, it’s possible to see a wide range of problems presented in an attractive and humanly readable way.
Steelcentral Packet Analyzer makes it a cinch to diagnose issues on large networks in a business environment. It has been designed from the ground up to collect information and present it in a way that speeds up the job of network administrators.
Фильтрация
В Charles Proxy очень много вариантов фильтрации запросов.
Начнем с вкладки Structure. Самое примитивное — скопировать хост и вставить в поле Filter. Так мы увидим только запросы с этого хоста. Примерно того же результата можно добиться, если в контекстном меню хоста выбрать Focus. Остальные запросы будут собраны в Other Hosts. Если при этом перейти на закладку Sequence и отметить настройку Focused, то в списке окажется информация только о тех запросах, которые были выбраны на вкладке Structure.
На вкладке Sequence есть аналогичный фильтр.
Charles Proxy умеет работать с регулярными выражениями. Для этого на вкладке Sequence выбираем Settings и отмечаем пункт Filter uses regex. И вписываем в поле поиска элементарную регулярку.
Например, вот так
можно выбрать все запросы, в которых в начале имени хоста находится четыре буквы, а потом идет точка.
Там же можно включить Autoscroll списка запросов или указать максимальное количество строк.
В Charles Proxy можно фильтровать не только отображение, но и запись запросов. Для этого надо зайти в Proxy -> Record settings и задать условия на одной из вкладок — Include или Exclude — так мы включаем или выключаем запись запросов данного хоста.
Похожего результата можно добиться, используя блок-листы. Включить хост в блок лист можно из контекстного меню (команда Block list) или через добавление в Tools -> Block list, где следует отметить Enable Block list.
Блокируемый запрос можно прервать двумя способами (подходящий надо выбрать в настройках):
-
сбросить соединение;
-
вернуть ошибку 403.
От выбранного способа блокировки зависит, какой ответ мы получим.
Можно провести эксперимент. Включим наш тестовый стенд в Block list, выбрав простой сброс соединения. С помощью контекстного меню запроса повторим его (команда Repeat) и получим такой ответ:
Статус запроса — Failed, а в описании ошибки указано, что Connection dropped.
Пример перехвата USB трафика с Wireshark
Для перехвата USB траффика можно использовать популярный снифер Wireshark. Для Windows также необходимо установит USBPcap.
Запустить прехват можно выбрав соответствующий режим в wireshark:
Разберем подробней пример дампа:
Этот дамп содержит 2 части:
- Это подключение физического устройства в USB (пакеты 1-9);
- Отправка команд на переключение устройства в другой режим (пакеты 9-16).
Схематично взаимодействие будет выглядеть так:
Как видно из примера взаимодействие с портом USB очень похоже на взаимодействие по сети. Хост всегда отправляет команду, а устройство подтверждает ее получение.
Наибольший интерес вызывают пакеты 9-16, так как видно что это контрольные трансферы (URB_CONTROL) а значит именно с их помощью происходит управление устройствам.
Итак первая команда (пакет 9) отправляет какую-то команду на устройство. Об этом свидетельствует префикс out, так как команды всегда идут от хоста, то перфикс задает напрваление относительно него.
Если посмотреть структуру запроса, то можно понять тип запроса, сам запрос длину тела и сами данные которые отправляются на устройство
В нашем случае не важно что означают эти параметры так как нам нужно просто воспроизвести функциональность стороннего ПО
Следующий код запрашивает состояние устройства:
Затем отправляется еще одна команда с данными (пакет 13) и еще раз читает состояние (пакет 13), после чего можно заметить что девайс переподключился (пакет 17-18).
Лучшие снифферы пакетов и анализаторы сети
Промышленные инструменты
Начнем с вершины и далее спустимся к основам. Если вы имеете дело с сетью уровня предприятия, вам понадобится большая пушка. Хотя в основе почти все использует tcpdump (подробнее об этом позже), инструменты уровня предприятия могут решать определенные сложные проблемы, такие как корреляция трафика со множества серверов, предоставление интеллектуальных запросов для выявления проблем, предупреждение об исключениях и создание хороших графиков, чего всегда требует начальство.
Инструменты уровня предприятия, как правило, заточены на потоковую работу с сетевым трафиком, а не на оценку содержимого пакетов
Под этим я подразумеваю, что основное внимание большинства системных администраторов на предприятии заключается в том, чтобы сеть не имела узких мест в производительности. Когда такие узкие места возникают, цель обычно заключается в том, чтобы определить, вызвана ли проблема сетью или приложением в сети
С другой стороны, эти инструменты обычно могут обрабатывать такой большой трафик, что они могут помочь предсказать момент, когда сегмент сети будет полностью загружен, что является критическим моментом управления пропускной способностью сети.
1. SolarWinds
— это очень большой набор инструментов управления IT. В этой статье более уместна утилита Deep Packet Inspection and Analysis которая является его составной частью. Сбор сетевого трафика довольно прост. С использованием таких инструментов, как WireShark, базовый анализ также не является проблемой. Но не всегда ситуация полностью понятна. В очень загруженной сети может быть трудно определить даже очень простые вещи, например:
— какое приложение в сети создает этот трафик?
— если приложение известно (скажем, веб-браузер), где его пользователи проводят большую часть своего времени?
— какие соединения самые длинные и перегружают сеть?
Большинство сетевых устройств, чтобы убедиться, что пакет идет туда, куда нужно, используют метаданные каждого пакета. Содержимое пакета неизвестно сетевому устройству. Другое дело — глубокая инспекция пакетов; это означает, что проверяется фактическое содержимое пакета. Таким образом можно обнаружить критическую сетевую информацию, которую нельзя почерпнуть из метаданных. Инструменты, подобные тем, которые предоставляются SolarWinds, могут выдавать более значимые данные, чем просто поток трафика.
Другие технологии управления сетями с большим объемом данных включают NetFlow и sFlow. У каждой есть свои сильные и слабые стороны,
вы можете узнать больше о NetFlow и sFlow.
Анализ сетей в целом является передовой темой, которая базируется как на основе полученных знаний, так и на основе практического опыта работы. Можно обучить человека детальным знаниям о сетевых пакетах, но если этот человек не обладает знаниями о самой сети, и не имеет опыта выявления аномалий, он не слишком преуспеет. Инструменты, описанные в этой статье, должны использоваться опытными сетевыми администраторами, которые знают, что они хотят, но не уверены в том, какая утилита лучше. Они также могут использоваться менее опытными системными администраторами, чтобы получить повседневный опыт работы с сетями.
Packet Sniffer Connections
Sub-menu:
Here you can get a list of the connections that have been watched during the sniffing time.
tool sniffer connection> print Flags: A - active # SRC-ADDRESS DST-ADDRESS BYTES RESENDS MSS 0 A 10.0.0.241:1839 10.0.0.181:23 (telnet) 6/42 60/0 0/0 1 A 10.0.0.144:2265 10.0.0.181:22 (ssh) 504/252 504/0 0/0 tool sniffer connection>
Property | Description |
---|---|
active (read-only: yes | no) | Indicates whether connection is active or not |
bytes (read-only: integer/integer) | Bytes in the current connection |
dst-address (read-only: IP address:port) | Destination address |
mss (read-only: integer/integer) | Maximum segment size |
resends (read-only: integer/integer) | The number of packets resends in the current connection |
src-address (read-only: IP address:port) | Source address |
Программы-сниферы
Вот список наиболее популярных таких программ:
CommView. Программа платная, как и все остальных в нашем списке. Одна минимальная лицензия стоит 300 долларов. Зато функционал у ПО богатейший. Первое, что стоит отметить, так это возможность самостоятельной установки правил отслеживания чужого трафика. К примеру, можно сделать так, чтобы ICMP или TCP (это протоколы) полностью игнорировались. Примечательно также, что программа позволяет просматривать детали и лог всех пересылаемых пакетов. Существует обычная версия и версия для Wi-Fi.
Рис. 4. CommView
SpyNet. Это, фактически, троян, от которых мы все так устали. Но он может использоваться и в благородных целях, о которых мы говорили выше. Программа выполняет перехват и расшифровку пакетов, которые есть в трафике. Есть множество необычных функций. К примеру, можно воссоздавать страницы в интернете, на которых побывала «жертва». Примечательно, что это ПО бесплатное, но найти его достаточно непросто.
Рис. 5. SpyNet
BUTTSniffer. Это сниффер в чистом виде, который помогает анализировать сетевые пакеты, а не перехватывать чужие пароли и историю браузера. По крайней мере, так думал ее автор. На самом же деле его творение используется сами понимаете для чего. Это обычная пакетная программа, которая работает через командную строку. Для начала использования загружаются и запускаются два файла. «Захваченные» пакеты сохраняются на жестком диске, что очень удобно.
Существует множество других программ-снифферов. К примеру, известны fsniff, WinDump, dsniff, NatasX, NetXRay, CooperSniffer, LanExplorer, Net Analyzer и многие другие. Выбирайте любую! Но, справедливости ради стоит отметить, что лучшая – CommView.
Итак, мы разобрали, что такое снифферы, как они работают и какие бывают.
Теперь перейдем с места хакера или сисадмина на место обычного юзера.
Мы прекрасно понимаем, что наши данные могут украсть. Что же делать, чтобы этого не произошло?
Описание атаки ARP-spoofing
Два компьютера(узла) M и N в локальной сети Ethernet обмениваются сообщениями. Злоумышленник X, находящийся в этой же сети, хочет перехватывать сообщения между этими узлами. До применения атаки ARP-spoofing на сетевом интерфейсе узла M ARP-таблица содержит IP и MAC адрес узла N. Также на сетевом интерфейсе узла N ARP-таблица содержит IP и MAC узла M.
Во время атаки ARP-spoofing узел X (злоумышленник) отсылает два ARP ответа (без запроса) – узлу M и узлу N. ARP-ответ узлу M содержит IP-адрес N и MAC-адрес X. ARP-ответ узлу N содержит IP адрес M и MAC-адрес X.
Так как компьютеры M и N поддерживают самопроизвольный ARP, то, после получения ARP-ответа, они изменяют свои ARP таблицы, и теперь ARP-таблица M содержит MAC адрес X, привязанный к IP-адресу N, а ARP-таблица N содержит MAC адрес X, привязанный к IP-адресу M.
Тем самым атака ARP-spoofing выполнена, и теперь все пакеты(кадры) между M и N проходят через X. К примеру, если M хочет передать пакет компьютеру N, то M смотрит в свою ARP-таблицу, находит запись с IP-адресом узла N, выбирает оттуда MAC-адрес (а там уже MAC-адрес узла X) и передает пакет. Пакет поступает на интерфейс X, анализируется им, после чего перенаправляется узлу N.
Как работает сетевой сниффинг
Анализатор пакетов, подключенный к любой сети, перехватывает все данные, передаваемые по этой сети.
В локальной сети (LAN) компьютеры обычно обмениваются данными напрямую с другими компьютерами или устройствами в сети. Всё, что связано с этой сетью, подвергается воздействию всего этого трафика. Компьютеры запрограммированы на игнорирование всего сетевого трафика, не предназначенного для этого.
Программное обеспечение для прослушивания сети открывает доступ ко всему трафику, открывая сетевую карту компьютера (NIC) для прослушивания этого трафика. Программное обеспечение считывает эти данные и выполняет их анализ или извлечение данных.
После получения сетевых данных программное обеспечение выполняет следующие действия:
- Содержимое или отдельные пакеты (разделы сетевых данных) записываются.
- Некоторое программное обеспечение записывает только раздел заголовка пакетов данных для экономии места.
- Захваченные данные сети декодируются и форматируются, чтобы пользователь мог просматривать информацию.
- Анализаторы пакетов анализируют ошибки в сетевом взаимодействии, устраняют неполадки сетевых подключений и восстанавливают цельность потоков данных, предназначенных для других компьютеров.
- Некоторое программное обеспечение для поиска в сети извлекает конфиденциальную информацию, такую как пароли, PIN-коды и личную информацию.
Что может Intercepter-NG
Главная задача Intercepter-NG – выполнение атаки человек-посередине. В практическом смысле, атака человек-посередине (её ещё называют атакой посредника) заключается в возможности просматривать передаваемые другими пользователями данные в локальной сети. Среди этих данных могут быть логины и пароли от сайтов. Также передаваемые данные можно не только анализировать и сохранять, но и изменять.
Чтобы описать техническую суть этой атаки, представьте себе локальную сеть. Такой локальной сетью могут быть несколько компьютеров в вашей квартире, которые подключены к роутеру
При этом неважно, подключены они по проводу или по Wi-Fi. Роутер получает запросы от компьютеров, перенаправляет их, например, в Интернет, а полученные ответы возвращает обратно компьютерам, отправившим запросы
В данной ситуации роутер является шлюзом.
Благодаря атаке, называемой ARP спуфингом, компьютер начинает считать шлюзом не роутер, а компьютер атакующего. Атакующий получает запросы от «жертвы» и передаёт их в пункт назначения (например, запрашивает содержимое веб-сайта в Интернете), получив ответ от пункта назначения, он направляет его «жертве». В этой ситуации атакующий становится посредником – отсюда другое название атаки человек-посередине – «атака посредника». Для реализации атаки ARP спуфинг необязательно понимать её детали. Но если вам интересно, почему это происходит, то в вы найдёте подробное описание этого процесса.
Атакующий получает доступ к передаваемым данным и может, например, извлекать из этих данных пароли и сообщения. Процесс анализа передаваемых данных называется сниффингом. В процессе сниффинга Intercepter-NG умеет:
- Перехватывать логины и пароли для входа на веб-сайты
- Восстанавливать переданные данные (файлы)
- Перехватывать сообщения некоторых мессенджеров
- Показывать посещённые пользователем адреса
Кроме передачи данных, возможно их изменение, внедрение в код открываемых страниц JavaScript и принудительная загрузка пользователю файла.
Всё это прекрасно работает только для незашифрованных данных. Если данные зашифрованы (HTTPS), то их невозможно проанализировать без дополнительных действий.
Прежде чем подключиться к веб-сайту, компьютер обращается к DNS (серверу имён), чтобы узнать его IP адрес. Intercepter-NG умеет подменять ответы DNS (делать DNS спуфинг), что позволяет перенаправлять «жертву» на фальшивые копии сайтов для последующих атак.
Это далеко не все возможности программы. С другими возможностями мы познакомимся далее в этой инструкции.
Основные настройки
Переходим в «Tools -> Options…».Вкладка «HTTPS».После установки Fiddler не собирает HTTPS-трафик, это необходимо включить. Ставим галочку в опции «Decrypt HTTPS traffic». После этого Fiddler сгенерирует самоподписанный сертификат и спросит хотите ли установить данный сертификат. Отвечаем да.Опция «Ignore server certificate errors (unsafe)» — сразу можно не включать. На некоторых порталах бывают ошибки сертификатов, но это редко. Как увидите так включите )Настройка протоколов. По умолчанию стоит значение «<client>;ssl3;tls1.0». Советую сразу установить значение на «<client>;ssl3;tls1.0;tls1.1;tls1.2». После изменения настроек необходимо перезапустить программу чтобы настройки вступили в силу.
Кнопка «Actions»:
«Trust Root Certificate» — если сгенерированный Fiddler сертификат вы не установили после включения опции «Decrypt HTTPS traffic», то можно это сделать здесь.
«Export Root Certificate to Desktop» — если вы планируете использовать Fiddler как прокси-сервер локальной сети, то на каждом устройстве пользователя необходимо установить сгенерированный выше сертификат. С помощью этой опции сохраняете сертификат на ваш рабочий стол.
«Reset All Certificates» — в некоторых случаях необходимо сгенерировать новый сертификат взамен старого. В этом случае сбрасываем все Fiddler-сертификаты и генерируем новый сертификат.
Вкладка «Connections».Здесь устанавливаем на каком порту Fiddler работает как прокси-сервер. Порт по умолчанию «8888».
«Allow remote computers to connect» — включаем опцию чтобы Fiddler начал принимать подключения от других компьютеров.
«Act as system proxy on startup» — по умолчанию опция включена. Если включена, то при запуске опция «File -> Capture Traffic» включена.
После изменения данных настроек необходимо перезапустить программу чтобы настройки вступили в силу.
Вкладка «Gateway».Здесь устанавливаем куда Fiddler отправляет входящие пакеты, какой прокси использует.
«Use System Proxy (recommended)» — использование системного прокси из реестра текущего пользователя.
«Manual Proxy Configuration» — возможность задать вручную прокси-сервер.
«No proxy» — задаем что выход в Интернет напрямую, без использования прокси.
После изменения данных настроек необходимо перезапустить программу чтобы настройки вступили в силу.
Quick mode
Quick mode will display results as they are filtered out with limited size buffer for packets. There are several attributes that can be set up filtering. If no attributes are set current configuration will be used.
Property | Description |
---|---|
duration | length of the test in seconds |
fast-path | capture FastPath packets without disabling FastPath, you can read more about FastPath |
freeze-frame-interval | time between data printout |
interface | intarface name or all |
ip-address | up to 16 addresses to filter |
ip-protocol | one of listed protocols, up to 16 entries
|
mac-address | up to 16 MAC addresses to filter |
mac-protocol | up 16 entries
|
port | up to 16 entries to filter by |
/tool sniffer> quick interface=ether1 INTERFACE TIME NUM DI SRC-MAC DST-MAC VLAN SRC-ADDRESS ether1 3.145 210 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.145 211 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.183 212 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.184 213 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.195 214 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.195 215 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.195 216 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.217 217 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.218 218 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.22 219 <- 00:0C:42:49:FC:EC 33:33:00:00:00:05 fe80::20c:42ff:fe49:fcec ether1 3.255 220 <- 00:0C:42:A1:6E:47 01:00:5E:00:00:05 192.168.15.6 ether1 3.256 221 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.259 222 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.294 223 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.325 224 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.325 225 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox) ether1 3.326 226 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.35 227 <- 00:0C:42:A8:ED:C2 33:33:00:00:00:01 fe80::20c:42ff:fea8:edc2 ether1 3.391 228 <- 00:24:1D:17:81:F7 00:0C:42:CB:DE:62 10.5.101.10:36771 ether1 3.392 229 -> 00:0C:42:CB:DE:62 00:24:1D:17:81:F7 10.5.101.15:8291 (winbox)
Note: Traffic-Generator packets will not be visible using the packet sniffer on the same interface unless parameter is set.
Ethernet
Так как мы знаем, что первые пять байт это протокол tzsp, то с уверенностью можем сказать, что содержит ethernet заголовок и какие-то данные в нём. Но при этом размер заголовка ethernet фиксированный и равен 14 байт, кроме тех случаев, когда используется vlan или q-in-q, но мы сразу оговорили, что нас интересует только IP протокол без каких-либо инкапсуляций. Поэтому мы должны проверить, что срез представляет из себя ethernet и дальнейшие данные это IP протокол. Открываем wiki https://en.wikipedia.org/wiki/Ethernet_frame и находим структуру ethernet протокола, и видим, что он состоит из двух мак адресов и протокола, протокол занимает два последних байта, при этом протокол нас интересует только ipv4 а его номер , вот его мы и будем проверять EtherType.
Преобразуем два последних байта из диапазона в Uint16 число и сверяем с номером ipv4 протокола, если не соответствует, прерываем выполнения функции и возвращаем ошибку.
Обратите внимание, что размер данных с которыми мы работаем уже составляет 19 байт, поэтому необходимо исправить в функции на. Защита от банальной ошибки, на первых данных, и чтобы лишний раз не гонять данные