double arrow

Методика выполнения лабораторной работы

 

1. Запустите программу Wireshark.

2. Выполните команду меню Capture -> Options. В открывшемся диалоговом окне устанавливаются следующие параметры захвата кадров (рис. 10).

3. Уберите маркер напротив опции «Capture packets in promiscuous mode» для захвата только «своих» кадров (кадры с широковещательным адресом также будут захватываться). В таком режиме работы число захваченных пакетов будет существенно меньше, что облегчит выполнение заданий.

4. Очистите кэш протокола ARP.

 

Для этого выполните команду: Пуск → Выполнить. В окне введите команду cmd и нажмите ОК. Далее в командной строке наберите arp – d и нажмитеEnter.

В Wireshark для запуска процесса захвата нажмите кнопку «Start».

 

В командной строке выполните команду ping ya.ru (в качестве параметра команды можно использовать IP-адрес сервера). По завершении команды ping остановите захват, нажав кнопку «Stop».

Рисунок 10 - Диалоговое окно настройки захвата кадров.

 

5. Для отображения только ICMP-сообщений в строке ввода

«Filter» наберите «icmp» и нажмите кнопку «Apply».

6. Отобразите все кадры, переданные вашим узлом, исключая сообщения ICMP.

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

Укажите результирующее выражение фильтрации с необходимыми пояснениями. После просмотра результата для отображения пакетов без фильтрации нажмите кнопку «Clear» в строке фильтра.

7. Пометьте первый и последний пакеты, относящиеся к функционированию команды Ping.

В списке буфера ключевые или наиболее важные для дальнейшего анализа пакеты можно помечать с помощью команды Edit → Mark Packet (toggle) основного меню или команды Mark Packet (toggle) контекстного меню. Также можно отметить все отображаемые пакеты c помощью команды Edit → Toggle Marking Off All Displayed Packets.

 

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

 

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

 

8. Сохраните в файле с именем «ping» только трафик команды Ping.

 

Сохранение данных в файле производится из меню File → Save или File → Save As.

 

Обратите внимание, что сохранить можно:

- все пакеты (All packets);

 

- только отображаемые (Displayed);

- выбранный пакет (Selected packet only);

- ранее маркированные с помощью основного или контекстного меню (Marked packet only и From first to last marked packet);

- указанный диапазон пакетов (Specify a packet range).

9. Выберите указателем мыши в списке пакетов первый ICMP-запрос и сохраните в файле «1.txt» информацию о нем с максимально возможной детализацией всех заголовков в декодере протоколов.

10. Сохраните все захваченные пакеты в файле lab1.pcap.

11. Отобразите первый и второй пакеты трафика команды Ping в отдельных окнах, сделайте скриншоты, и приведите обоснованные доводы, доказывающие их взаимосвязь.

При составлении отчетов с использованием «скриншотов», а иногда и при анализе данных для просмотра двух пакетов одновременно удобно использовать возможность отображения пакета в отдельном окне.

Это реализуется с помощью команды «Show Packet in New Window» контекстного или основного меню программы «View».

 

 



Приложение.

Окно настройки параметров захвата представлен на рис. 10

 

− Interface — сетевой адаптер.

- Buffer size — размер буфера захвата (по умолчанию 1 Мб).

 

− Capture packets in promiscuous mode — использование режима беспорядочного захвата.

 

− Limit each packet to — запись только нескольких первых байт

 

(определяется установленным значением параметра) каждого кадра.

 

− Capture Filter — фильтр захвата.

 

− Capture File(s) — файл захвата.

 

− Stop Capture — условия автоматического завершения захвата.

 

− Display Options — отображение пакетов в реальном времени и автоматический скроллинг окна информации.

 

− Name Resolution — разрешение имен на физическом, сетевом и транспортном уровнях.

 

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

 

компоненты:

 

− меню команд и панель инструментов;

 

− фильтр отображения пакетов;

 

− список пакетов в буфере;

 

− панель отображения декодера протоколов;

 

− панель отображения пакета в шестнадцатеричном коде и символах ASCII.

 

Панель со списком пакетов построчно отображает характеристики того или иного пакета (номер по порядку в буфере, время захвата, адреса источника и получателя, тип протокола и общая информация о нем). Перемещение по списку осуществляется с помощью мыши или клавиатуры, причем информация на двух других панелях обновляется автоматически. На панели декодера протоколов, нажимая указателем мыши на символы «+» или «–», можно отображать информацию о полях заголовков протоколов с требуемым уровнем детализации. При выборе того или иного служебного поля в заголовке оно автоматически выделяется на нижней панели, где отображается текущий пакет в шестнадцатеричном виде.

 

С помощью фильтра отображения можно быстро убрать «мусор». Выражение фильтрации может представлять собой просто название протокола, который присутствует в пакете на том или ином уровне вложенности. Например: arp — для отображения пакетов протокола ARP, tcp — для отображения пакетов, в которых присутствует заголовок протокола TCP.

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

 

Например, выражение с операцией сравнения «Равно» записывается с помощью двойного знака равенства «==» (допустимо использование «eq»). Другие операции сравнения записываются с

помощью следующих операторов:

 

a.!= (ne)— не равно,

пример: eth.type!= 0x0800;

b. > (gt)— больше,

пример: tcp.srcport > 1023;

c. < (lt)— меньше,

пример: frame.pkt_len lt 60;

 

d. >= (ge)— больше или равно,      

пример: frame.pkt_len ge 60;

 

e. <= (le)— меньше или равно,      

пример: tcp.dstport <=1023.

 

Значение любого выражения фильтрации возвращает переменную булевского типа. Таким образом, выражение udp означает присутствие в кадре заголовка протокола UDP, по аналогии с этим выражение tcp.flags.syn означает присутствие в заголовке протокола TCP бита синхронизации сессии в установленном состоянии (значение 1). К любому из выражений можно применить операцию логического отрицания, заключив его в скобки и поставив перед ним знак отрицания «NOT» или «!». Например, выражение!(ip.addr == 10.0.0.1) означает, что из буфера отображения необходимо убрать все пакеты, в которых встречается IP-адрес 10.0.0.1.

 

При необходимости создания сложного выражения фильтрации в меню «Apply as Filter» (рис.11) выбирайте команды, начинающиеся с многоточия, при этом новое выражение будет добавлено к результирующему выражению фильтрации.

 

Рисунок 11 - Контекстное меню создания фильтра

 

Поиск кадров в буфере, удовлетворяющих тем или иным критериям, осуществляется с помощью команды меню Edit→FindPacket. Диалоговое окно определения критериев поиска пакетовизображено на рис.12.

Рисунок 12 - Диалоговое окно поиска кадров

 

Критерии поиска можно определять в виде выражения фильтрации (Display filter), шаблона в шестнадцатеричном виде (Hex value) и текстовой строки (String) в кодировке ASCII и (или) Unicode. В первом случае можно использовать все допустимые выражения фильтрации и их логические комбинации. Во втором случае указывается шаблон для поиска в шестнадцатеричном коде. Поиск в строке может осуществляться в области общей информации о пакете (Packet list), в панели декодера протоколов (Packet details) и непосредственно в самом пакете (Packet bytes). Поиск может производиться вверх или вниз по списку пакетов (Direction).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: