Предмет:
Тип роботи:
Бакалаврська робота
К-сть сторінок:
57
Мова:
Українська
стане можливим, як тільки атака припиниться та атаки без можливості відновлення – з'єднання клієнтів не стане, як тільки атака припиниться – необхідне ручне втручання, можливо відновлення даних. За типом вразливості атаки можна поділити на атаки на протокол та атаки на реалізацію.
1.3. Особливості реалізації DoS-атак. Атака TCP SYN
DoS-атаки спрямовані на порушення базової послуги доступності. Основна мета DoS-атак – вивести об'єкт з робочого стану і зробити його ресурси недоступними для легальних користувачів. Атаку, спрямовану на відмову в обслуговуванні, можна провести двома способами: використовуючи вразливості в програмному забезпеченні системи, що атакується і за допомогою відсилання великої кількості спеціально сформованих мережевих пакетів.
Перший спосіб складніший і вимагає більш високої кваліфікації атакуючого. Другий спосіб заснований на застосуванні «грубої сили». Ідея полягає в тому, щоб завантажити обчислювальні ресурси сервера обробкою величезної кількості надісланих зловмисником пакетів. Таке завантаження сервера в кращому випадку може призвести до того, що сервер буде нездатний прийняти на обробку запити від легальних користувачів, а в гіршому випадку може привести до зависання і відключення сервера.
Тут варто відзначити, що можна виділити два типи атак, спрямованих на завантаження ресурсів системи: в першому випадку завантажуються обчислювальні ресурси сервера, а в іншому – пропускна здатність каналу зв'язку. Запропонована методика орієнтована на захист від атак першого типу, тому далі будемо вважати, що пропускної здатності досить, щоб сервер отримав весь адресований йому трафік.
Для багатьох DoS-атак результати обробки сервером пакетів, відправлених зловмисником, останнього не цікавлять. Це означає, що атакуючий може відправляти потік хибних заявок з хибних IP-адрес, що перешкоджає його виявленню і ефективній протидії такого роду атак.
Для проведення успішної DoS-атаки необхідна досить висока пропускна здатність каналу. Тому атака на відмову в обслуговуванні в більшості випадків проводиться відразу з декількох машин. Атака, в проведенні якій бере участь вклика кількість машин, отримала назву DDoS (розподілена атака на відмову в обслуговуванні). Варто зазначити, що для розподіленої атаки можуть використовуватися інфіковані спеціальним ПЗ машини, які не належать атакуючому. Такі заражені машини називаються «зомбі». Одним із способів отримання «зомбі» є масове впровадження троянської програми на комп'ютери звичайних користувачів. Отримавши певну команду така бот-мережа перетворює «мирний» комп'ютер з доступом в Інтернет в джерело помилкових запитів, спрямованих на перевантаження ресурсів сервера.
Найбільш поширеними DoS атаками є:
- TCP SYN Flood або просто TCP SYN [13]
- TCP flood
- Ping смерті
- ICMP Flood
- UDP Flood
Розглянемо докладніше TCP SYN (TCP SYN Flood) атаку, яка спрямована на прикладні сервіси, що використовують протокол транспортного рівня TCP. Цей протокол набув широкого поширення в інформаційних системах за рахунок того, що він гарантує 100% доставку всіх переданих даних. Взаємодіючі вузли мережі, що використовують в якості транспорту цей протокол, встановлюють між собою TCP з'єднання, в рамках яких ведеться контроль над тим, що одержувач отримає все послані відправником пакети. Це досягається за рахунок того, що одержувач сповіщає відправника про те, які пакети він отримав. Якщо до одержувача дійшли не всі призначені йому пакети, то відправник повторно їх відправить. Як видно, перевагою цього протоколу є можливість встановлення логічного з'єднання. Для зберігання інформації про поточний стан з'єднання зокрема використовується поле бітових прапорців в пакетах, які використовуються протоколом. Під це поле відведено 8 біт, проте 2 з них є зарезервованими і в даний час використовуються тільки 6 прапорців: URG (прапор терміновості), ACK (прапор підтвердження), PSH (прапор функції), RST (прапор скидання), SYN (прапор синхронізації) і FIN (прапор закінчення). На жаль, встановлений стандартом механізм встановлення з'єднання не є досконалим, і розглянута атака як раз експлуатує його недоліки.
Основна мета TCP SYN атаки – перевищити обмеження на кількість TCP з'єднань, які знаходяться в стані встановлення з'єднання. Розглянемо процедуру встановлення TCP з'єднання. Спочатку клієнт ще не започатковши з'єднання відправляє серверу TCP-SYN запит. Отримавши такий запит, сервер виділяє пам'ять для параметрів з'єднання в спеціально призначеному для цього буфер. Потім відправляє клієнту TCP пакет з прапорами SYN + ACK. Отримавши пакет SYN + ACK, клієнт повинен відправити серверу пакет з підтвердженням, тобто пакет з встановленим прапором ACK. Коли сервер отримає і обробить цей пакет, з'єднання є встановленим. описана вище процедура зображена на рис. 1. 2.
Рис. 1. 2 Встановлення TCP з'єднання
TCP SYN атака проводиться таким чином: зловмисник генерує велику кількість пакетів з встановленими SYN-прапорцями протоколу TCP. Отримуючи пакети, машина виділяє пам'ять для зберігання параметрів з'єднання і відправляє у відповідь пакет з прапорцями SYN + ACK і очікує пакета з прапорцем ACK. Очевидно, що очікувану відповідь вона не отримає, і пам'ять буде звільнена тільки після закінчення встановленого часу очікування. Через деякий час буфер, виділений для зберігання параметрів TCP-з'єднань буде повністю зайнятий, в результаті чого, система не зможе встановлювати нові з'єднання. Після цього кожен додатковий запит ще сильніше збільшує навантаження. Такі атаки не потребують зворотного зв'язку з атакуючим, і тому зловмисник може генерувати пакет з довільними IP-адресами відправника.
Відсутність зворотного зв'язку з атакуючим робить виявлення і блокування TCP SYN-атаки досить складним завданням.