Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Виявлення атаки. 
Виявлення та протидія атак

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Всі схеми виявлення особливостей використовують одне чи більше припущень про трафік атаки. Виявляється, що кожне з цих припущень може бути використане для розробки контрзаходів і уникнення виявлення. При розробці алгоритму MULTOPS припускається, що частота вхідних пакетів пропорційна частоті вихідних пакетів. Але це невірно, наприклад, для аудіо/відео потоків. Тому для серверів онлайнових новин… Читати ще >

Виявлення атаки. Виявлення та протидія атак (реферат, курсова, диплом, контрольна)

Наступним кроком після попередження атаки є виявлення атаки. Для будь-якої схеми виявлення атаки показником ефективності є відсоток виявлення атак. При цьому потрібно враховувати, що виявлення атаки на відмову відрізняється від виявлення несанкціонованого вторгнення. Наслідком атаки є відмова в обслуговуванні, тому результат здійснення атаки досить легко визначити. Проблема полягає в виявленні в своєчасному і надійному виявленні місця і типа атаки. Ситуація ускладнюється тим, що хоча деякі типи атак використовують експлойти, вразливості програмного забезпечення, фальшування і специфічну форму пакетів, взагалі кажучи, всі ці ознаки не є обов’язковими умовами атаки на відмову. Певні типи атак імітують звичайний трафік і завантажують ним канали зв’язку. Тому будь-яка схема ризикує помилково прийняти інтенсивний звичайний трафік за атакуючий. Виникає питання — навіщо тоді потрібна система виявлення атаки? Для цього є декілька причин. По-перше, при вчасному виявленні атаки жертва може виграти час для виконання заходів з протидії та захисту своїх ресурсів. По-друге, виявлення атаки може допомогти ідентифікувати нападників. По-третє, якщо будуть швидко виявлені джерела атаки, трафік можна відсікти до того, як він завантажить пропускні ресурси системи.

При дослідженні питань функціонування механізму виявлення увага буде, в основному, зосереджена на тому, в яких випадках алгоритм допускає фальшиві виявлення (звичайний трафік приймається за атаку) та не виявлення (трафік атаки приймається за звичайний). В роботі [26] описані характеристики, що визначають появу фальшивих виявлень і не виявлень:

Рівень виявлення. Це основний рівень трафіку мережі, по якому здійснюється моніторинг. Рівнем виявлення може бути пакетний рівень, рівень потоків пакетів, рівень з'єднань мережі та рівень з'єднань програм.

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

Особливості трафіку атаки. Це особливі параметри, значення яких використовуються для виявлення атаки. Фальшиве виявлення відбувається, якщо в звичайному трафіку присутні ці особливості. Не виявлення відбувається, якщо трафік атаки не містить цих особливостей.

Причини фальшивого виявлення/не виявлення. Це обставини, що можуть спричинити появу в звичайному трафіку особливостей атаки або в їх відсутність в атакуючому трафіку.

В широкому розумінні механізми виявлення можна розділити на три категорії: виявлення перевантажень, виявлення особливостей та виявлення аномалій. Виявлення перевантажень полягає в оцінці завантаження ланок мережі, ресурсів системи або системи в цілому. Досягнення певного рівня означає наявність атаки. Виявлення особливостей полягає в пошуку певних особливих характеристик, притаманним атакам на відмову і нехарактерних для звичайного трафіку. Можна виділити одновимірне (коли оцінюється одна характеристика) та багатовимірне (коли таких характеристик декілька) виявлення особливостей. Виявлення аномалій включає в себе побудову профілю нормального функціонування системи.

Виявлення перевантажень Основною метою атаки на відмову є заблокування доступу користувачів до сервісу. Один з найпростіших способів досягти цього полягає в завантаженні каналів мережі, яка з'єднує сервіс з користувачами. Отже, якщо канали мережі перевантажені - це сильна ознака здійсненні атаки. Таким чином, для виявлення атаки потрібно розробити алгоритм, який би міг оцінювати завантаженість мережі та шукати причину перевантаження — мережевий потік або з'єднання. Такі алгоритми працюють ефективно якщо таке завантаження спричинив саме атакуючий трафік і при цьому є можливість аналізувати пакети завантаженої ланки. Фальшиве виявлення відбувається в разі, коли перевантаження викликано звичайним трафіком (наприклад великим напливом користувачів) і алгоритм не може виділити які потоки належать атаці. Не виявлення відбувається, якщо атакуючий трафік не спричиняє перевантаження (спрямовані, експлойтні або приховані типи атак). Механізм агрегованого керування перевантаженнями (Aggregate-based congestion control (ACC)) був запропонований в роботах [27, 28]. Даний механізм призначений для ослаблення потужності трафіку атаки на відмову або скупчення (flash crowd). При застосуванні даного алгоритму вважається, що трафік атаки — це велика кількість пакетів з одного або декількох потоків, які спрямовані на одну адресу. Алгоритм виявлення в механізмі ACC обчислює адресу жертви шляхом аналізу адреси доставки відкинутих роутером пакетів протягом коротких проміжків часу. Якщо кількість пакетів з однаковою адресою доставки перевищує певний поріг, то алгоритм поміщає цю адресу у список «підозрілих «адрес. На основі кількості відкинутих пакетів оцінюється потужність і частота загального потоку пакетів (одна з можливих реалізацій описана в [29]). Якщо частота перевищує пороговий рівень, АСС вважає, що відбувається атака на відмову. Ще один механізм захисту — Аукціонний динамічний шлюз розподілення навантаження (auction-based dynamic bandwidth arbitration gateway (ABA gateway)) описаний в роботі [30]. ABA gateway призначений для протидії атакам на відмову та скупченням і використовує економічні алгоритми розподілення трафіку, а саме — узагальнений аукціон Вікрі. При цьому розподіл трафіку між користувачами не фіксується жорстко, а перерозподіляється динамічно в залежності від «запитів» клієнтів. Якщо клієнт починає надсилати значно більше запитів ніж очікується, його «кредит» вичерпується і його пакети не приймаються. Цікавий підхід описаний в роботі [31]. Для виявлення потоків, що забивають канал використовується схема затримки пакетів. Звичайний користувач, пакети якого затримуються, при цьому природно знизить частоту звернення до сервера, а нападник продовжуватиме надсилати пакети атаки. Можна також відзначити роботу [32], де в якості індикатора атаки використовується рівень завантаженості мережі. В цій роботі основна увага зосереджена на протидії атаці, при цьому аспекти виявлення не конкретизуються.

Виявлення особливостей При проведенні атак використовуються слабкості протоколів, програм або принципів побудови мережі Інтернет. Ці слабкості, взагалі кажучи, не проявляються при звичайній роботі користувачів, хоча можуть бути причиною виняткових ситуацій. Тому трафік атаки, який активно використовує такі ситуації, містить особливі характеристики, невластиві звичайній роботі системи. Ця обставина дає можливість виявляти певні групи атак.

Можна виділити дві групи методів виявлення особливостей — одновимірні та багатовимірні [33]. Плюси одновимірного виявлення (алгоритми в яких відслідковується одна змінні - співвідношення кількість SYN і FIN пакетів [34] або загальна частота [35]) це швидкість роботи та стійкість до фальшивих виявлень. Причина використання багатовимірних алгоритмів полягає в тому, що типові поглинаючі атаки на відмову використовують велику кількість пакетів одного типу (ICMP flood, SYN flood, UDP storm та інші). Отже для найшвидшого виявлення таких атак доцільно розбити пакети на групи і проводити моніторинг цих груп окремо. Різкі зміни в розподілі пакетів кожної групи може швидко виявити атаку, в той же час зміни в змішаному трафіку можуть бути не такі виражені. З іншого боку багатовимірні алгоритми мають більшу швидкість обчислення. Крім того на їх роботу впливає значна кількість сторонніх факторів, що збільшує кількість можливих причин фальшивого виявлення/не виявлення.

Механізми виявлення особливостей, в основному, призначені для захисту від розподілених поглинаючих атак. Звичайною схемою таких атак являється засипання жертви великою кількістю трафіку. Чим більша потужність — тим сильніша атака. Оскільки жертва не може відповідати на весь цей трафік відношення вхідного потоку до вихідного сильно відрізняється від звичайного. По-друге, атакуючий трафік генерується випадковим чином, щоб приховати джерела атаки. По-третє, для відомих атак атакуючий трафік пов’язаний з ненормальною поведінкою джерел атаки. В 2001 році в роботі [36] була запропонована схема MULTOPS для виявлення атак на відмову шляхом моніторингу частоти вхідних і вихідних пакетів. MULTOPS працює з припущенням, що частоти передачі пакетів між двома комп’ютерами порівняна під час звичайних дій. Значна диспропорція цих частот є сигналом про можливу атаку. Недоліком MULTOPS є використання динамічної деревовидної структури для зберігання частоти пакетів по кожній адресі. Ця структура сама по собі може бути метою атаки поглинання пам’яті.

Інший підхід, що називається TOPS [37], надає ефективний метод для виявлення порушення балансу пакетів на основі схеми хешування, яка використовує лише невеликий набір таблиць. Такий підхід дозволяє уникнути ризику вичерпання пам’яті. Обидва методи розпізнають атаку на основі відстеження статистичних змін. При цьому вважаються виконаними два припущення. По-перше, що випадкова послідовність статистично однорідна. По-друге, що при атаці відбувається зміна статистичних параметрів трафіку. Взагалі кажучи, трафік атаки на відмову не є результатом роботи TCP протоколу, як у випадку звичайного трафіку. Тому трафік атаки має певні статистичні особливості, що відрізняються від трафіку нормальної роботи. На основі цього припущення, Ченг та ін. в роботі [38] запропонували використовувати спектральний аналіз для виявлення атак на відмову. При цьому, кількість пакетів, що прийшла протягом фіксованого інтервалу часу виконує роль сигналу. В спектральній густині потужності сигналу звичайного TCP трафіку будуть присутні сильні періодичні значення біля часу обертання сигналу між сервером та користувачем, що не характерно для атаки. Часто нападник здійснює атаку за допомогою великої кількості схожих пакетів (з однаковою адресою, протоколом, типом та ін.) надісланих з різних місць але спрямованих на одну ціль. Таким чином, в трафіку зустрічається багато схожих шаблонів. Однак, звичайний трафік, як правило, не сильно корельований і більше скидається на випадкову послідовність. Спираючись на ці особливості [39] було запропоновано алгоритм виявлення атаки на основі тесту Колмогорова. Ще один механізм був розроблений, виходячи з припущення про сильну корельованість між поведінкою трафіку і трафіком джерел атаки. Це схема виявлення атаки з використанням аналізу часових рядів [40]. Ця схема складається з трьох етапів. Перший етап полягає в виділенні ключових змінних. Наприклад кількість пакетів ICMP echo — ключова змінна для атаки Smurf. Другий етап полягає в використанні статистичного інструментарію (наприклад моделі авто регресії) для виявлення змінних, що добре корельовано з ключовими змінними атаки. Наприклад кількість пакетів ICMP echo reply від нападників добре корелюється з ключовою для атаки Smurf змінною. Третій етап полягає в побудові нормального профілю з використанням статистичних даних. Будь-яка відмінність поточного профілю від нормального розцінюється як ознака атаки.

Всі схеми виявлення особливостей використовують одне чи більше припущень про трафік атаки. Виявляється, що кожне з цих припущень може бути використане для розробки контрзаходів і уникнення виявлення. При розробці алгоритму MULTOPS припускається, що частота вхідних пакетів пропорційна частоті вихідних пакетів. Але це невірно, наприклад, для аудіо/відео потоків. Тому для серверів онлайнових новин, фільмів або музики така схема буде призводити до хибних виявлень. Крім того, MULTOPS вразливий для атак з випадково сфальшованими IP адресами джерел. При таких атаках обчислення для кожної адреси займають ресурси і пам’ять і при цьому не мають ніякого практичного наслідку. Інший спосіб протидії полягає в встановленні великої кількості легальних ресурсоємних з'єднань (з використанням ботнет), наприклад, завантаження файлу через ftp-з' єднання. В цьому випадку відношення частот буде близьким до звичайного і не буде виявлено. Техніка спектрального аналізу застосовна лише для потоків TCP протоколу. UDP і ICMP протоколи продукують неперіодичні трафіку. Крім того, поведінка захоплених комп’ютерів може бути запрограмована на імітацію легітимного трафіку. Ще одна слабкість схеми полягає в тому, що ефективність її полягає в навчанні на відомих типах атак. Як тільки нападник винаходить новий спосіб атаки схему потрібно перелаштовувати.

Оскільки атаки на відмову в загальному випадку не потребують використання певного типу трафіку, то нападник може створювати атаку комбінуючи різні типи. Координуючи дії своїх агентів вони можуть змінювати випадковим чином частоту, об'єм та тип трафіку для кожної машини. Таким чином, ефективність техніки виявлення атак на відмову може бути охарактеризована в термінах складності реалізації та обґрунтованості базового припущення.

Принципово нова схема виявлення атак на основі моніторингу IP адрес була запропонована в роботі [41]. Зазвичай, множина IP адрес, що з'єднана с сервером протягом звичайних операцій залишається приблизно постійною. При здійсненні атаки на відмову абсолютна більшість адрес джерел атаки раніше не з’являлася на даному вузлі. Використовуючи попередньо побудовану базу даних IP адрес можливо відслідковувати відношення нових адрес до звичних і виявляти різку зміну за допомогою статистичного тесту Накопиченої суми (Cumulative Sum (CUSUM)) [42]. Різка зміна долі нових адрес являється сильною ознакою здійснення атаки на відмову. Пізніше цей алгоритм було модифіковано для системи розподіленого виявлення [43].

Аналіз аномальної поведінки Результатом виконання атаки на відмову є порушення нормальної роботи системи. При цьому характеристики роботи системи сильно змінюються, виникають незвичні аномальні відхилення. Методика виявлення аномальної поведінки призначена для відстеження параметрів функціонування системи та пошуків шаблонів поведінки, що відрізняються від нормальної роботи системи. В 1987 в роботі Деннінг [44] була вперше запропонована модель виявлення вторгнень в комп’ютерну систему. Основна її ідея полягала і тому, що «…використання слабостей системи спричиняє неналежне її використання, тому порушення безпеки можуть бути виявлені шляхом використання шаблонів анормальної поведінки системи». З того часу методи виявлення аномальної поведінки стали важливим напрямком досліджень, що зумовлюється їхньою здатністю виявляти нові типи атак, в тому числі і атаки на відмову. При розв’язанні задачі розпізнавання аномалій виникають супутні задачі виявлення та оцінки раніше невідомих типів атак та вторгнень. Це призводить до необхідності здійснення наступних кроків:

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

Встановлення каналів вимірів множини параметрів, що характеризують протікання процесу.

Встановлення необхідних та достатніх інформативних ознак функціонування.

Побудова правил розпізнавання аномалій.

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

Базове припущення полягало в тому, що атаки складаються з незвичного використання системи і тому вони суттєво відрізняються від типової роботи з системою. Тобто вважається, не тільки, що атаки супроводжується аномальною поведінкою системи, але також, що аномальну поведінку легко можна відрізнити від звичайної. В роботі [45] здійснена спроба узагальнити і описати існуючі припущення, на основі яких функціонує більшість систем виявлення аномалій. Виділяється три групи припущень.

Припущення предметної області:

атаки є аномальними.

атаки є рідкісною, надзвичайною ситуацією.

аномалії шкодять функціонуванню системи.

Наявність хороших навчальних даних надзвичайно важливе для побудови системи виявлення. Якщо система буде навчена на «поганій» вибірці даних в результаті може підвищиться рівень фальшивих виявлень/не виявлень. Загальні припущення навчальних даних полягають в наступному:

записи атак є вільно доступними.

дані, отримані шляхом імітаційного моделювання є репрезентативними.

трафік мережі є статичним процесом (тобто процесом, певні статистичні характеристики якого постійні).

Після побудови системи виявлення відбувається її тестування для оцінки відсотка фальшивих виявлень (не виявлень). Після чого шукаються шляхи його зменшення. Основними припущеннями якості функціонування системи є:

відсоток фальшивого виявлення в межах 1.10% є прийнятним.

визначення аномальної поведінки не залежить від мережі. (аномалії є універсальними).

адміністратори можуть інтерпретувати аномальні явища, що виникають при функціонуванні мережі.

Тепер перейдемо до огляду підходів побудови систем виявлення. Нейронні мережі часто використовуються для побудови систем виявлення вторгнень. В даному випадку нейронна мережа використовується для оцінки «аномальності» трафіку. На першому етапі виділяються змінні, що описують поведінку системи. Одна з можливих множин, описана в роботі [46]. Основу спостереження складають потоки даних (flow). Кожен потік характеризується п’ятьма параметрами:. Крім того по кожному потоку обчислюються наступні метрики:

Довжина потоку. Кількість пакетів, що складають потік.

Час існування потоку. Час, протягом якого потік залишається активним. Частота потоку. Це частота трафіку, що надсилається в рамках потоку. Ці параметри служать входом мережі. Виходом є одна змінна, що приймає значення від 0 до 1, і характеризує відсутність або наявність атаки відповідно.

