напіввідкрите tcp

Напіввідкрите TCP / IP з'єднання

Напіввідкрите TCP / IP з'єднання (англ. Half-open connection) -

Спочатку термін ставився до порушення синхронізації вже встановленого з'єднання (див.). Але потім більш поширеним стало застосування терміна напіввідкрите TCP / IP з'єднання до випадку порушення нормальної послідовності встановлення з'єднання. Це сталося після опису CERT Coordination Center [1] уразливості реалізації протоколу, яку можна використовувати для проведення атаки типу SYN-флуд (англ. SYN-flood).

Технічні подробиці

Перед початком передачі будь-яких даних, згідно з протоколом TCP, сторони повинні встановити з'єднання. З'єднання встановлюється в три етапи (процес «триразового рукостискання» TCP).

  1. Клієнт (сторона - ініціатор з'єднання) посилає пакет зі встановленим прапором SYN (synchronize).
  2. У відповідь на нього сервер повинен відповісти комбінацією прапорів SYN + ACK (acknowledges).
  3. Після цього клієнт повинен відповісти пакетом з прапором ACK, після чого з'єднання вважається встановленим.

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

Порушення синхронізації може статися на будь-якому з описаних кроків.

Три значення терміна

Напіввідкрите з'єднання, описане в стандарті TCP [2]. виникає в результаті помилки одного з учасників з'єднання або раптового припинення його (учасника) роботи без повідомлення другої сторони. Якщо обидві сторони перебували в стані встановленого з'єднання, то, після аварійного завершення з'єднання з одного боку, друга сторона може знаходиться в стані напіввідчиненого з'єднання невизначено довгий час.

Друге значення терміна, пов'язане з уразливістю SYN-флуд, відноситься до напіввідкритому з'єднанню на стороні сервера після другого етапу «триразового рукостискання». У цьому випадку сервер, в очікуванні відповіді від клієнта, не звільняє виділені ресурси, що може привести до їх вичерпання.

Третє значення терміна відноситься до клієнта, який виконав перший етап «триразового рукостискання» і чекає на відповіді сервера. У нормальних умовах це не призводить ні до яких негативних наслідків, так як, не отримавши відповіді за певний час, клієнт закриває з'єднання і звільняє ресурси.

MS Windows і клієнти пірінгових мереж

Проблеми, пов'язані з напіввідкритими сполуками другого типу (на стороні сервера), мають приблизно однакові методи вирішення на Windows платформах [3].

Однак шкідливим програмним забезпеченням системи. В результаті такого обмеження з'явилися проблеми в роботі програмного забезпечення, інтенсивно працює з Інтернетом. зокрема, клієнтів пірінгових мереж. Збільшити межу напіввідкритих з'єднань можна відредагувавши системний файл tcpip.sys за допомогою спеціальної утиліти.

Примітки