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

 

Для сніфінгу мереж Ethernet зазвичай використовуються мережеві карти, переведені в режим прослуховування. Прослуховування мережі Ethernet вимагає підключення комп'ютера із запущеною програмою-сніфером до сегменту мережі, після чого хакерові стає доступним весь мережевий трафік, що відправляється і отримується комп'ютерами в даному мережевому сегменті. Ще простіше виконати перехоплення трафіку радіомереж, що використовують безпровідні мережеві ретранслятори. В цьому випадку не потрібно навіть шукати місця для підключення до кабелю.

Для технології сніфінгу можна використати программу-сніфер SpyNet, яку можна знайти на багатьох Web-сайтах. Програма SpyNet складається з двох компонентів - CaptureNet і PipeNet. Програма CaptureNet дозволяє перехоплювати пакети, передавані по мережі Ethernet на мережевому рівні, тобто у вигляді кадрів Ethernet. Програма PipeNet дозволяє збирати кадри Ethernet в пакети рівня прикладних програм, відновлюючи, наприклад, повідомлення електронної пошти, повідомлення протоколу HTTP (обмін інформацією з Web-сервером) і виконувати інші функції.

Для захисту від прослуховування мережі застосовуються спеціальні програми, наприклад AntiSniff, які здатні виявляти в мережі комп'ютери, зайняті прослуховуванням мережевого трафіку. Програми антисніфери для вирішення своїх завдань використовують особливу ознаку наявності в мережі прослуховуючих пристроїв. Мережева плата комп’ютера-сніфера повинна знаходитися в спеціальному режимі прослуховування. Знаходячись в режимі прослуховування, мережеві комп'ютери особливим чином реагують на IP-дейтаграми, що посилаються на адресу тестованого хосту. Наприклад, хости, що прослуховують як правило, обробляють весь трафік, що поступає, не обмежуючись тільки відісланими на адресу хосту дейтаграммами. Є і інші ознаки, що вказують на підозрілу поведінку хоста, які здатна розпізнати програма AntiSniff [11].

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

Фальшиві ARP запити

Щоб перехопити і замкнути на себе процес мережевої взаємодії між двома хостами А і В зловмисник може підмінити IP-адреси взаємодіючих хостів своєю IP-адресою, направивши хостам А і В сфальсифіковані повідомлення ARP (Address Resolution Protocol - протокол дозволу адрес).

Для перехоплення мережевого трафіку між хостами А і В хакер нав'язує цим хостам свою IP-адресу, щоб А і В використовували цю фальсифіковану IP-адресу при обміні повідомленнями. Для нав'язування своєї IP-адреси хакер виконує наступні операції.

·Зловмисник визначає МАС-адреси хостів А і В, наприклад, за допомогою команди nbtstat з пакету W2RK.

·Зловмисник відправляє на виявлені МАС-адреси хостів А і В повідомлення, що є сфальсифікованими ARP-відповідями на запити дозволу IP-адресів хостів в МАС-адреси комп'ютерів. Хосту А повідомляється, що IP-адресі хосту В відповідає МАС-адреса комп'ютера зловмисника; хосту В повідомляється, що IP-адресі хосту А також відповідає МАС-адреса комп'ютера зловмисника.

·Хости А і В заносять отримані МАС-адреси в свої кеші ARP і далі використовують їх для відправки повідомлень один одному. Оскільки IP-адресам А і В відповідає МАС-адреса комп'ютера зловмисника, хости А і В, нічого не підозрюючи, спілкуються через посередника, здатного робити з їх посланнями що завгодно.

Для захисту від таких атак мережеві адміністратори повинні підтримувати базу даних з таблицею відповідності МАС-адрес і IP-адрес своїх мережевих комп'ютерів. За допомогою спеціального програмного забезпечення, наприклад, утиліти arpwatch періодично обстежувати мережу і виявляти невідповідності [11].



Фальшива маршрутизація

Щоб перехопити мережевий трафік, зловмисник може підмінити реальну ІР-адресу мережевого маршрутизатора своєю, виконавши це, наприклад, з допомогою сфальсифікованих ICMP-повідомлень Redirect. Отримане повідомлення Redirect хост А сприймає як відповідь на дейтаграмму, відіслану іншому хосту, наприклад, В. Свої дії на повідомлення Redirect хост А визначає, виходячи з вмісту отриманого повідомлення Redirect, і якщо в Redirect задати перенаправлення дейтаграм з А в В по новому маршруту, саме це хост А і зробить.

Для виконання помилкової маршрутизації зловмисник повинен знати деякі подробиці про організацію локальної мережі, в якій знаходиться хост А, в тому числі, IP-адресу маршрутизатора, через яку відправляється трафік з хосту А у В. Знаючи це, зловмисник сформує IP-дейтаграмму, в якій IP-адреса відправника означена як IP-адреса маршрутизатора, а одержувачем вказаний хост А. Також в дейтаграму включається повідомлення ICMP Redirect з полем адреси нового маршрутизатора, встановленим як IP-адреса комп'ютера зловмисника. Отримавши таке повідомлення, хост А відправлятиме всі повідомлення за IP-адресою комп'ютера зловмисника [10].

Для захисту від такої атаки слід відключити (наприклад, за допомогою брандмауера) на хості А обробку повідомлень ICMP Redirect, а виявити ІР-адресу комп'ютера зловмисника може команда tracert. Ці утиліти здатні знайти в локальній мережі додатковий, непередбачений при інсталяції, маршрут, якщо звичайно адміністратор мережі проявить пильність.

Приведені вище приклади перехоплень (якими можливості зловмисників далеко не обмежуються) переконують в необхідності захисту даних, що передаються по мережі, якщо в даних міститься конфіденційна інформація. Єдиним методом захисту від перехоплень мережевого трафіку є використання програм, що реалізовують криптографічні алгоритми і протоколи шифрування, що дозволяють запобігти розкриттю і підміні секретної інформації. Для вирішення таких завдань криптографія надає засоби для шифрування, підпису і перевірки достовірності повідомлень, що передаються по захищених протоколах [12].

Перехоплення ТСР-з’єднання

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

Протокол TCP (Transmission Control Protocol - протокол управління передачею) є одним з базових протоколів транспортного рівня OSI, що дозволяє встановлювати логічні з'єднання по віртуальному каналу зв'язку. По цьому каналу передаються і приймаються пакети з реєстрацією їх послідовності, здійснюється управління потоком пакетів, організовується повторна передача спотворених пакетів, а в кінці сеансу канал зв'язку розривається.

Протокол TCP є єдиним базовим протоколом з сімейства TCP/IP, що має складну систему ідентифікації повідомлень і з'єднання.

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

URG - біт терміновості;

АСК - біт підтвердження;

PSH - біт перенесення;

RST - біт поновлення з'єднання;

SYN - біт синхронізації;

FIN - біт завершення з'єднання.

Розглянемо порядок створення TCP-з’єднання.

1. Якщо хосту А необхідно створити TCP-з’єднання з хостом В, то хост А посилає хосту В наступне повідомлення: A -> B: SYN, ISSa

Це означає, що в повідомленні, яке передається хостом А встановлений біт SYN (Synchronize sequence number - номер послідовності синхронізації), а в полі порядкового номера встановлено початкове 32-бітне значення ISSa (Initial Sequence Number - початковий номер послідовності).

2. У відповідь на отриманий від хосту А запит хост В відповідає повідомленням, в якому встановлений біт SYN і встановлений біт АСК. У полі порядкового номера хост В встановлює своє початкове значення лічильника – ISSb. Поле номера підтвердження при цьому міститиме значення ISSa, отримане в першому пакеті від хосту А і збільшене на одиницю. Таким чином, хост В відповідає таким повідомленням: B-> A: SYN, ACK, ISSb, ACK(ISSa+1)

3. Нарешті, хост А посилає повідомлення хосту В, в якому: встановлений біт АСК; поле порядкового номера містить значення ISSa + 1; поле номера підтвердження містить значення ISSb + 1. Після цього ТСР-з’єднання між хостами А і В вважається встановленим:

A-> B: ACK, ISSa+1, ACK(ISSb+1)

4. Тепер хост А може посилати пакети з даними на хост В по тільки що створеному віртуальному TCP-каналу:

А -> В: АСК, ISSa+1, ACK(ISSb+1); DATA

Тут DATA позначає дані.

Із розглянутого вище алгоритму створення TCP-з’єднання видно, що єдиними ідентифікаторами TCP-абонентів і TCP-з’єднання є два 32-бітні параметри порядкового номера і номера підтвердження - ISSa і ISSb. Отже, якщо хакерові вдасться дізнатися поточні значення полів ISSa і ISSb, то йому ніщо не перешкодить сформувати сфальсифікований TCP-пакет. Це означає, що хакерові досить підібрати поточні значення параметрів ISSa і ISSb пакету TCP для даного TCP-з’єднання, послати пакет з будь-якого хосту Інтернету від імені клієнта даного TCP-підключення, і даний пакет буде сприйнятий як дійсний.

Таким чином, для здійснення описаної вище атаки необхідною і достатньою умовою є знання двох поточних 32-бітових параметрів і ISSb, що ідентифікують TCP-з’єднання. Розглянемо можливі способи їх отримання. У разі, коли хакреський хост підключений до мережевого сегменту, що атакується, завдання отримання значень ISSa і ISSb є тривіальним і вирішується шляхом аналізу мережевого трафіку. Отже, потрібно чітко розуміти, що протокол TCP дозволяє захистити з'єднання тільки у випадку-неможливості перехоплення хакером повідомлень, які передаються по даному з'єднанню, тобто тільки у разі, коли хакреський хост підключений до мережевого сегменту, відмінного від сегменту абонента TCP-з’єднання [4].

Тому найбільший інтерес для хакера представляють міжсегментні атаки, коли він і його мета знаходяться в різних сегментах мережі. В цьому випадку завдання отримання значень ISSa і ISSb не є тривіальним. Для вирішення даної проблеми на сьогодні придумано тільки два способи.

·Математичний прогноз початкового значення параметрів TCP-з'єднання за екстраполяцією попередніх значень ISSa і ISSb.

·Використання вразливостей ідентифікації абонентів TCP-з’єднання на rsh-серверах Unix.

Перше завдання вирішується шляхом поглиблених досліджень реалізації протоколу TCP в різних операційних системах і сьогодні має тільки теоретичне значення. Друга проблема вирішується з використанням вразливостей системи Unix ідентифікації довірених хостів. Довіреним по відношенню до даного хосту А називається мережевий хост В, користувач якого може підключитися до хосту А без аутентифікації за допомогою r-служби хосту А. Маніпулюючи параметрами TCP-пакетів, хакер може спробувати видати себе за довірений хост і перехопити TCP-з’єднання з хостом, що атакується [5].

Єдиним порятунком від перехоплення даних є їх шифрування, тобто криптографічні методи захисту. Посилаючи в мережі повідомлення, слід заздалегідь припускати, що кабельна система мережі абсолютно уразлива, і будь-який хакер, що підключився до мережі, зможе виловити з неї всі передані секретні повідомлення. Є дві технології вирішення цієї задачі - створення мережі VPN і шифрування самих повідомлень. Всі ці завдання можна вирішити за допомогою пакету програм PGP Desktop Security [12].

 

Комутований доступ до мереж

 

Телефонні лінії зв'язку, підключені до корпоративної мережі, по суті є якнайкращим способом вторгнення в комп'ютерну систему організації. На входах в підключений до Інтернету сервер сьогодні, як правило, встановлені брандмауери, а ось телефонні лінії, невідомо як і ким підключені до комп'ютерів за допомогою модемів – це реалії сьогодення. Дуже багато співробітників організацій підключають до своїх офісних комп'ютерів модеми для організації входів зі своїх домашніх комп'ютерів.

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

Ці звуки є не що інше, як сигнали, за допомогою яких модеми зв'язуються один з одним. Знаючи протокол взаємодії модемів, частоти, послідовності і тривалість сигналів - для фахівців секретів тут немає, можна написати програму, що автоматизує процес пошуку модемних ліній зв'язку, здатну перебирати набори телефонних номерів із заданого діапазону, виявляти модемні лінії зв'язку і записувати отримувані повідомлення в спеціальний журнал [4].

На сьогоднішній день існує безліч програм-сканерів, найвідоміші з них – це утиліта Login Hacker, що дозволяє застосовувати для завдань сканування сценарії, утиліта THN-Scan і ToneLock компанії Minor Threat&Mucho Maas. Дві останні утиліти запускаються з командних рядків і не мають графічного інтерфейсу.

Серед усіх програм сканерів можна виділити програму PhoneSweep компанії Sandstorm. Ця утиліта дозволяє сканувати відразу декілька телефонних ліній, працюючи з декількома модемами одночасно, виявляти віддалену програму, що приймає телефонні дзвінки, і навіть підбирати пароль для доступу до цієї віддаленої програми. Демо-версія програми PhoneSweep дозволяє робити майже все, окрім виконання реальних дзвінків, замінюючи їх імітацією.

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

Перед виконання атаки кваліфікований хакер завжди виконує попередній збір даних про організацію, який полягає в пошуку всіх відомостей, які хакер може зібрати про комп'ютерну систему, що атакується. Мається на увазі інформація, що містить звіт про комп'ютерну мережу організації. На хакреських сайтах можна знайти файли з результатами сканування широкого діапазону телефонних номерів. У цих файлах можна знайти безліч відомостей про телефони різних організацій з вказівкою програми, що приймає дзвінки, і навіть відомостей про паролі доступу [12].

 

Сканер PhoneSweep 4.4

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

Програма PhoneSweep позбавлена цих недоліків і пропонує всім користувачам могутні засоби тестування модемних ліній на предмет їх захищеності від несанкціонованого доступу. Програма PhoneSweep володіє такими можливостями.

·Працює на операційних системах Windows 95/98/NT/2000/XP.

·Забезпечена зручним графічним інтерфейсом.

·Дозволяє тестувати системи захисту на стійкість до атак «грубою

силою» з генерацією пар логін/пароль для злому з'єднань за протоколом РРР (Point-to-Point protocol - Протокол двоточкового з'єднання).

·Дозволяє створювати звіти, що налаштовуються.

·Дозволяє працювати з декількома модемами, від 1 до 4.

·Дозволяє зупиняти і перезапускати сканування з різними налаштуваннями, причому без всякої втрати отриманих даних.

 

Дата: 2019-07-24, просмотров: 209.