В роботі [47] висловлюється припущення, що користувачів сервісу можна розділити на три різні типи, кожен з яких може бути характеризований своїми типовими запитами. Отже, можна побудувати профілі поведінки з використанням методів кластерізації, наприклад, методу К-середніх. Побудова системи складається з трьох етапів: побудова шаблонів поведінки, обчислення відстані від сесій до кластерів, фільтрування підозрілих сесій (тих, що віддалені від кластерів нормальної поведінки). Система виявлення аномалій на основі аналізу відхилень представлена в роботі [48]. Основний параметр, що використовується для моніторингу — кількість пакетів вхідного (вихідного) трафіку за одиницю часу. Якщо трафік сильно відхиляється від середньозваженого значення — це ознака анормальної поведінки. Введемо змінну x (t, i), яка описує кількість пакетів, що прийшов протягом часу t на портi, та X (t, i) — оцінка середньої кількості пакетів. Тоді відхилення від середини.

(deviation from the average (DFA)) обчислюється за формулою:

DFA? x (t, i), X (t, i).

X (t, i)? (1? б) X (t? 1, i)? б? x (t, i) ,.

де 0? б? 1. Якщо значення DFA перевищує певне порогове значення, це є ознакою атаки. В роботі також досліджуються різні шаблони проведення атаки, та можливі відповідні їм зміни DFA вхідного і вихідного потоків. Широке коло методів виявлення пов’язано з процедурами статистичного аналізу. Взагалі кажучи, представлення трафіку у вигляді випадкового процесу — надзвичайно складна задача. Один з можливих підходів описаний в роботі [49], де показується, що щільність розподілу випадкової змінної x, яка описує кількість пакетів за інтервал часу, може бути задовільно представлена гамма-функцією:

Вимірюючи характеристики трафіку протягом певних інтервалів часу можна оцінити його статистичні параметри б, в. Таким чином, можна обчислювати відстань від оцінених та отриманих з моделі розподілу величин. Якщо ця відстань стає більшою за певне порогове значення — це свідчить про аномальну поведінку. В роботі [50] використовується коваріаційний аналіз. Вибирається множина параметрів, що характеризує трафік. Ця множина параметрів утворює вектор випадкових змінних, що змінюються протягом часу. Потім обчислюється матриця коваріації. Деякі параметри мають сильний взаємозв'язок — наприклад кількість пакетів SYN та FIN (перші починають TCP-з'єднання, другі закінчують). Суттєві зміни в коваріаційній матриці означають аномалії у трафіку. Ідея розкладення потоку пакетів на сигнали різних гармонік описана в роботі [51]. Пропонується виділяти низькі, середні і високі частоти. Їх поведінка та взаємне розташування може показувати характеристики аномальних ситуацій, що виникають. Подальший розвиток ця ідея отримала в роботі [52]. Автори розкладають трафік на три змінні, що залежать від часу — байти, пакети та IP-потоки. Далі, використовуючи аналіз основних компонент виділяються «власні потоки» — найбільш значимі гармоніки. Після вибору перших n потоків ми отримаємо шаблон поведінки трафіку. Різкі відхилення від шаблону — піки на одному або всіх трьох рівнях вимірів може означати аномалії. Для обчислення відстані відмінності між поточним трафіком та нормальним також часто використовуються статистичні метрики, такі як тести ч2 або Колмогорова-Смірнова [53, 54]. Якщо відстань перевищує певне пирогове значення, то формується сигнал про атаку.

Користуючись прикладом людської імунної системи Форест і Хофмеір [55] розробили систему захисту мереж, яку назвали Lightweight Intrusion detection SYStem (LISYS). При її побудові використовувалась ідея штучної імунної системи (ШІС). Базова ідея LISYS отримала подальший розвиток [56]. Загальна побудова такої системи захисту складається з наступних етапів. Спочатку з кожного IP пакета вибирається рядок, що його ідентифікує. Часто вибирають стандартний набір характеристик: тип протоколу, тип пакета, адреса джерела, адреса одержувача та порт. На другому етапі обчислюються відносні частоти пакетів. Пакети, що зустрічаються регулярно визнаються нормальними. Далі будується детектор, який може відрізняти послідовності нормальних пакетів. Якщо послідовність вхідних пакетів відрізняється від нормальної більше ніж певне порогове значення формується сигнал про виявлення атаки.

Показати весь текст
Заповнити форму поточною роботою