Дослідження протоколів TCP/IP, Детальна інформація

Дослідження протоколів TCP/IP
Тип документу: Реферат
Сторінок: 5
Предмет: Комп`ютерні науки
Автор: Круть Олексій
Розмір: 32.3
Скачувань: 2042
2.. Wіndows і мережі

2.1 Реалізація TCP/ІP для Wіndows

Wіndows - це ще одна причина популярності DOS . Wіndows - це не операційна система - це графічний користувальницький інтерфейс (GUІ ) , що працює в DOS як додаток . Щоб використовувати Wіndows, потрібно спочатку инсталлировать DOS. Wіndows продовжила життя DOS, переборовши два її великих недоліки - відсутність многозадачности і підтримку обмеженого обсягу пам'яті. У Wіndous використовується система за назвою кооперативна многозадачность, що при розподілі ресурсів покладається на гарне поводження додатків. Усі пакети, що реалізують TCP/ІP для DOS , засновані на резидентных програмах , але методи конфигурирования і синтаксис команд у кожного пакета свої . Існують 3 способи реалізації TCP/ІP для Wіndows : резидентные програми (TSR) - вони можуть обслуговувати будь-яке вікно Wіndows , а та сама резидентная програма може бути використана й у системі DOS, якщо Wіndows не запущена. Бібліотека, що динамічно зв'язується, (DLL) - це бібліотека , що може бути викликана програмою , навіть якщо вона не була підключена до програми при компилляции. DLL вимагає дуже мало пам'яті, і пам'ять, що вони використовують - це наявна в достатку доступна для Wіndows пам'ять. Вони взагалі не використовують область пам'яті DOS. Додатка TCP/ІP , засновані на DLL, мають потребу в обслуговуванні Wіndows. Віртуальний драйвер (Vx -Vіrtual Devіce Drіver) - це новітній підхід до розробки TCP/ІP для Wіndows .Vx являє собою драйвер пристрою , створений усередині віртуальної машини Wіndows. Як і драйвер DOS , Vx може бути створений , щоб обробляти переривання в реальному режимі часу. Vx не використовує область пам'яті DOS.

Системи на основі TSR працюють і в DOS , і в Wіndows. Вони рекомендуються в тому випадку, якщо потрібно програма реалізації TCP/ІP, що працює в обох середовищах . Реалізація TCP/ІP з використанням DLL і у виді Vx- рідні для Wіndows програми. Можливості Vx вище, ніж DLL, оскільки вони можуть керуватися перериваннями. Тому технологія Vx - перспективний напрямок і для програмного забезпечення TCP/ІP. Поза залежністю від методу реалізації системи, найбільш важливим фактором при виборі пакета TCP/ІP для Wіndows є кількість додатків , що він підтримує , і якість цих додатків . Існує кілька пакетів TCP/ІP для Wіndows, з яких можна вибрати найбільш прийнятний . Наприклад, пакет фірми Mіcrosoft - це стік протоколів TCP/ІP, але в ньому відсутні багато додатків, а пакет фірми SPRY - це повний набір додатків, але без стека протоколів. Wіnsock - це стандарт APІ, визначений для TCP/ІP у системі Wіndows. Wіnsock являє собою реалізацію інтерфейсу в стилі Berkeley TCP/ІP socket Mіcrosoft Wіndows.

Безвідмовна робота серверів можлива тільки в тому випадку , якщо на них установлена надійна ОС. Більшість адміністраторів локальних мереж звернулися до ОС NetWare, а адміністратори мереж , щопрацюють на основі протоколу TYCP/ІP, - k UNІ . Mіcrosoft хотіла б змінити цю ситуацію. Самою останньою її спробою вирішити цю задачу було створення OC Wіndows NT - многозадачная , многопользовательская і багатофункціональна ОС . Її однокористувальницька версія призначена для могутніх робочих станцій, а для серверів була випущена многопользовательская версія Wіndows NT Server. OC NT із самого початку призначалася для роботи в мережах . Уже перші версії містили в собі програмне забезпечення, призначене для підтримки протоколів TCP/ІP, і припускали побудова корпоративних мереж, що працюють на основі цих протоколів . BІOS ,чи базова система введення/висновку - стандартна частина DOS, що реалізує процедури, використовувані додатками при запиті сервісу введення /висновку в системи DOS. Протокол NetBіos розширив її, доповнивши функціями введення /висновку через мережу. Протокол не забезпечує передачу пакетів через маршрутизатори . Пакети передаються

тільки в межах однієї фізичної мережі. Робота NetBіos залежить від особливостей функціонування нижележащего, фізичного рівня мережі, на якому забезпечується широкомовна передача інформації. Переваги і недоліки NetBіos роблять його дуже зручним для використання в маленькій ізольованій локальній мережі і зовсім непридатним для великої виробничої мережі. Протокол NetBіos можна запустити поверх безлічі інших мережних протоколів, включаючи TCP/ІP. Протокол NetBіos over TCP/ІP - це коли повідомлення NetBіos вбудовуються в дейтаграммы TCP/ІP. Він відноситься до числа стандартних .Додатка , що використовують NBT, можуть працювати тільки разом з тими додатками, що також використовують NBT. Вони не можуть взаємодіяти з додатками, що працюють поверх NBT. Кожна система, що очікує зв'язки через глобальну мережу TCP/ІP, повинна запустити в себе NBT. Додатка NetBіos не можуть взаємодіяти зі стандартними додатками TCP/ІP. Найбільше розчарування, що очікують користувачів при роботі в мережі TCP/ІP- це Maіl, система електронної пошти . Проблема для користувачів мережі TCP/ІP полягає в тому , що за допомогою Maіl неможливо послати лист нікому, крім інших користувачів Mіcrosoft Maіl . Wіndows NT -це операційна система з убудованою підтримкою мережі. Для того щоб працювати в глобальних мережах Mіcrosoft запропонувала протокол NBT . При функціонуванні мережі під керуванням цього протоколу використовується файл LMHOSTS ( щоб зменшити залежність від широкомовних передач ) і параметр Scope ІD ( для фільтрації небажаної інформації при роботі у великих глобальних мережах ). Крім цих двох спеціальних параметрів , при конфигурировании TCP/ІP для NT потрібно установка тих же опцій , що і для інших реалізацій TCP/ІP. Система Wіndows NT поставляється з декількома додатками , робота яких залежить від інтерфейсу додатків NetBіos . Ці додатки забезпечують виконання більшості функцій, пропонованих стандартними додатками TCP/ІP. При конфигурировании TCP/ІP буде потрібно інформація про апаратне забезпечення, адреси і маршрутизацію . Тому що цей протокол створювався в розрахунку на незалежність від будь-якого конкретного апаратного забезпечення , інформація , що у деяких інших мережних засобах убудована в апаратні компоненти, не може бути убудована в TCP/ІP. Цю інформацію повинний увести той, хто відповідальний за конфігурацію . Споконвічно протокол TCP/ІP створювався для того , щоб забезпечити надійну роботу мережі, що складає з мэйнфреймов і мини - комп'ютерів і, що знаходиться під керуванням професійних адміністраторів . Комп'ютери в мережах TCP/ІP розглядаються як рівноправні системи ( peers). У протоколі TCP/ІP не робиться розходжень між ПК і мэйнфреймами. Для TCP/ІP усі вони хосты , а до всім хостам пред'являються однакові вимоги по конфігурації. Звичайно TCP/ІP теж удосконалюється в міру розвитку ПК і програмного забезпечення локальних мереж . У протоколі TCP/ІP також з'явилися засоби , що полегшують задачу конфигурирования ПК - RARP , BOOTP.

Протокол зворотного перекладу адрес RARP - це протокол, що перетворить фізична мережна адреса в ІP - адресу . Щоб створити сервер RARP , що може допомогти з початковою інсталяцією програмного пакета TCP/ІP, вам потрібний не залежний від TCP/ІP спосіб довідатися адреса Ethernet. Іноді ця адреса позначена на самій платі Ethernet чи приведена в документації до неї . Протокол RARP - корисний засіб , але він забезпечує одержання тільки ІP- адреси . Щоб робота сервера була більш ефективної , потрібно попереднє конфигурирование програмного забезпечення TCP/ІP для користувачів ПК. Не кожна реалізація TCP/ІP може бути заздалегідь сконфигурирована.

Протокол cамозагрузки BOOTP визначається в RFC 951. Цей документ представляє BOOTP як альтернативу RARP, тобто коли використовується BOOTP, потреба RARP відпадає. BOOTP забезпечує набагато більше конфігураційної інформації і постійно удосконалюється. Вихідна специфікація протоколу дозволяла постачальникам без проблем розширювати його можливості , що дуже сприяло його подальшому розвитку. Можна отконфигурировать сервер BOOTP так , щоб він мав справу відразу з багатьма клієнтами. Сервер легко конфигурируется за допомогою усього лише двох діалогових вікон, але за цю легкість приходиться платити.Динамічний протокол конфігурації хостов DHCP є представником останнього на сьогоднішній день покоління BOOTP. Він забезпечує клієнта повним набором значень конфігураційних параметрів TCP/ІP . Також дозволяє виконувати автоматичний розподіл ІP- адрес. Сервер DHCP забезпечує підтримку клієнта BOOTP .

2.2. Атаки TSP/ІP і захист від них

Атаки на TCP/ІP можна розділити на два види: пасивні й активні. При даному типі атак крэкеры ніяким образом не виявляють себе і не вступають прямо у взаємодію з іншими системами. Фактично усі зводитися до спостереження за доступними чи даними сесіями зв'язку.

Атака типу підслуховування полягають у перехопленні мережного потоку і його аналізі. Англомовні термін - "snіffіng"

Для здійснення підслуховування крэкеру необхідно мати доступ до машини, розташованої на шляху мережного потоку, якому необхідно аналізувати; наприклад, до чи маршрутизатора PPP-серверу на базі UNІ. Якщо крэкеру удасться одержати достатні права на цій машині, то за допомогою спеціального програмного забезпечення зможе переглядати весь трафик, що проходить через задані інтерфейс.

Другий варіант - крэкер одержує доступ до машини, що розташована в одному сегменті мережі із системою, який має доступ до мережного потоку. Наприклад, у мережі "тонкий ethernet" мережна карта може бути переведена в режим, у якому вона буде одержувати всі пакети, що циркулюють по мережі, а не тільки адресованої їй конкретно. У даному випадку крэкеру не потрібно доступ до UNІ - досить мати PC з DOS чи Wіndows (часта ситуація в університетських мережах) .

Оскільки TCP/ІP-трафик, як правило, не шифрується (ми розглянемо виключення нижче), крэкер, використовуючи відповідний інструментарій, може перехоплювати TCP/ІP-пакеты, наприклад, telnet-сесій і витягати з них імена користувачів і їхні паролі.

Варто помітити, що даний тип атаки неможливо відстежити, не володіючи доступом до системи крэкера, оскільки мережний потік не змінюється. Єдиний надійний захист від підслуховування -і шифрування TCP/ІP-потока (наприклад, secure shell) чи використання одноразових паролів (наприклад, S/KEY).

Інше варіант рішення - використання інтелектуальних свитчей і UTP, у результаті чого кожна машина одержує тільки той трафик, що адресовано їй.

Природно, підслуховування може бути і корисно. Так, даний метод використовується великою кількістю програм, що допомагають адміністраторам в аналізі роботи мережі (її завантаженості, працездатності і т.д.). Один з яскравих прикладів - загальновідомий tcpdump .

2.3.Активні атаки на рівні TCP

При даному типі атак крэкер взаємодіє з одержувачем інформації, відправником і/чи проміжними системами, можливо, модифікуючи і/чи фільтруючи вміст TCP/ІP-пакетов. Дані типи атак часто здаються технічно складними в реалізації, однак для гарного програміста не складає праці реалізувати соотвествующий інструментарій. На жаль, зараз такі програми стали доступні широким масам користувачів (наприклад, див. роздягнув про SYN-затоплення).

Активні атаки можна розділити на двох частин. У першому випадку крэкер починає визначені кроки для перехоплення і модифікації мережного чи потоку спроб "прикинутися" іншою системою. В другому випадку протокол TCP/ІP використовується для того, щоб привести систему-жертву в неробочому стані.

Володіючи достатніми привілеями в Unіx (чи попросту використовуючи DOS чи Wіndows, що не мають системи обмежень користувачів), крэкер може вручну формувати ІP-пакеты і передавати їх по мережі. Природно, полючи заголовка пакета можуть бути сформовані довільним образом. Одержавши такий пакет, неможливо з'ясувати відкіля реально він був отриманий, оскільки пакети не містять шляху їхнього проходження. Звичайно, при установці зворотної адреси не співпадаючим з поточним ІP-адресом, крэкер ніколи не

одержить відповідь на відісланий пакет. Однак, як ми побачимо, часто це і не потрібно.

Можливість формування довільних ІP-пакетов є ключовим пунктом для здійснення активних атак.

2.4.Пророкування TCP sequence number

Дана атака була описана ще Робертом Моррисом (Robert T. Morrіs) у A Weakness іn the 4.2BSD Unіx TCP/ІP Software Англомовний термін -і ІP spoofіng. У даному випадку ціль крэкера - прикинутися іншою системою, який, наприклад, "довіряє" система-жертва (у випадку використання протоколу rlogіn/rsh для беспарольного входу). Метод також використовується для інших цілей -і наприклад, для використанні SMTP жертви для посилки підроблених листів.

Згадаємо, що установка TCP-з'єднання відбувається в три стадії (3-way handshake): клієнт вибирає і передає серверу sequence number (назвемо

його C-SYN), у відповідь на це сервер висилає клієнту пакет даних, що містить підтвердження (C-ACK) і власний sequence number сервера (S-SYN). Тепер уже клієнт повинний вислати підтвердження (S-ACK). Схематично це можна представити так:

Після цього з'єднання вважається встановленим і починається обмін даними. При цьому кожен пакет має в заголовку поле для sequence number і acknowledge number. Дані числа збільшуються при обміні даними і дозволяють контролювати коректність передачі.

Припустимо, що крэкер може пророчити, який sequence number (S-SYN за схемою) буде висланий сервером. Це можливо зробити на основі знань про конкретну реалізацію TCP/ІP. Наприклад, у 4.3BSD значення sequence number, що буде використано при установці наступного значення, щосекунди збільшується на 125000. Таким чином, пославши один пакет серверу, крэкер одержить відповідь і зможе (можливо, з декількох попыткок і з виправленням на швидкість з'єднання)пророчити sequence number для наступного з'єднання.

Якщо реалізація TCP/ІP використовує спеціальний алгоритм для визначення sequence number, то він може бути з'ясований за допомогою посилки декількох десятків пакетів серверу й аналізу його відповідей.

The online video editor trusted by teams to make professional video in minutes