Атака TCP ResetАтака TCP Reset, «фальшиві TCP Reset», «скидання TCP», «спуфінг пакетів TCP reset» — спосіб розірвати TCP з'єднання за допомогою надсилання підробленого пакета TCP Reset. Такий спосіб можуть використовувати фаєрволи або зловмисники. The Great Firewall of China[en], та Іранські цензори[en] використовують цей підхід для впровадження цензури в інтернет.[1] Технічні подробиціНа відміну від інших протоколів (наприклад, UDP), TCP передбачає встановлення з'єднання між двома комп'ютерами. Мережеве ПЗ, таке як браузер і вебсервер, обмінюється даними в формі потоків пакетів. За рахунок цього вони можуть пересилати більший обсяг інформації, ніж може поміститися в один пакет, наприклад, відеокліпи, документи або записи. Хоча деякі вебсторінки бувають досить малі, щоб уміститися в один пакет, вони також передаються за допомогою з'єднання в цілях зручності. Скидання TCPКожен TCP-пакет в рамках з'єднання несе заголовок. У кожному з них є біт прапора скидання (RST). У більшості пакетів цей біт встановлений в 0 і нічого не означає, але якщо він встановлений в 1, це означає, що одержувач повинен негайно припинити використовувати дане з'єднання: не посилати пакетів з поточним ідентифікатором (на поточний порт), а також ігнорувати всі наступні пакети цього з'єднання (згідно інформації в їх заголовках). По суті, скидання TCP вмить розриває з'єднання. При належному використанні такого скидання — корисний механізм. Такий спосіб застосовується, коли на одному комп'ютері (умовно А) відбувається збій під час передачі даних TCP. Другий комп'ютер (умовно Б) продовжить слати TCP-пакети, так як не знає про збої на А. Після перезавантаження А продовжить отримувати пакети від старого з'єднання, але, не володіючи даними про з'єднання, вже не буде знати, що з ними робити. У цьому випадку він відправить вимогу скидання TCP комп'ютеру Б, повідомляючи, що з'єднання перервано. Користувач комп'ютера може Б встановити нове з'єднання або вжити інші дії. Фальшиве скидання TCPУ вищеописаному випадку повідомлення про скидання відправляв один з учасників з'єднання. Третій комп'ютер міг відстежувати TCP-пакети цього з'єднання і потім підробити пакет з прапором скидання і відправити одному чи обом учасникам від імені іншого. Інформація в заголовках повинна вказувати, що пакет нібито отриманий від іншої сторони, а не від зловмисника. Така інформація включає в себе IP-адреси і номери портів і повинна містити достатньо правдоподібних даних, щоб змусити учасників перервати з'єднання. Правильно сформовані підроблені пакети можуть бути досить надійним способом порушити будь-яке TCP-з'єднання, доступне для відстеження зловмисником. Області застосуванняОчевидним застосуванням методу скидання TCP є таємне порушення зловмисником з'єднання між сторонами. З іншого боку, відомі системи мережевої безпеки, що використовують такий спосіб. Прототип програми «Buster» був показаний в 1995 р. і міг відправляти фальшиві пакети скидання на будь-які з'єднання, які використовують порти із заданого списку. Розробники Linux запропонували аналогічні можливості для брандмауерів на базі Linux в 2000 р.[2], а вільна програма Snort використовувала скиди TCP для переривання підозрілих з'єднань вже в 2003 р.[3] Інцидент в ComcastВ кінці 2007 р. провайдер Comcast почав використовувати спуфінг TCP для виведення з ладу P2P-програм і ПЗ для спільної роботи (groupware) своїх клієнтів.[4]. Це викликало конфлікт, результатом якого стало створення Групи мережевого нейтралітету (NNSquad) у складі Lauren Weinstein[en], Вінтона Серфа, David Farber[en], Крейга Ньюмарка та інших борців за відкритість Інтернету.[5] У 2008 р. NNSquad випустили програму NNSquad Network Measurement Agent для Windows, яка виявляла фальшиві пакети від Comcast і відрізняла їх від справжніх скидів. Примітно, що алгоритм виявлення скидів був розроблений на основі існуючої відкритої програми «Buster», створеної для боротьби з шкідливими об'єктами і рекламою на вебсторінках. У січні 2008 р. FCC оголосила про початок розслідування спуфінга з боку Comcast, а 21 серпня 2008 р. наказала їм припинити цю практику. Слово «фальшиві»Деякі представники провайдерів вважають слово «фальшиві» недоречним щодо скидання TCP. Вони також заявляли, що це легітимний спосіб скорочення мережевого трафіку.[6] Примітки
Посилання
|