Что такое сетевой сниффер
Сетевые анализаторы делают моментальные копии данных, передаваемых по сети, без перенаправления или изменения. Некоторые анализаторы работают только с пакетами TCP/IP, но более сложные инструменты работают со многими другими сетевыми протоколами и на более низких уровнях, включая Ethernet.
Несколько лет назад анализаторы были инструментами, которые использовались исключительно профессиональными сетевыми инженерами. В настоящее время такое программное обеспечение доступно бесплатно в сети, они также популярны среди интернет-хакеров и людей, которые интересуются сетевыми технологиями.
Сетевые анализаторы иногда называют сетевыми датчиками, беспроводными анализаторами, анализаторами Ethernet, анализаторами пакетов, анализаторами пакетов или просто инструментами отслеживания.
Как используются анализаторы пакетов
Существует широкий спектр приложений для анализа пакетов данных. Большинство перехватчиков пакетов могут использоваться ненадлежащим образом одним человеком и по законным причинам – другим.
Например, программа, которая захватывает пароли, может использоваться хакером, но тот же инструмент может использоваться сетевым администратором для сбора сетевой статистики, например, доступной полосы пропускания.
Наблюдение за сетью также используется для тестирования брандмауэра или веб-фильтров, а также для устранения неполадок в связке клиент/сервер.
Как работает сетевой сниффинг
Анализатор пакетов, подключенный к любой сети, перехватывает все данные, передаваемые по этой сети.
В локальной сети (LAN) компьютеры обычно обмениваются данными напрямую с другими компьютерами или устройствами в сети. Всё, что связано с этой сетью, подвергается воздействию всего этого трафика. Компьютеры запрограммированы на игнорирование всего сетевого трафика, не предназначенного для этого.
Программное обеспечение для прослушивания сети открывает доступ ко всему трафику, открывая сетевую карту компьютера (NIC) для прослушивания этого трафика. Программное обеспечение считывает эти данные и выполняет их анализ или извлечение данных.
После получения сетевых данных программное обеспечение выполняет следующие действия:
- Содержимое или отдельные пакеты (разделы сетевых данных) записываются.
- Некоторое программное обеспечение записывает только раздел заголовка пакетов данных для экономии места.
- Захваченные данные сети декодируются и форматируются, чтобы пользователь мог просматривать информацию.
- Анализаторы пакетов анализируют ошибки в сетевом взаимодействии, устраняют неполадки сетевых подключений и восстанавливают цельность потоков данных, предназначенных для других компьютеров.
- Некоторое программное обеспечение для поиска в сети извлекает конфиденциальную информацию, такую как пароли, PIN-коды и личную информацию.
Как предотвратить атаки сетевых перехватчиков
Если вы обеспокоены тем, что программное обеспечение для слежения за сетью отслеживает сетевой трафик, исходящий от вашего компьютера, есть способы защитить себя.
Существуют этические причины, по которым кому-то может понадобиться использовать сетевой сниффер, например, когда сетевой администратор отслеживает поток сетевого трафика.
Когда сетевые администраторы обеспокоены злонамеренным использованием этих инструментов в своей сети, они используют анти-снифф-сканирование для защиты от атак сниффера. Это означает, что корпоративные сети обычно безопасны.
Тем не менее, легко получить и использовать сетевой сниффер со злыми намерениями, что делает его незаконное использование в вашем домашнем интернете поводом для беспокойства. Для кого-то может быть легко подключить такое программное обеспечение даже к корпоративной компьютерной сети.
Если вы хотите защитить себя от того, кто шпионит за вашим интернет-трафиком, используйте VPN, который шифрует ваш интернет-трафик.
Определение
Сниффер – это анализатор трафика. В свою очередь, трафик – это вся информация, которая проходит через компьютерные сети.
Этот анализатор смотрит, какая информация передается. Для этого ее необходимо перехватить. Фактически, это незаконная вещь, ведь таким образом люди часто получают доступ к чужим данным.
Это можно сравнить с ограблением поезда – классический сюжет большинства вестернов.
Вы передаете какую-то информацию другому пользователю. Ее везет «поезд», то есть сетевой канал.
Придурки из банды кровавого Джо перехватывают состав и грабят его до нитки. В нашем случае информация идет дальше, то есть злоумышленники не крадут ее в прямом смысле этого слова.
Но, допустим, что эта информация представляет собой пароли, личные записи, фотографии и тому подобное.
Злоумышленники могут просто переписать и сфотографировать все это. Таким образом они получат доступ к секретным данным, которые вы хотели бы скрыть.
Да, у вас будет вся эта информация, она к вам дойдет.
Но вы будете знать, что все то же самое знают и совершенно посторонние люди. А ведь в XXI веке больше всего ценится именно информация!
Рис. 1. Ограбление поезда
В нашем случае используется именно такой принцип. Определенные люди останавливают трафик, считывают с него данные и отсылают их дальше.
Правда, в случае со снифферами все не всегда так страшно. Они используются не только для того, чтобы получать несанкционированный доступ к данным, а еще и для анализа самого трафика. Это важная часть работ сисадминов и просто админов различных сервисов и ресурсов. О применении стоит поговорить более подробно. Но перед этим мы затронем то, как работают эти самые снифферы.
Инструменты сетевого анализа трафика
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
Некоторые из этих инструментов сетевого анализа являются бесплатными, в то время как другие чего-то стоят или имеют бесплатную пробную версию. Кроме того, некоторые из этих программ больше не поддерживаются и не обновляются, но всё ещё доступны для скачивания.
Снифферы: полный разбор
darkmagazin.info
Определение
Сниффер – это анализатор трафика. В свою очередь, трафик – это вся информация, которая проходит через компьютерные сети.
Этот анализатор смотрит, какая информация передается. Для этого ее необходимо перехватить. Фактически, это незаконная вещь, ведь таким образом люди часто получают доступ к чужим данным. Это можно сравнить с ограблением поезда – классический сюжет большинства вестернов. Вы передаете какую-то информацию другому пользователю. Ее везет «поезд», то есть сетевой канал. Придурки из банды кровавого Джо перехватывают состав и грабят его до нитки. В нашем случае информация идет дальше, то есть злоумышленники не крадут ее в прямом смысле этого слова. Но, допустим, что эта информация представляет собой пароли, личные записи, фотографии и тому подобное. Злоумышленники могут просто переписать и сфотографировать все это. Таким образом они получат доступ к секретным данным, которые вы хотели бы скрыть. Да, у вас будет вся эта информация, она к вам дойдет. Но вы будете знать, что все то же самое знают и совершенно посторонние люди.
А ведь в XXI веке больше всего ценится именно информация!
В нашем случае используется именно такой принцип. Определенные люди останавливают трафик, считывают с него данные и отсылают их дальше.
Правда, в случае со снифферами все не всегда так страшно. Они используются не только для того, чтобы получать несанкционированный доступ к данным, а еще и для анализа самого трафика. Это важная часть работ сисадминов и просто админов различных сервисов и ресурсов. О применении стоит поговорить более подробно. Но перед этим мы затронем то, как работают эти самые снифферы.
Принцип работы
На практике снифферы могут являть собой портативные устройства, которые в буквальном смысле ставятся на кабель и считывают с него данные, а также программы. В некоторых случаях это просто набор инструкций, то есть кодов, которые необходимо вводить в определенной последовательности и в определенной среде программирования. Если более детально, что перехват трафика такими устройствами может считываться одним из следующих способов:
- Путем установки концентраторов вместо коммутаторов. В принципе, прослушивание сетевого интерфейса можно выполнять и другими способами, но все они малоэффективны.
- Подключением буквального сниффера в место разрыва канала. Это именно то, о чем шла речь выше – разрезается кабель и ставится небольшое устройство, которое и считывает все, что движется по каналу.
- Установкой ответвления от трафика. Это ответвление направляется на какое-то другое устройство, возможно, расшифровывается и направляется пользователю.
- Атакой, целью которой является полное перенаправление трафика в сниффер. Конечно же, после попадания информации на считывающее устройство, она опять отправляется конечному пользователю, которому изначально и предназначалась. Хакерство в чистом виде!
- Путем анализа электромагнитных излучений, которые возникают из-за движения трафика. Это самый сложный и редко используемый метод.
Вот примерная схема работы второго способа. Правда, здесь показано, что считывающее устройство просто подключается к кабелю. На самом же деле сделать это таким образом практически нереально.
Дело в том, что конечный пользователь все равно заметит, что в каком-то месте имеет место разрыв канала.
Сам принцип работы обычного сниффера основывается на том, что в рамках одного сегмента Ethernet пакеты рассылаются всем подключенным машинам. Достаточно глупый, но пока безальтернативный метод! А между сегментами данные передаются при помощи коммутаторов. Вот здесь и появляется возможность перехвата информации одним из вышеперечисленных способов.
Собственно, это и называется кибератаками и хаккерством! Кстати, если грамотно установить эти самые коммутаторы, то можно полностью защитить сегмент от всевозможных кибератак. Существуют и другие методы защиты, о которых мы еще поговорим в самом конце.
Применение
Разумеется, в первую очередь, данное понятие имеет то применение, о котором шла речь выше, то есть хаккерские атаки и незаконное получение пользовательских данных.
Перехват паролей с помощью Wireshark
Многие пользователи и не догадываются, что заполняя логин и пароль при регистрации или авторизации на закрытом Интернет-ресурсе и нажимая ENTER, эти данные легко могут перехватить. Очень часто они передаются по сети не в защищенном виде. Поэтому если сайт, на котором вы пытаетесь авторизоваться, использует HTTP протокол, то очень просто выполнить захват этого трафика, проанализировать его с помощью Wireshark и далее с помощью специальных фильтров и программ найти и расшифровать пароль.
Лучшее место для перехвата паролей – ядро сети, где ходит трафик всех пользователей к закрытым ресурсам (например, почта) или перед маршрутизатором для выхода в Интернет, при регистрациях на внешних ресурсах. Настраиваем зеркало и мы готовы почувствовать себя хакером.
Шаг 1. Устанавливаем и запускаем Wireshark для захвата трафика
Иногда для этого достаточно выбрать только интерфейс, через который мы планируем захват трафика, и нажать кнопку Start. В нашем случае делаем захват по беспроводной сети.
Захват трафика начался.
Шаг 2. Фильтрация захваченного POST трафика
Открываем браузер и пытаемся авторизоваться на каком-либо ресурсе с помощью логина и пароля. По завершению процесса авторизации и открытия сайта мы останавливаем захват трафика в Wireshark. Далее открываем анализатор протоколов и видим большое количество пакетов. Именно на этом этапе большинство ИТ-специалистов сдаются, так как не знают, что делать дальше. Но мы знаем и нас интересуют конкретные пакеты, которые содержат POST данные, которые формируются на нашей локальной машине при заполнении формы на экране и отправляются на удаленные сервер при нажатии кнопки «Вход» или «Авторизация» в браузере.
Вводим в окне специальный фильтр для отображения захваченных пакетов: http.request.method == “POST”
И видим вместо тысячи пакетов, всего один с искомыми нами данными.
Шаг 3. Находим логин и пароль пользователя
Быстрый клик правой кнопки мыши и выбираем из меню пункт Follow TCP Steam
После этого в новом окне появится текст, который в коде восстанавливает содержимое страницы. Найдем поля «password» и «user», которые соответствуют паролю и имени пользователя. В некоторых случаях оба поля будут легко читаемы и даже не зашифрованы, но если мы пытаемся захватить трафик при обращении к очень известным ресурсам типа: Mail.ru, Facebook, Вконтакте и т.д., то пароль будет закодирован:
HTTP/1.1 302 Found Date: Mon, 10 Nov 2014 23:52:21 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: PHP/5.3.3 P3P: CP=»NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM» Set-Cookie: non=non; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/ Set-Cookie: password=e4b7c855be6e3d4307b8d6ba4cd4ab91; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/ Set-Cookie: scifuser=networkguru; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/ Location: loggedin.php Content-Length: 0 Connection: close Content-Type: text/html;
Таким образом, в нашем случае:
Имя пользователя: networkguru
Пароль: e4b7c855be6e3d4307b8d6ba4cd4ab91
Шаг 4. Определение типа кодирования для расшифровки пароля
Заходим, например, на сайт https://www.onlinehashcrack.com/hash-identification.php#res и вводим наш пароль в окно для идентификации. Мне выдан был список протоколов кодирования в порядке приоритета:
- MD5
- NTLM
- MD4
- LM
Шаг 5. Расшифровка пароля пользователя
На данном этапе можем воспользоваться утилитой hashcat:
~# hashcat -m 0 -a 0 /root/wireshark-hash.lf /root/rockyou.txt
На выходе мы получили расшифрованным пароль: simplepassword
Таким образом, с помощью Wireshark мы можем не только решать проблемы в работе приложений и сервисов, но и также попробовать себя в роли хакера, осуществляя перехват паролей, которые пользователи вводят в веб-формах. Также можно узнавать и пароли к почтовым ящикам пользователей, используя незатейливые фильтры для отображения:
- Протокол POP и фильтр выглядит следующим образом: pop.request.command == «USER» || pop.request.command == «PASS»
- Протокол IMAP и фильтр будет: imap.request contains «login»
- Протокол SMTP и потребуется ввод следующего фильтра: smtp.req.command == «AUTH»
и более серьезные утилиты для расшифровки протокола кодирования.
Шаг 6. Что делать, если трафик зашифрован и используется HTTPS?
Для ответа на этот вопрос есть несколько вариантов.
Вариант 1. Подключиться в разрыв соединения между пользователем и сервером и захватить трафик в момент установления соединения (SSL Handshake). В момент установки соединения можно перехватить сеансовый ключ.
Вариант 2. Вы можете расшифровать трафик HTTPS, используя файл журнала сеансовых ключей, записываемый Firefox или Chrome. Для этого браузер должен быть настроен на запись этих ключей шифрования в файл журнала (пример на базе FireFox), и вы должны получить этот файл журнала. По сути, необходимо похитить файл с ключом сессии с жесткого диска другого пользователя (что является незаконным). Ну а далее захватить трафик и применить полученный ключ для его расшифровки.
Уточнение. Мы говорим о веб-браузере человека, у которого пытаются украсть пароль. Если же мы подразумеваем расшифровку нашего собственного HTTPS трафика и хотим потренироваться, то эта стратегия будет работать. Если вы пытаетесь расшифровать HTTPS трафик других пользователей без доступа к их компьютерам, это не сработает – на то оно и шифрование, и личное пространство.
После получения ключей по варианту 1 или 2 необходимо прописать их в WireShark:
- Идем в меню Edit – Preferences – Protocols – SSL.
- Ставим флаг «Reassemble SSL records spanning multiple TCP segments».
- «RSA keys list» и нажимаем Edit.
- Вводим данные во все поля и прописываем путь в файлу с ключом
WireShark может расшифровывать пакеты, которые зашифрованы с использованием алгоритма RSA. В случае если используются алгоритмы DHE/ECDHE, FS, ECC, сниффер нам не помощник.
Вариант 3. Получить доступ к web-серверу, которым пользуется пользователь, и получить ключ. Но это является еще более сложной задачей. В корпоративных сетях с целью отладки приложений или контент фильтрации этот вариант реализуется на легальной основе, но не с целью перехвата паролей пользователей.
Видео:
Как правильно подключиться к сети для захвата трафика?
Захват трафика на стороне клиента или сервера
При возникновении проблем с пользователем или сервисами, которые он использует, все эксперты рекомендуют начинать поиск и устранение проблем на стороне клиента, если обращения не носят массовый характер. Устанавливаем анализатор протоколов локально или удаленно на рабочую станцию пользователя, и мы готовы удаленно захватывать трафик и начать процесс диагностики.
Преимущества при захвате трафика:
- на клиенте или сервере – очень простой процесс, который требует только установки анализатора протоколов, чаще удаленно;
- на клиенте или сервере – при корректном запуске анализатор не оказывает влияния на какие-либо сервисы или процессы на рабочей станции клиента;
- на клиенте – есть возможность захвата беспроводного трафика;
- на клиенте – возможность захвата VPN трафика внутри туннеля;
- на сервере – возможность видеть сессии других клиентов и оценивать их влияние на производительность сервиса и сервера в целом;
- на сервере – возможность видеть трафик между блейдами или виртуальными машинами на физическом сервере.
Принимаем во внимание при захвате трафика:
- на клиенте или сервере – при захвате трафика можно видеть пакеты большой длины. Почему это происходит? Когда операционной системе необходимо передать большой объем данных по сети, то сначала происходит разделение всего объема на сегменты. Обычно сегментация осуществляется на уровне TCP и сетевому интерфейсу передаются уже сегментированные данные, этот процесс называется TCP segmentation offload (TSO). Например, нам необходимо передать пакет в 128КБ, который по умолчанию будет разделен на 92 сегмента по 1448 байтов, которые и будут переданы через сетевой интерфейс по сети. Таким образом, происходит уменьшение использования ресурсов CPU для сегментации пакетов.
- на клиенте или сервере – если мы используем бесплатный анализатор протоколов Wireshark, то лучше не пользоваться программами wireshark.exe или tshark.exe, а запустить его в фоновом режиме с помощью команды DUMPCAP.EXE.
Как правильно настроить Dumpcap:
При анализе сложных проблем, а особенно анализе кратковременных и эпизодически появляющихся проблем, необходимо выполнять захват трафика в течение длительного периода времени. В сети происходит проблема, которая появляется раз или два в неделю и в разное время. Как ее отловить? Этим вопросом задавались многие. Использование Wireshark в данном случае не очень хороший вариант по нескольким причинам. Во-первых, графический интерфейс анализатора протоколов грузит память и процессор устройства, на котором запущен и во-вторых, Wireshark осуществляет захват трафика и одновременный анализ его, что и вызывает использование дополнительных ресурсов и по мере увеличения файла, количество выделяемых ресурсов также растет.
Как запустить и настроить Dumpcap?
Для решения задач длительного захвата трафика лучше воспользоваться программой Dumpcap.exe, которая устанавливается вместе с WireShark и находится в соответствующей папке:
Для запуска программы необходимо воспользоваться командной строкой, запущенной с правами администратора. Запуск и синтаксис программы Dumpcap выглядит следующим образом:
dumpcap –i 4 –q – b filesize:200000 –b files:5000 –B 1024 –w c:\traces\mytrace.pcapng
Параметры запуска Dumpcap:
-i 4 – индекс сетевого интерфейса, через который осуществляется захват трафика.
-q – запуск программы в фоновом режиме.
-b filesize: 200000 — размер файла в килобайтах. В данном случае файл размером 200 Мбайт.
-b files: 5000 — количество файлов, которые будут записаны в папку. В данном случае 5000 файлов. Т.е. общий объем будет 1 Тбайт данных – 5000 файлов по 200 Мбайт.
-B 1024 – это размер буфера в Мбайт, в который предварительно сохраняются захваченные пакеты.
-w c:\traces\mytrace.pcapng – путь к папке, в которой будут сохраняться файлы
Для удобства можно создать исполняемый файл с расширением bat, чтобы иметь всегда его под рукой с правильным синтаксисом.
Коллеги из Trimelab сделали отличный онлайн конфигуратор командной строки Dumpcap.
В его поля достаточно ввести параметры запуска, описанных выше, и на выходе вы получите текст, скопировав который в командную строку, сможете сразу начать захват трафика.
Как работать c Dumpcap?
Пакеты захватываются драйвером сетевого интерфейса, который мы указали при активации программы и далее помещаются в буфер для сглаживания пиков трафика. Размер буфера может быть настроен пользователем. При работе на 64 битных машинах рекомендуем использовать 1 Гбайт, для 32 битной операционной системе не более 500 Мбайт. Процесс «npf.sys» является частью программы, которая устанавливается при установке WireShark под названием WinPcap. Затем программа «dumpcap.exe», используя две библиотеки «wpcap.dll» и «packet.dll» перемещает пакеты из буфера в файлы в папку, которую мы указали в командной строке с расширением «pcap» или «pcapng».
В нашем примере мы указали, что количество файлов должно быть 5000 штук, таким образом, при сохранении пятитысячного файла программа начнет перезаписывать первый и так далее по кругу. Для 64 битной операционной системы мы рекомендуем использовать файлы не более 200 Мбайт, для 32 битной не более 100 Мбайт, но лучше 50 Мбайт. Это не влияет на процесс захвата трафика, но когда вы начнете анализ захваченных файлов с помощью WireShark, загрузка и анализ (фильтры, изменение колонок и т.д.) файлов большего размера будет очень медленным. При настройках в нашем примере (200 Мбайт на файл и 5000 файлов) объем папки составит 1 Тбайт и при захвате трафика на скорости 1 Гбит/сек и загрузке его на 50% скорость записи составит 450 Мбайт в час. Таким образом, в Терабайте у нас будет трафик за последние два часа.
Программу Dumpcap можно запускать на любом устройстве – рабочей станции или сервере. Какой-либо существенной загрузки процессора и памяти это не создаст, если конечно Вы не указали большой размер буфера для записи пакетов с драйвера сетевой карты. Большую нагрузку будет испытывать система ввода вывода, т.е. диски для записи файлов. Поэтому не рекомендуется использовать системные диски для сохранения файлов. Хороший выход сохранять данные на внешний USB диск.
Дальнейшее использование программы идет по очень простому сценарию. Как только обнаружена проблема, заходим в папку, где хранится захваченный Dumpcap трафик. Сохраненные файлы имеют временную метку с точность до секунд. Выбираем файлы, которые сохранялись в момент возникновения проблемы и производим их дальнейшее декодирование и анализ с помощью Wireshark.
В таком случае мы сможем захватывать трафик бесконечно долго. Это будет полезно, если мы отлавливаем проблему, которая носит не постоянный характер. Плюс при таком запуске процесса он не будет доставлять дополнительных проблем пользователю и практически не использует ресурсы рабочей станции.
- на клиенте или сервере – для сохранения данных не используем системные диски, чтобы не влиять на производительность компьютера клиента. Лучше использовать внешние USB диски.
- на сервере – объемы трафика существенно больше, поэтому USB диск должен быть правильного размера. При захвате трафика на скорости 1 Гбит/с и загрузке интерфейса всего на 50% скорость записи составит 450 Мбайт в час. Таким образом, для хранения трафика за последний час понадобится около 500 Мбайт.
- на сервере – следует принимать во внимание возможное объединение сетевых карт с целью повышения отказоустойчивости на уровне сетевого адаптера и, соответственно, сетевого трафика. Выход из строя сетевого адаптера группы не приводит к потере сетевого соединения, сервер переключает сетевой трафик на работоспособные адаптеры группы. Также объединение сетевых карт позволяет осуществить агрегирование полосы пропускания адаптеров, входящих в группу. При выполнении сетевых операций, например, копирования файлов из общих папок, система потенциально может задействовать все адаптеры группы, повышая производительность.
Захват на коммутаторе путем настройки зеркала или SPAN
Второй по популярности способ захвата трафика в ИТ-среде — это настройка зеркала или SPAN сессии. После введения специальных команд коммутатор копирует весь трафик с порта источника и отправляет копию на порт, к которому мы можем подключить ноутбук с программой Wireshark или специализированный сервер с установленным анализатором протоколов. Для корректной настройки данной функции рекомендуем обратиться к руководству пользователя коммутатора.
Данный метод удобен в нескольких сценариях, если:
- необходимо захватить трафик между устройствами без прерывания самого сервиса.
- необходимо понять источник проблемы, которая касается не только одного клиента или сервера, а целой группы. В данном случае мы можем настроить SPAN сессию Uplink порта и видеть весь трафик от клиентов к серверам и обратно. Но в этом случае мы не увидим общения между серверами, если приложение многоуровневое.
- необходимо понять источник проблемы, которая касается группы серверов или пользователей. Если мы можем настроить сессию для целой виртуальной локальной сети (VLAN), то мы будем видеть в отличии от первого случая ещё и траффик между серверами, если они входят в этот же VLAN. Но при таком варианте исполнения SPAN сессии мы можем видеть задваивание трафика.
В современных сетях для повышения отказоустойчивости серверов их подключают к сети двумя сетевыми адаптерами и они сгруппированы по любому из стандартов (IEEE 802.3ad или IEEE 802.1ax LAСP). В случае если мы решаем проблему с таким сервером, то зеркалировать необходимо оба порта на коммутаторе, к которому он подключен. В случае если сервер подключен к разным коммутаторам, то тогда необходимо использовать аппаратный анализатор с несколькими интерфейсами и подключать его к двум SPAN портам на разных коммутаторах.
Преимущества SPAN для копирования трафика:
- Очень легко настроить
Часто это делается удаленно, а то и с помощью RSPAN, если есть такая возможность.
- Не оказывается абсолютно никакого влияния на трафик и связь между устройствами
Надо быть аккуратным при настройке SPAN на Cisco. Тут нет «защиты от дурака» и можно «положить» порт.
- Можно получить копию трафика с нескольких источников
На недорогих моделях коммутаторов в документации можно найти возможность копирования хоть всех 23 портов в один, но помните о загрузке интерфейсов, которые вы копируете и пропускную способность порта, к которому подключаете анализатор. Ноутбук с гиговой картой полезен, только если загрузка на выходе будет 10-15% от гигабита.
- Необходимо видеть траффик всего VLAN
Помним только еще раз, что в этом случае трафик может задваиваться и надо быть внимательным при анализе TCP retransmissions. Следует обращать внимание на SEQ номер пакета и IP ID. Если они одинаковые, то это дубль. Если разные, то это пакет, который отправлен заново.
- Не оказывает какого-либо ощутимого влияния на коммутатор
Принимаем во внимание при настройке SPAN для копирования трафика:
- Коммутатор не позволит видеть ошибки на физическом и канальном уровне модели OSI.
- Необходимо контролировать пропускную способность порта получателя скопированного трафика, чтобы не перегрузить его и не начать терять пакеты. Rx и Tx полный дуплекс 1 Гбит/сек при 100% загрузке – это 2 Гбита трафика на SPAN порту.
- Необходим свободный порт для получения скопированного трафика.
- Ограниченное количество доступных SPAN сессий на коммутаторе.
- Необходимо читать документацию на коммутаторы, так как есть ограничения по скорости копируемого трафика.
Программы-сниферы
CommView. Программа платная, как и все остальных в нашем списке. Одна минимальная лицензия стоит 300 долларов. Зато функционал у ПО богатейший. Первое, что стоит отметить, так это возможность самостоятельной установки правил отслеживания чужого трафика. К примеру, можно сделать так, чтобы ICMP или TCP (это протоколы) полностью игнорировались. Примечательно также, что программа позволяет просматривать детали и лог всех пересылаемых пакетов. Существует обычная версия и версия для Wi-Fi.
SpyNet. Это, фактически, троян, от которых мы все так устали. Но он может использоваться и в благородных целях, о которых мы говорили выше. Программа выполняет перехват и расшифровку пакетов, которые есть в трафике. Есть множество необычных функций. К примеру, можно воссоздавать страницы в интернете, на которых побывала «жертва». Примечательно, что это ПО бесплатное, но найти его достаточно непросто.
Вся информация предоставляется командой DarkMagazin darkmagazin.info
Проблемы с сетевыми снифферами
Инструменты сетевого сниффинга предлагают отличный способ узнать, как работают сетевые протоколы. Тем не менее, они также обеспечивают легкий доступ к некоторой частной информации, такой как сетевые пароли. Свяжитесь с владельцами, чтобы получить разрешение, прежде чем использовать анализатор в их сети.
Сетевые зонды только перехватывают данные из сетей, к которым подключен их хост-компьютер. На некоторых соединениях снифферы захватывают только трафик, адресованный этому конкретному сетевому интерфейсу. В любом случае, самое важное, что нужно помнить, это то, что любому, кто хочет использовать сетевой анализатор для слежения за трафиком, будет трудно сделать это, если этот трафик зашифрован.
Принципы работы пакетных снифферов
Дальнейшем в рамках данной статьи мы будем рассматривать только программные снифферы, предназначенные для сетей Ethernet. Сниффер это программа, которая работает на уровне сетевого адаптера NIC (Network Interface Card) (канальный уровень) и скрытым образом перехватывает весь трафик. Поскольку снифферы работают на канальном уровне модели OSI, они не должны играть по правилам протоколов более высокого уровня. Снифферы обходят механизмы фильтрации (адреса, порты и т.д.), которые драйверы Ethernet и стек TCP/IP используют для интерпретации данных. Пакетные снифферы захватывают из провода все, что по нему приходит. Снифферы могут сохранять кадры в двоичном формате и позже расшифровывать их, чтобы раскрыть информацию более высокого уровня, спрятанную внутри (рис. 1).
Для того чтобы сниффер мог перехватывать все пакеты, проходящие через сетевой адаптер, драйвер сетевого адаптера должен поддерживать режим функционирования promiscuous mode (беспорядочный режим). Именно в этом режиме работы сетевого адаптера сниффер способен перехватывать все пакеты. Данный режим работы сетевого адаптера автоматически активизируется при запуске сниффера или устанавливается вручную соответствующими настройками сниффера.
Весь перехваченный трафик передается декодеру пакетов, который идентифицирует и расщепляет пакеты по соответствующим уровням иерархии. В зависимости от возможностей конкретного сниффера представленная информация о пакетах может впоследствии дополнительно анализироваться и отфильтровываться.