Доступна система виявлення атак Suricata 5.0

Організація OISF (Open Information Security Foundation) опублікувала реліз системи виявлення та запобігання мережевим вторгненням Meerkat 5.0яка надає засоби інспектування різних видів трафіку. У конфігураціях Suricata припустимо задіяння бази сигнатур, що розвивається проектом Snort, а також наборів правил Emerging Threats и Emerging Threats Pro. Вихідні тексти проекту поширюються ліцензія GPLv2.

Основні зміни:

  • Представлені нові модулі розбирання та ведення лога для протоколів
    RDP, SNMP та SIP, написані мовою Rust. У модуль для аналізу FTP додана можливість ведення лога через підсистему EVE, що забезпечує виведення подій у форматі JSON;

  • На додаток до підтримки методу ідентифікації TLS-клієнтів JA3, що з'явилася в минулому випуску, додана підтримка методу JA3S, що дозволяє на основі особливостей узгодження з'єднань і параметрів, що задаються, визначати яке ПЗ використовується для встановлення з'єднання (наприклад, дозволяє визначити використання Tor і інших типових додатків). JA3 дає можливість визначати клієнтів, а JA3S – сервери. Результати визначення можна використовувати в мові завдання правил та у логах;
  • Додано експериментальну можливість зіставлення з вибіркою з великих наборів даних, що реалізується за допомогою нових операцій dataset та datarep. Наприклад, можливість застосовна для пошуку масок у великих чорних списках, що налічують мільйони записів;
  • У режимі інспектування HTTP забезпечено повне покриття всіх ситуацій, описаних у тестовому наборі HTTP Evader (наприклад, охоплює методи, що застосовуються для приховування трафіку шкідливої ​​активності);
  • Засоби розробки модулів мовою Rust переведені з опцій до розряду обов'язкових штатних можливостей. Надалі планується розширення застосування Rust у кодовій базі проекту та поступова заміна модулів на аналоги, розроблені на Rust;
  • Двигун визначення протоколів покращено в області підвищення точності та обробки асинхронних потоків трафіку;
  • EVE-лог додає підтримку нового типу записів «anomaly», в яких зберігаються нетипові події, що виявляються при декодуванні пакетів. У EVE також розширено відображення інформації про VLAN та інтерфейси захоплення трафіку. Додано опцію для збереження всіх HTTP-заголовків у http-записах лога EVE;
  • В обробниках на базі eBPF забезпечено підтримку апаратних механізмів прискорення захоплення пакетів. Апаратне прискорення поки що обмежене мережевими адаптерами Netronome, але незабаром з'явиться і для іншого обладнання;
  • Переписаний код для захоплення трафіку за допомогою фреймворку Netmap. Додано можливість використання розширених можливостей Netmap, таких як віртуальний комутатор Валі;
  • Додана підтримка нової схеми визначення ключових слів для "липких буферів" (Sticky Buffers). Нова схема визначена у форматі «протокол.буфер», наприклад, для інроспектування URI ключове слово набуде вигляду «http.uri» замість «http_uri»;
  • Весь використовується Python код перевірено на сумісність з
    Python 3;

  • Припинено підтримку архітектури Tilera, текстового лога dns.log та старого лога files-json.log.

Особливості Suricata:

  • Використання для виведення результатів перевірки уніфікованого формату Уніфікований2, що також використовується проектом Snort, що дозволяє використовувати стандартні інструменти для аналізу, такі як сарай 2. Можливість інтеграції з продуктами BASE, Snorby, Sguil та SQueRT. Підтримка виводу у форматі PCAP;
  • Підтримка автоматичного визначення протоколів (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB тощо), що дозволяє оперувати лише типом протоколу, без прив'язки до номера порту (наприклад, блокувати HTTP трафік на нестандартному порту) . Наявність декодувальників для протоколів HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP та SSH;
  • Потужна система аналізу HTTP-трафіку, що використовує для аналізу та нормалізації HTTP-трафіку спеціальну бібліотеку HTP, створену автором проекту Mod_Security. Доступний модуль для ведення докладного лога транзитних HTTP пересилок, лог зберігається у стандартному форматі
    Apache. Підтримується вилучення та перевірка файлів, що передаються за протоколом HTTP. Підтримка аналізу стисненого контенту. Можливість ідентифікації за URI, Cookie, заголовками, user-agent, тілом запиту/відповіді;

  • Підтримка різних інтерфейсів для перехоплення трафіку, включаючи NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Можливий аналіз вже збережених файлів у форматі PCAP;
  • Висока продуктивність, здатність обробляти на звичайному устаткуванні потоки до 10 гігабіт/сек.
  • Високопродуктивний механізм зіставлення маскою з великими наборами IP адрес. Підтримка виділення контенту за маскою та регулярними виразами. Виділення файлів з трафіку, у тому числі їх ідентифікація на ім'я, тип або контрольну суму MD5.
  • Можливість використання змінних у правилах: можна зберегти інформацію з потоку та пізніше використовувати її в інших правилах;
  • Використання формату YAML у конфігураційних файлах, що дозволяє зберегти наочність при легкості машинної обробки;
  • Повна підтримка IPv6;
  • Вбудований двигун для автоматичної дефрагментації та перескладання пакетів, що дозволяє забезпечити коректну обробку потоків, незалежно від порядку надходження пакетів;
  • Підтримка протоколів тунелювання: Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE;
  • Підтримка декодування пакетів: IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN;
  • Режим ведення лога ключів та сертифікатів, що фігурують у рамках з'єднань TLS/SSL;
  • Можливість написання скриптів мовою Lua для забезпечення розширеного аналізу та реалізації додаткових можливостей, необхідних визначення видів трафіку, котрим замало стандартних правил.
  • Джерело: opennet.ru

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