Лабораторне заняття 7. Основи Ethernet та IP.
ДОДАТОК 7.3. ВСТАНОВЛЕННЯ І РОБОТА З WIRESHARK
Д.7.3.6.Налаштування фільтрів.
Якщо запустити сніфер без додаткових налаштувань, то він буде захоплювати всі пакети, які проходять через мережний інтерфейс. Найбільш часто користувача цікавлять тільки деякі пакети, які відповідають заданим критеріям. Для визначення цих критеріїв служать фільтри відображення та захоплення.
Існує два варіанти фільтрації пакетів: на етапі захоплення і на етапі відображення користувачу. У першому випадку ефективність роботи сніферу та споживані ним системні ресурси значно нижче, ніж у 2-му випадку.
При визначенні фільтру вказуються умови, яким повинні відповідати ті пакети, які повинні бути пропущені через фільтр. Назва полів та протоколів в фільтрі вводиться тільки маленькими літерами. Якщо текст фільтру має коректний зміст, поле фільтру підсвічується зеленим, якщо некоректний – червоним. Для задіяння фільтру необхідно його підтвердити кнопкою "Apply".
Фільтрацію можна проводити за протоколами або за значеннями полів в PDU (пакеті). Для застосування фільтрації за протоколом необхідно в поле вводу фільтра ввести назву протоколу. Наприклад фільтр за протоколом "arp" виводить тільки ARP-кадри (рис.Д.15).
Рис.Д.15. Приклад задавання фільтру через назву протоколу.
Для фільтрації за значенням поля в PDU, записується назва поля, оператор порівняння та значення з яким порівнюється це поле. Для формування тексту фільтру можна скористатися майстром побудови виразів фільтру, який викликається через кнопку "Expression...". Наприклад результат роботи майстра з рис.Д.16 буде текстове значення фільтру
modbus_tcp.func_code == 3
У таб. наводиться перелік найбільш вживаних для лабораторних робіт полів.
Поле |
Опис |
eth.addr |
Фізична адреса джерела або отримувача в кадрі Ethernet |
eth.dst |
Фізична адреса отримувача в кадрі Ethernet |
eth.src |
Фізична адреса джерела в кадрі Ethernet |
eth.len |
Довжина кадру Ethernet |
ip.addr |
Мережна адреса джерела або отримувача в пакеті протоколу IP |
ip.dst |
Мережна адреса отримувача в пакеті протоколу IP |
ip.src |
Мережна адреса джерела в пакеті протоколу IP |
ip.proto |
Позначення протоколу, який був інкапсульований в пакет IP |
tcp.ack |
Підтвердження (АСК) протоколу ТСР |
tcp.port |
Порт джерела і отримувача в сегменті протоколу TCP |
tcp.dstport |
Порт отримувача в сегменті протоколу TCP |
tcp.srcport |
Порт джерела в сегменті протоколу TCP |
udp.port |
Порт джерела або отримувача в сегменті протоколу UDP |
udp.dstport |
Порт отримувача в сегменті протоколу UDP |
udp.srcport |
Порт джерела в сегменті протоколу UDP |
dns.qry.name |
Ім’я мережного ресурсу в DNS запиті |
dns.resp.name |
Ім’я мережного ресурсу в DNS відповіді |
Рис.Д.16. Приклад задавання фільтру через поле протоколу.
Оператор порівняння може являти собою С-подібний оператор або символьне скорочення оператору, які наведені в таб.Д1
символьне скорочення |
C-like |
Опис та приклад |
eq |
== |
Рівне |
ip.src==10.0.0.5 |
||
ne |
!= |
Нерівне |
ip.src!=10.0.0.5 |
||
gt |
> |
Більше ніж |
frame.len > 10 |
||
lt |
< |
Менше ніж |
frame.len < 128 |
||
ge |
>= |
Більше або дорівнює |
frame.len >= 0x100 |
||
le |
<= |
Менше або дорівнює |
frame.len <= 0x20 |
Значення поля типу без-знакового цілого можна вводити в різних системах числення: 10-кова, 8-кова (починається з 0), 16-кова (починається з 0x). Наприклад, наступні значення еквівалентні.
ip.len le 1500
ip.len le 02734
ip.len le 0x436
Для того щоб задати умову для булевого поля, достатньо вказати це поле. Наприклад, наступне значення фільтру пропустить тільки ті пакети, для яких прапорець SYN в сегменті TCP буде виставлений
tcp.flags.syn
Байти або два байти адреси Ethernet можуть бути розділені розділювачами ":", "-" або ".". Наприклад:
eth.dst == ff:ff:ff:ff:ff:ff
eth.dst == ff-ff-ff-ff-ff-ff
eth.dst == ffff.ffff.ffff
Для визначення в умові текстового поля, його значення береться в лапки. Наприклад:
http.request.uri == "http://www.wireshark.org/"
При побудові фільтру можна комбінувати дві та більше умови, використовуючи логічні оператори. У якості умови може виконуватися як фільтрація за протоколами, так і фільтрація за значенням полів.
символьне скорочення |
C-like |
Опис та приклад |
not |
! |
заперечення not llc |
and |
&& |
конкатенація (логічне «І») ip.src==10.0.0.5 and tcp.flags.fin |
or |
|| |
альтернатива (логічне «АБО») ip.scr==10.0.0.5 or ip.src==192.1.1.1 |