Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






З.1. Основи






 

Система Snort підтримує методи дослідження і заголовка, і корисних даних пакетів, що дозволяє повністю визначити всі контрольовані параметри пакетів в єдиному правилі. Така гнучкість допомагає створювати спеціалізовані правила для фільтрації трафіку на конкретному вузлі і максимально знижувати кількість помилкових тривог. При цьому формат правил робить їх дуже простими для читання. Створення фільтрів TCP-dump, зокрема пошук пакетів тільки з певним встановленим прапором для системи Snort не складає ніякої складності.

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

Крім того, сигнатури, що дозволяють аналітику мережного трафіку досліджувати значення будь-якого поля заголовка або корисного навантаження з різних точок зору, потенційно покращують якість систем виявлення вторгнень. Іншими словами, якщо NIDS допомагає формулювати правила для дослідження пакетів тількипо конкретному значенню IP-адреси, або номеру порту, або протоколу, то, значить, вона не здатна досліджувати корисне навантаження або поля заголовків на більш глибокому рівні, наприклад на рівні установки TCP-прапорів. Можливо, аналітику буде потрібно знайти АСК-пакети з певним вмістом в корисних даних. Окрім АСК в пакеті можуть бути встановлені і інші прапори, тому повинні існувати сигнатури для виявлення пакетів з конкретним набором прапорів.

Можливість аналізувати будь-яке поле пакету є відмінною рисою системи Snort. Існує безліч різних параметрів, що дозволяють задати в правилі Snort будь-яке поле і перевірити його значення. Крім того, якщо декілька полів не можуть бути перевірені за допомогою доступних параметрів створення правил, то Snort допомагає проаналізувати їх за допомогою фільтру, указуваного в кінці командного рядка, або параметра -F, який дозволяє використовувати збережені у файлі фільтри BPF (Berkeley Packet Filters). Фільтри BPF раніше називали фільтрами TCP-dump. З їх допомогою в пакеті конкретного протоколу можна визначити значення поля, що цікавить. Наприклад, в Snort немає спеціального параметра для перевірки значення поля " Версія IP", яке займає старший півбайт нульового байта IP-заголовка. За допомогою BPF-фільтру система Snort може досліджувати пакети прямо з мережі або з двійкового файлу даних TCP-dump, щоб знайти всі пакети, в яких вказане значення версії IP не рівно 4. Для аналізу пакетів, перехоплених з мережі, можна використовувати наступну команду:

snort -v 'ip[0] & 0xf0! = 0x40'

Використаний тут фільтр, дозволяє замаскувати молодший півбайт нульового байта IP-заголовка і перевірити, чи рівне значення старшого півбайта 4. Результати аналізу виводяться на екран (параметр -v).

Ще одна перевага використовування Snort полягає в широкому наборі заздалегідь визначених правил, які поставляються спільно з системою. Не рекомендується інсталювати всі доступні правила, оскільки, чим більше активних правил, тим повільніше виконується перевірка трафіку. Аналітик сам повинен вирішити, які правила краще підходять для його мережі. Дивно, але нові програмні коди правил для Snort надаються всього через декілька годин після виявлення чергової програми атаки. В цьому ще раз виявляється перевага відкритого початкового коду, коли багато користувачів і розробників Snort можуть практично миттєво реагувати на виникаючу загрозу розробкою і тестуванням нових правил.

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

Добрі правила можна пізнати по наявності перевірок для значень полів, які повинні залишатися постійними для успіху тієї або іншої програми атаки. Наприклад, якщо в якій-небудь програмі атаки, направленої проти служби DNS, використовується стандартне значення ідентифікатора 0xBEEF, то перевірку значення цього поля не можна назвати складовою доброго правила. Це значення звичайно міняють в початковому коді програми атаки, адже її успіх абсолютно не залежить від значення ідентифікатора DNS.

Приховані сигнатури


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.005 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал