Система запобігання вторгненням (англ.Intrusion Prevention System, IPS) — програмна або апаратна система мережевої та комп'ютерної безпеки, яка виявляє вторгнення або порушення безпеки і автоматично захищає від них.
Системи IPS можна розглядати як розширення систем виявлення вторгнень (IDS), так як завдання відстеження атак залишається однаковою. Однак, вони відрізняються в тому, що IPS повинна відслідковувати активність в реальному часі і швидко реалізовувати дії щодо запобігання атак.
Мережеві IPS (Network-based Intrusion Prevention, NIPS): відстежують трафік в комп'ютерній мережі і блокують підозрілі потоки даних.
IPS для бездротових мереж (Wireless Intrusion Prevention Systems, WIPS): перевіряє активність в бездротових мережах. Зокрема, виявляє неправильно налаштовані точки бездротового доступу до мережі, атаки " людина посередині, спуфінг mac-адрес.
Аналізатор поведінки мережі (Network Behavior Analysis, NBA): аналізує мережевий трафік, ідентифікує нетипові потоки, наприклад DoS і DDoS атаки.
Історія розвитку сучасних IPS включає в себе історії розвитку декількох незалежних рішень, проактивних методів захисту, які розроблялися в різний час для різного роду загроз. Під проактивними методами захисту, пропонованими сьогодні ринком, розуміється наступне:
Поведінковий аналізатор процесів для аналізу поведінки запущених в системі процесів і виявлення підозрілих дій, тобто невідомих шкідливих програм.
Усунення можливостей попадання інфекції на комп'ютер, блокування портів, які використовуються вже відомими вірусами, і тих, які можуть використовуватися їх новими модифікаціями.
Недопущення переповнення буфера у найбільш поширених програм і сервісів, що найбільш часто використовується зловмисниками для здійснення атаки.
Мінімізація шкоди, завданої інфекцією, запобігання подальшого її розмноження, обмеження доступу до файлів та директорій; виявлення і блокування джерела інфекції в мережі.
Зазвичай в якості першої загрози, яка спонукала до протидії вторгненням, називають хробака Морріса, що вразив підключені до мережі Unix-комп'ютери в листопаді 1988 року.
Згідно іншої теорії, стимулом для створення нової фортифікаційної споруди стали дії групи хакерів спільно зі спецслужбами СРСР і НДР. У період з 1986-го по 1989 рік група, ідейним керівником якої був Маркус Гесс, передавала своїм національним спецслужбам інформацію, здобуту ними шляхом вторгнення в комп'ютери. Все почалося з невідомого рахунку всього на 75 центів в Національній лабораторії ім. Е. Лоуренса в Берклі. Аналіз його походження в кінцевому підсумку вивів на Гесса, який працював програмістом в невеликій західнонімецькій компанії і одночасно належав до екстремістської групи Chaos Computer Club, яка базувалася в Гамбурзі.
Організоване ним вторгнення починалося з дзвінка з дому через найпростіший модем, що забезпечував йому зв'язок з європейською мережею Datex-P і далі проникнення в комп'ютер бібліотеки Бременського університету, де хакер отримував необхідні привілеї і вже з ними пробивався в Національну лабораторію їм. Е. Лоуренса в Берклі.
Перший лог був зареєстрований 27 липня 1987 року, і з 400 доступних комп'ютерів він зміг влізти приблизно в 30 і після цього спокійно пересуватись в закритій мережі Milnet, використовуючи, зокрема, пастку у вигляді файлу під назвою Strategic Defense Initiative Network Project (його цікавило все, що було пов'язано зі Стратегічною оборонною ініціативою президента Рейгана). Негайною реакцією на появу зовнішніх мережевих загроз виявилося створення міжмережевих екранів, як перших систем виявлення та фільтрації загроз.
Аналіз програм і файлів
Евристичні аналізатори
Поведінковий блокувальник
З появою нових видів загроз згадали про поведінкові блокувальники.
Перше покоління поведінкових блокаторів з'явилося ще в середині 90-х років. Принцип їх роботи — при виявленні потенційно небезпечних дій користувачеві ставилося питання, дозволити або заборонити дію. Теоретично блокіратор здатний запобігти розповсюдженню будь — яких відомих, так і невідомих вірусів. Основним недоліком перших поведінкових блокувальників було надмірна кількість запитів до користувача. Причина цього — нездатність поведінкового блокувальника судити про шкідливості тої чи іншої дії. Однак, в програмах, написаних на VBA, можна з дуже великою ймовірністю відрізнити шкідливі дії від корисних.
Друге покоління поведінкових блокувальників відрізняється тим, що вони не аналізують окремі дії, а послідовність дій і вже на підставі цього роблять висновок про шкідливості того чи іншого ПО.
Тестування від Current Analysis
У 2003 році компанія Current Analysis, під керівництвом Майка Фратто, запросила для тестування продуктів HIP наступних постачальників — компанії Argus Systems Group, Armored Server, Computer Associates (CA), Entercept Security Technologies, Harris, Network-1, Okena, Tiny Software, Tivoli (у складі IBM) і WatchGuard. В результаті в лабораторії RealWorld Сіракузького університету були протестовані тільки наступні продукти: PitBull LX і PitBull Protector компанії Argus, eTrust Access Control компанії CA, Web Server Edition компанії Entercept, STAT Neutralizer компанії Harris, StormWatch і StormFront компанії Okena, ServerLock і AppLock/Web компанії WatchGuard.
Для учасників були сформульовані вимоги:
Продукт повинен дозволяти централізовано керувати політикою безпеки хостів, що обмежує доступ додатків тільки тими системними ресурсами, які потрібні їм (з додатками) для роботи.
Продукт повинен мати можливість самим формувати політику доступу для будь-якого серверного додатка.
Продукт повинен контролювати доступ до файлової системи, мережних портів, портів вводу/виводу і іншим засобам комунікації ОС із зовнішніми ресурсами. Крім цього, додатковий рівень захисту повинен забезпечити можливість блокування переповнення буфера стека.
Продукт повинен встановити залежність доступу до ресурсів від імені користувача(програми) або його приналежності до тієї чи іншої групи.
Після півтора місяців тестування переміг продукт StormWatch компанії Okena (пізніше придбана Cisco Systems, продукт отримав назву Cisco Security Agent).[1]
Подальший розвиток
У 2003 р. був опублікований звіт компанії Gartner, в якому доводилася неефективність покоління IDS того часу і прогнозували їх неминуче оснащення IPS. Після цього розробники IDS часто стали поєднувати свої продукти з IPS.
Методи реагування на атаки
Після початку атаки
Методи реалізуються вже після того, як була виявлена інформаційна атака. Це означає, що навіть у разі успішного виконання системі, що захищається може бути завдано шкоди.
Блокування з'єднання
Якщо для атаки використовується TCP-з'єднання, то реалізується його закриття за допомогою посилки кожному або одному з учасників TCP-пакета з встановленим прапором RST. У результаті зловмисник позбавляється можливості продовжувати атаку, використовуючи мережеве з'єднання. Даний метод найчастіше реалізується з допомогою наявних мережевих датчиків.
Метод характеризується двома основними недоліками:
Не підтримує протоколи, відмінні від TCP, для яких не вимагається попереднього встановлення з'єднання (наприклад, UDP і ICMP).
Метод може бути використаний тільки після того, як зловмисник вже отримав несанкціоноване з'єднання.
Блокування записів користувачів
Якщо кілька облікових записів користувачів були скомпрометовані в результаті атаки або виявилися їх джерелами, то здійснюється їх блокування хостовими датчиками системи. Для блокування датчики повинні бути запущені від імені облікового запису, який має права адміністратора.
Також блокування може відбуватися на заданий строк, який визначається налаштуваннями Системи запобігання вторгнень.
Блокування хоста комп'ютерної мережі
Якщо з одного з хостів була зафіксована атака, то може бути проведене його блокування хостовими датчиками або блокування мережевих інтерфейсів або на нього, або на маршрутизаторі або комутаторі, за допомогою яких хост підключений до мережі. Розблокування може відбуватися через заданий проміжок часу або за допомогою активації адміністратора безпеки. Блокування не скасовується після перезапуску або відключення від мережі хоста. Так само для нейтралізації атаки можна блокувати ціль атаки, хост комп'ютерної мережі.
Блокування атаки за допомогою мережевого екрану
IPS формує і надсилає нові конфігурації в МЕ, за якими екран буде фільтрувати трафік від порушника. Така реконфігурація може відбуватися в автоматичному режимі з допомогою стандартів OPSEC (наприклад SAMP, CPMI).[2][3]
Для МЕ, які не підтримують протоколи OPSEC, для взаємодії із Системою запобігання вторгнення може бути використаний модуль-адаптер:
на який будуть надходити команди про зміну конфігурації МЕ.
який буде редагувати конфігурації МЕ для модифікації його параметрів.
Зміна конфігурації комунікаційного обладнання
Для протоколу SNMP, IPS аналізує і змінює параметри з бази даних MIB (такі як таблиць маршрутизації, налаштування портів) з допомогою агента пристрою, щоб блокувати атаку. Також можуть бути використані протоколи TFTP, Telnet та ін.
Активне придушення джерела атаки
Метод теоретично може бути використаний, якщо інші методи виявляться марними. IPS виявляє і блокує пакети порушника, та здійснює атаку на його сайт, за умови, що його адресу однозначно визначено і в результаті таких дій не буде завдано шкоди іншим легальним вузлам.
Такий метод реалізовано в декількох некомерційних ПО:
NetBuster запобігає проникненню в комп'ютер «Троянського коня». Він може також використовуватися як засіб «fool-the-one-trying to NetBus-you» ("обдури того, хто намагається проникнути до тебе на «Троянському коні»). У цьому випадку він розшукує шкідливу програму і визначає комп'ютер який запустив її, а потім повертає цю програму адресанту.
Tambu UDP Scrambler працює з портами UDP. Продукт діє не тільки як фіктивний UDP-порт, він може використовуватися для «паралізації» апаратури хакерів за допомогою невеликої програмки UDP flooder.
Так як гарантувати виконання всіх умов неможливо, широке застосування методу на практиці поки що неможливо.
На початку атаки
Методи реалізують заходи, які запобігають виявлені атаки до того, як вони досягають мети.
З допомогою мережевих датчиків
Мережеві датчики встановлюються в розрив каналу зв'язку так, щоб аналізувати всі пакети які проходять. Для цього вони оснащуються двома мережевими адаптерами, які функціонують у «змішаному режимі», на прийом і на передачу, записуючи всі пакети в буферну пам'ять, звідки вони зчитуються модулем виявлення атак IPS. У разі виявлення атаки ці пакети можуть бути видалені.[4]
Аналіз пакетів проводиться на основі сигнатурного або поведінкового методів.
За допомогою датчиків хостових
Віддалені атаки, які реалізуються відправкою від зловмисника серією пакетів. Захист реалізується з допомогою компоненти IPS за аналогією з мережевими датчиками, але на відміну від останніх мережева компонента перехоплює і аналізує пакети на різних рівнях взаємодії, що дає запобігати атакам по криптозахищеним IPsecіSSL/TLS з'єднанням.
Локальні атаки при несанкціонованому запуску зловмисником програм або інших діях, що порушують інформаційну безпеку. Перехоплюючи системні виклики всіх додатків і аналізуючи їх, датчики блокують ті виклики, які становлять небезпеку.