Зворотний зв'язок

Дослідження протоколів ТСР-ІР

Володіючи достатніми привілеями в 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, то він може бути з'ясований за допомогою посилки декількох десятків пакетів серверу й аналізу його відповідей.

Отже, припустимо, що система A довіряє системі B, так, що користувач системи B може зробити "rlogіn A"_ і виявитися на A, не вводячи пароля. Припустимо, що крэкер розташовано на системі C. Система A виступає в ролі сервера, системи B і C - у ролі клієнтів.

Перша задача крэкера - увести систему B у стан, коли вона не зможе відповідати на мережні запити. Це може бути зроблено декількома способами, у найпростішому випадку потрібно просто дочекатися перезавантаження системи B. Декількох хвилин, у плині яких вона буде непрацездатна, повинне вистачити. Інший варіант - використання описаними в наступних розділах методів.

Після цього крэкер може спробувати прикинутися системою B, для того, що б одержати доступ до системи A (хоча б короткочасний).

Крэкер висилає трохи ІP-пакетов, що ініціюють з'єднання, системі A, для з'ясування поточного стану sequence number сервера. Крэкер висилає ІP-пакет, у якому як зворотну адресу зазначена вже адреса системи B. Система A відповідає пакетом з sequence number, що направляється системі B. Однак система B ніколи не одержить його (вона виведена з ладу), як, утім, і крэкер. Але він на основі попереднього аналізу догадується, який sequence number був висланий системі B Крэкер підтверджує "одержання" пакета від A, виславши від імені B пакет з передбачуваним S-ACK (помітимо, що якщо системи розташовуються в одному сегменті, крэкеру для з'ясування sequence number досить перехопити пакет, посланий системою A). Після цього, якщо крэкеру повезло і sequence number сервера був угаданий вірно, з'єднання вважається встановленим.

Тепер крэкер може вислати черговий фальшивий ІP-пакет, що буде вже містити дані. Наприклад, якщо атака була спрямована на rsh, він може містити команди створення файлу .rhosts чи відправлення /etc/passwd крэкеру по електронній пошті.

Представимо це у виді схеми 1:


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат