Кандидат у релізи системи виявлення атак Snort 3

Компанія Cisco оголосила про формування кандидата в релізи повністю переробленої системи запобігання атакам Хроп 3, також відома як проект Snort++, робота над яким з перервами ведеться ще з 2005 року. Стабільний реліз планується опублікувати упродовж місяця.

У гілці Snort 3 повністю переосмислено концепцію продукту та перероблено архітектуру. Серед ключових напрямів розвитку Snort 3: спрощення налаштування та запуску Snort, автоматизація конфігурування, спрощення мови побудови правил, автоматичне визначення всіх протоколів, надання оболонки для управління з командного рядка, активне застосування багатопоточності із спільним доступом різних обробників до єдиної конфігурації.

Реалізовано такі значні нововведення:

  • Здійснено перехід на нову систему конфігурації, що пропонує спрощений синтаксис та дозволяє використовувати скрипти для динамічного формування налаштувань. Для обробки конфігураційних файлів використовується LuaJIT. Надаються плагіни на базі LuaJIT з реалізацією додаткових опцій для правил та системи ведення логів;
  • Модернізовано двигун визначення атак, актуалізовано правила, додано можливість прив'язки буферів до правил (sticky buffers). Задіяний пошуковий движок Hyperscan, що дозволив використовувати в правилах швидкі та більш спрацьовують шаблони на основі регулярних виразів;
  • Додано новий режим інтроспекції для HTTP, що враховує стан сеансу та охоплює 99% ситуацій, що підтримуються тестовим набором HTTP Evader. Додано систему інспектування трафіку HTTP/2;
  • Істотно збільшено продуктивність режиму глибокого інспектування пакетів. Додано можливість багатопотокової обробки пакетів, що допускає одночасне виконання кількох ниток з оброблювачами пакетів і забезпечує лінійну масштабованість залежно від кількості ядер CPU;
  • Реалізовано загальне сховище конфігурації та таблиці атрибутів, що спільно використовується у різних підсистемах, що дозволило помітно знизити споживання пам'яті завдяки виключенню дублювання інформації;
  • Нова система журналу подій, що використовує формат JSON і легко інтегрована із зовнішніми платформами, такими як Elastic Stack;
  • Перехід на модульну архітектуру, можливість розширення функціональності через підключення плагінів та реалізація ключових підсистем у вигляді плагінів, що замінюються. В даний час для Snort 3 вже реалізовано кілька сотень плагінів, що охоплюють різні сфери застосування, наприклад, що дозволяють додати власні кодеки, режими інтроспекції, методи журналування, дії та опції у правилах;
  • Автоматичне визначення працюючих служб, що позбавляє необхідності ручної вказівки активних мережевих портів.
  • Додана підтримка файлів для швидкого перевизначення налаштувань щодо конфігурації за замовчуванням. Для спрощення налаштування припинено використання snort_config.lua та SNORT_LUA_PATH.
    Додано підтримку перезавантаження налаштувань на льоту;

  • У коді забезпечено можливість використання конструкцій C++, визначених у стандарті C++14 (для збирання потрібен компілятор, що підтримує C++14);
  • Доданий новий обробник VXLAN;
  • Поліпшено пошук типів контенту за вмістом з використанням оновлених альтернативних реалізацій алгоритмів Бойєра-Мура и Гіперсканування;
  • Прискорено запуск рахунок використання кількох потоків для компіляції груп правил;
  • Додано новий механізм ведення логів;
  • Додано систему інспектування RNA (Real-time Network Awareness), що збирає відомості про доступні в мережі ресурси, хости, додатки та сервіси.

Джерело: opennet.ru

Додати коментар або відгук