Самостійна робота №4

Використання програмних аналізаторів трафіку (на прикладі Wireshark)

 

Мета роботи: отримати практичні навички використання програмного аналізатору протоколів Wireshark

 

Методичні вказівки

 

Аналізатор трафіку, або сніфер (від англ. to sniff нюхати) – мережевий аналізатор трафіку, програма або програмно-апаратний пристрій, призначений для перехоплення і подальшого аналізу, або тільки аналізу мережевого трафіку, призначеного для інших вузлів.

Під час роботи сніфера мережевий інтерфейс перемикається в т.з. «режим прослуховування» (Promiscuous mode), що і дозволяє йому одержувати пакети, адресовані іншим інтерфейсам в мережі.

Перехоплення трафіку може здійснюватися:

-     звичайним «прослуховуванням» мережевого інтерфейсу (метод ефективний при використанні в сегменті концентраторів (hub) замість комутаторів (switch), в інших випадках метод малоефективний, оскільки на сніфер потрапляють лише окремі фрейми);

-     підключенням сніфера в розрив каналу;

-     відгалуженням (програмним або апаратним) трафіку і направленням його копії на сніфер;

-     через аналіз побічних електромагнітних випромінювань і відновлення таким чином трафіку, що прослуховується;

-     через атаку на канальному (MAC-spoofing) або мережному рівні (IP-spoofing), що приводить до перенаправлення трафіку жертви або всього трафіку сегмента на сніфер з подальшим поверненням трафіку на належну адресу.

На початку 1990-х широко застосовувався хакерами для захоплення призначених для користувача логінів і паролів, які у ряді мережних протоколів передаються в незашифрованому або слабозашифрованном вигляді. Широке розповсюдження хабів дозволяло захоплювати трафік без великих зусиль у великих сегментах мережі практично без ризику бути знайденим.

Сніффери застосовуються як в мирних, так і в деструктивних цілях. Аналіз трафіку, що пройшов через сніфер, дозволяє:

-     знайти паразитний, вірусний і закільцьований трафік, наявність якого збільшує завантаження мережного устаткування і каналів зв’язку (хоча сніфери тут і малоефективні; як правило, для цих цілей використовують збір різноманітної статистики серверами і активним мережним облажнанням і її подальший аналіз);

-     виявити в мережі шкідливе і несанкціоноване ПО, наприклад, мережні сканери, флудери, троянські програми, клієнти пірінгових мереж і інші (це звичайно роблять за допомогою спеціалізованих сніферів – моніторів мережної активності);

-     перехопити будь-який незашифрований призначений для користувача трафік з метою отримання паролів і іншої інформації;

-     локалізувати несправність мережі або помилку конфігурації мережевих агентів (з цією метою сніфери часто застосовуються системними адміністраторами).

Оскільки в «класичному» сніфері аналіз трафіку відбувається вручну, з застосуванням лише найпростіших засобів автоматизації (аналіз протоколів, відновлення TCP-потоку), то він підходить для аналізу лише невеликих його об’ємів.

 

 

 

Завдання для роботи

 

Для виконання даної роботи вам знадобиться програма VMware, а також образи віртуальних машин з операційною системою Windows 2003 Server та Windows XP. Готові образи віртуальних машин вам будуть надані викладачем.

Для того щоб перехоплювати PDUs, які передаються мережею, потрібно мати фізичне підключення до відповідної мережі, а також запущену копію Wireshark на комп’ютері.

Головне вікно програми виглядає наступним чином (див. рис. 2).

 

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip [1].png

Рисунок 2 – Головне вікно програми Wireshark

 

Щоб розпочати захоплення пакетів потрібно перейти до меню «Capture» та обрати пункт «Options». У вікні, що відкриється, можна налаштувати опції та параметри, які визначають скільки та які саме дані будуть перехоплені (рис. 3).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip.png

Рисунок 3 – Вікно налаштування параметрів захоплення трафіку

 

Перш за все, необхідно впевнитись, що обрано потрібний мережевий інтерфейс. Для цього використовується меню «Interface». Наступні параметри, які потрібно перевірити:

           чи працює мережевий адаптер у, так званому, promiscuous mode. Якщо даний режим не обрано, то програма зможе захоплювати лише ті пакети, які були явно адресовані комп’ютеру, на якому вона встановлена;

           чи ввімкнено network name resolution. Дана опція дозволяє Wireshark транслювати знайдені мережеві адреси у імена (див. рис. 4).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip [1].png

Рисунок 4 – Вікно налаштування параметрів захоплення трафіку з заданими властивостями захоплення

 

Після того, як налаштування завершені, потрібно натиснути кнопку Start. Це розпочне процес перехоплення файлів та викличе вікно статусу (див. рис. 5).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip.png

Рисунок 5 – Вікно статусу

У даному вікні зображено результат виконання команди ping.

Для того щоб перервати процес потрібно натиснути на кнопку Stop. В результаті захоплення пакетів буде припинено, а програма повернеться до головного вікна (див. рис. 6).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip.png

Рисунок 6 – Головне вікно програми з результатами захоплення трафіку

 

Головне вікно програми складається із трьох частин:

           Packet List Pane – містить стислу інформацію, про кожний захоплений пакет. В цій панелі можна обрати потрібний пакет і його зміст відобразиться у двох інших панелях;

           Packet Details Pane – дозволяє вивчити зміст пакету більш детально (інформація про протокол, службові поля пакету);

           Packet Bytes Pane – показує фактичний зміст обраного пакету у шістнадцятковому коді.

Завдання 1. Перехоплення службових пакетів протоколу ICMP

Запустіть програму Wireshark на комп’ютері з Windows XP. Переконайтесь, що всі опції налаштовані так, як описано вище та ввімкніть процес захоплення пакетів.

Із командного рядка Windows XP виконайте команду PING 192.168.1.254. Після того, як ви отримали повідомлення про успішне виконання програми, перейдіть до вікна Wireshark та припинить перехоплення пакетів.

Вивчить головне вікно програми та знайдіть відповідні пакети. У разі успішного виконання попереднього етапу Packet List Pane матиме приблизно наступний вигляд (рис. 7).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip [1].png

Рисунок 7 – Packet List Pane

 

У даному випадку пакети сформовані командою ping знаходяться у 6-9, 11, 12, 14 та 15 рядках. Знайдіть відповідні пакети у власному списку.

З’ясуйте:

           Який протокол використовує команда ping? Яка повна назва цього протоколу?

           Які два основні типи повідомлень команди ping?

Оберіть перший ехо-пакет. У Packet Detail pane буде представлена настуна інформація (див. рис. 8).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip.png

Рисунок 8 – Packet Detail pane з інформацією про обраний пакет

 

Розгорніть кожен пункт для отримання більш детальної інформації (рис. 9).

Описание: Описание: C:\Users\Vladislav\Desktop\ScreenClip [1].png

Рисунок 9 – Packet Detail pane із деталізованою інформацією про обраний пакет

 

Вивчить дану інформацію. Спробуйте знайти заголовки пакетів різних рівнів (канального, мережевого тощо). Знайдіть всі поля «Source» та «Destination». Які два типи адрес використовуються в якості адрес відправника та одержувача? Перелічить всі протоколи, які містяться у кадрі Ethernet.

 

Завдання 2. Перехоплення пакетів протоколу FTP

Запустіть програму Wireshark на Windows XP та ввімкніть захват пакетів. Після чого відкрийте командний рядок і введіть в ньому команду FTP 192.168.1.254. Після встановлення з’єднання введіть наступні дані: userid – USER; passwordnetworks. Далі за допомогою команди ls ознайомтесь із вмістом FTP-сервера та спробуйте завантажити який-небудь файл. Завантаження файлу здійснюється за допомогою команди get. Нижче приведений приклад діалогу з FTP-сервером.

 

C:\Documents and Settings\ccna1>ftp eagle-server.example.com

Connected to eagle-server.example.com.

220 Welcome to the eagle-server FTP service.

User (eagle-server.example.com:(none)): anonymous

331 Please specify the password.

Password:<ENTER>

230 Login successful.

ftp> get /pub/eagle_labs/eagle1/chapter1/gaim-1.5.0.exe

200 PORT command successful. Consider using PASV.

150 Opening BINARY mode data connection for

pub/eagle_labs/eagle1/chapter1/gaim-1.5.0.exe (6967072 bytes).

226 File send OK.

ftp: 6967072 bytes received in 0.59Seconds 11729.08Kbytes/sec.

 

Після завершення завантаження файлу виконаєте команду quit і зупиніть захоплення пакетів в програмі Wireshark.

В головному вікні програми Wireshark знайдіть пакети, пов’язані з  передачею файлу за допомогою протоколу FTP. Це повинні бути PDU четвертого і сьомого рівня моделі OSI.

Обмін інформацією в рамках протоколу FTP має три фази:

           встановлення з’єднання і підключення до серверу;

           завантаження файлів;

           відключення від серверу і розрив з’єднання.

Знайдіть і запишіть приклади повідомлень, якими обмінюються сервер і клієнт під час кожної з фаз.

Виберіть один з пакетів, що відносяться до першої фази (підключення до серверу). Які протоколи були інкапсульовані в даний пакет?  Якими командами і відповідями на команди обмінюються сервер і клієнт?

Знайдіть пакет, що містить ім’я користувача і його пароль. Вивчіть вміст Packet Byte pane. Чи можете ви прочитати ці дані? Як це характеризує захищеність протоколу FTP?

Знайдіть пакети, які відповідають фактичній передачі файлу між сервером і клієнтом. Спробуйте знайти пакет, що містить ім’я завантажуваного файлу.

Вивчіть пакети, які відповідають третій фазі (відключення від серверу і розриву з’єднання). Якими командами і відповідями на команди обмінюються сервер і клієнт?

Завдання 3. Перехоплення пакетів протоколу HTTP

Ввімкніть захоплення пакетів в програмі Wireshark на Windows XP. Після цього запустіть веб-браузер і введіть в ньому як адресу 192.168.1.254. Після того, як сторінка буде завантажена, зупиніть захоплення пакетів.

В головному вікні програми Wireshark знайдіть пакети TCP і HTTP, пов’язані з передачею веб-сторінки. Чи є якась схожість при обміні даними протоколами HTTP і FTP?

В панелі Packet List виберіть пакет HTTP, який відзначений як «text/html» в стовпці Info. В панелі Packet Detail розверніть пункт «Line-based text data: html». Яка інформація міститься там?

Знайдіть пакети, відповідні етапу встановлення з’єднання між веб-браузером і веб-сервером. За допомогою яких команд клієнт запрошує у веб-серверу вміст веб-сторінки?

 

Питання до захисту роботи

1.   Що розуміється під терміном «мережевий протокол»?

2.   Призначення та структура моделі OSI?

3.   Які функції виконує транспортний рівень моделі OSI?

4.   Які функції виконує мережевий рівень?

5.   Які функції виконує канальний рівень моделі OSI?

6.   За що відповідають підрівні LLC и MAC?

7.   На якому рівні моделі OSI взаємодіють програми, забезпечуючи передачу повідомлень електронної пошти?

8.   У якій послідовності здійснюється інкапсуляція даних?

9.   У чому відмінність фрагментів інформації між собою: сегмент, пакет, кадр?