Пользовательский интерфейс программы

ВЫПОЛНИТЬ!

5.  В командной строке сеанса MS-DOS для очистки кэша протокола ARP вы- полните команду arp -d. В Ethereal для запуска процесса захвата нажми- те    кнопку    «Capture».    В    командной    строке    выполните    команду ping <имя_сервера> (в качестве параметра команды можно использо- вать IP-адрес сервера). По завершении команды Ping  остановите захват, нажав кнопку «Stop».

На экране монитора в программе Ethereal вы увидите несколько панелей с отображением сетевых пакетов, только что записанных в буфер. Общий вид окна приложения представлен на рис. 1.2. Пользовательский интерфейс про- граммы содержит следующие компоненты:

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

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

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

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

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

Панель со списком пакетов построчно отображает характеристики того или иного пакета (номер по порядку в буфере, время захвата, адреса источни-

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

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

шестнадцатеричном виде.

Рис. 1.2. Общий вид приложения Ethereal

1.4. Фильтр отображения пакетов

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

ВЫПОЛНИТЬ!

6.  Для отображения только ICMP-сообщений в строке ввода «Filter» (рис. 1.2)

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

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

Выражения фильтрации и их значения

Таблица 1.1

Выражение Значение выражения и пример записи

Значение выражения и пример записи

frame.marked

Маркированный кадр

frame.marked == true

frame.number

Номер кадра

frame.number == 150

frame.time

Время захвата кадра

frame.time == "Feb 1, 2006 09:00:00"

frame.pkt_len

Длина кадра

frame.pkt_len == 48

eth.dst

Заголовок Ethernet: MAC-адрес назначения

eth.dst == 01:00:5e:00:00:02

eth.src

Заголовок Ethernet: MAC-адрес источника

eth.src == 00:a0:cc:30:c8:db

eth.type

Заголовок Ethernet: тип вложенного протокола

eth.type == 0x0800

arp.hw.type

Заголовок  протокола  ARP:  тип  протокола  канального уровня

arp.hw.type == 0x0001

arp.proto.type

Заголовок протокола ARP: тип протокола сетевого уровня

arp.proto.type == 0x0800

arp.opcode

Заголовок протокола ARP: код операции

arp.opcode == 0x0001

arp.src.hw_mac

Заголовок протокола ARP: MAC-адрес источника

arp.src.hw_mac == 00:10:4b:30:c4:4a

arp.src.proto_ipv

4

Заголовок протокола ARP: IP-адрес источника

arp.src.proto_ipv4 == 10.1.0.1

arp.dst.hw_mac

Заголовок протокола ARP: MAC-адрес назначения

arp.dst.hw_mac == 00:00:00:00:00:00

arp.dst.proto_ipv

4

Заголовок протокола ARP: IP-адрес назначения

arp.dst.proto_ipv4 == 10.1.0.2

ip.version

Заголовок протокола IP: версия протокола IP

ip.version == 4

ip.hdr_len

Заголовок протокола IP: длина заголовка

ip.hdr_len == 24

ip.flags.df

Заголовок протокола IP: флаг фрагментации

ip.flags.df == 0

ip.flags.mf

Заголовок протокола IP: флаг не последнего фрагмента

ip.flags.mf == 0

Выражение

Значение выражения и пример записи

ip.frag_offset

Заголовок протокола IP: смещение фрагмента

ip.frag_offset == 0

ip.ttl

Заголовок протокола IP: время жизни пакета

ip.ttl == 1

ip.proto

Заголовок протокола IP: протокол вышестоящего уровня

ip.proto == 0x01

ip.src

Заголовок протокола IP: IP-адрес источника

ip.src == 10.0.0.99

ip.dst

Заголовок протокола IP: IP-адрес назначения

ip.dst == 224.0.0.2

ip.addr

Заголовок протокола IP: IP-адрес

ip.addr == 10.2.0.0/16

tcp.srcport

Заголовок протокола IP: порт источника

tcp.srcport == 1054

tcp.dstport

Заголовок протокола IP: порт назначения

tcp.dstport == 21

tcp.seq

Заголовок протокола IP: последовательный номер

tcp.seq == 4856133

tcp.ack

Заголовок протокола IP: номер подтверждения

tcp.ack == 4856134

tcp.flags.urg

Заголовок протокола IP: бит присутствия срочных данных

tcp.flags.urg == 0

tcp.flags.ack

Заголовок протокола IP: бит присутствия подтверждения

tcp.flags.ack == 1

tcp.flags.push

Заголовок протокола IP: бит выталкивания данных

tcp.flags.push == 0

tcp.flags.reset

Заголовок протокола IP: бит сброса соединения

tcp.flags.reset == 0

tcp.flags.syn

Заголовок протокола IP: бит синхронизации сессии

tcp.flags.syn == 1

tcp.flags.fin

Заголовок протокола IP: бит завершения сессии

tcp.flags.fin == 0

tcp.window_size

Заголовок протокола IP: размер приемного окна

tcp.window_size == 8760

udp.srcport

Заголовок протокола UDP: порт источника

udp.srcport == 2364

udp.dstport

Заголовок протокола UDP: порт назначения

udp.dstport == 53

Выражение Значение выражения и пример записи

Значение выражения и пример записи

icmp.type

Заголовок протокола ICMP: тип сообщения

icmp.type == 8

icmp.code

Заголовок протокола ICMP: уточняющий код сообщения

icmp.code == 0x00

В примерах записи выражений табл. 1.1 приведены выражения с опера- цией сравнения «Равно», которая записывается с помощью двойного знака ра- венства «==» (допустимо использование «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.

ВЫПОЛНИТЬ!

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

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

!(ip.addr == 10.0.0.1) означает, что из буфера отображения необхо-

димо убрать все пакеты, в которых встречается IP-адрес 10.0.0.1.

ВЫПОЛНИТЬ!

8.  Объясните разницу между результатами использования выражений фильт- рации !(ip.addr == X.X.X.X) и ip.addr !== X.X.X.X. Для вы- полнения упражнения в выражениях фильтрации используйте вместо адре- са X.X.X.X реальный IP-адрес вашего узла.

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

a.  && (AND) — логическое И,

пример: (ip.dst==10.0.0.1) AND tcp.flags.syn;

b.  || (OR) — логическое ИЛИ,

пример: (ip.addr==10.0.0.1) OR (ip.addr==10.0.0.2).

Другой удобный способ ввода выражения фильтрации состоит в сле- дующем. На  панели декодера протоколов отображается требуемое поле, в контекстном меню выбирается пункт «Apply as Filter» и далее исполняется либо команда «Selected», либо «Not Selected» в зависимости от задачи фильт- рации (рис. 1.3).

ВЫПОЛНИТЬ!

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

При необходимости создания сложного выражения фильтрации в меню

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

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

ICMP.

Рис. 1.3. Контекстное меню создания фильтра

Строка, как видно из предыдущего примера, записывается в кавычках. Запись массива байт осуществляется побайтно в шестнадцатеричном виде с разделителем «.» или «:», например 00.45.f5.2d.

Используя символ «,» в указателе диапазона, можно перечислить не-

сколько непересекающихся диапазонов, объединив их в одном операнде. На-

пример, выражение tcp[2,10,13-16] == 00.01.c0.f8.01.66 сравни-

вает в заголовке протокола TCP поле «Тип обслуживания» с «0x00», поле

«Протокол» с «0x01» и поле «IP-адрес источника» с «0xc0f80166».

ВЫПОЛНИТЬ!

11. Отобразите ICMP-ответы, используя в  выражении фильтрации операнд

«frame» с указателем диапазона.

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

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

Быстро  вернуться  к  тому  или  иному  ранее  вводимому  выражению фильтрации можно с помощью списка истории ввода, доступ к   которому осуществляется нажатием на кнопку с символом «?», расположенную в стро- ке фильтра (не забывайте нажимать кнопку «Apply» для применения того или иного фильтра к буферу кадров).

Источник: Андрончик А. Н., Богданов В. В., Домуховский Н. А., Коллеров А. С., Синадский Н. И., Хорьков Д. А., Щербаков М. Ю., Защита информации в компьютерных сетях. Практический курс

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий