The OpenNET Project: Виявлення атак

IronBee - universal web application security sensor [ + ]
[ обговорити ] Універсальна WAF-система (Web Application Firewall) для відстеження та запобігання атак на web-додатки, розроблена ключовими розробниками системи ModSecurity . Як і ModSecurity, IronBee дозволяє нейтралізувати широкий спектр атак на web-додатки, таких як міжсайтовий скриптинг, підстановка SQL-запитів, CSRF, підстановка JavaScript-блоків на сторінки і DoS / DDoS-атаки. код проекту відкритий під ліцензією Apache.

У комплекті з IronBee поставляється бібліотека LibHTP, призначена для парсинга транзитного HTTP-трафіку і виявлення в ньому аномалій. Ключовою відмінністю від ModSecurity є можливість поділу модуля, що здійснює аналіз і фільтрацію трафіку на стороні HTTP-сервера, і компонента, що виявляє загрожують безпеці запити на основі доступного набору правил. Іншими словами, на сервері може бути залишений тільки інтерфейсний модуль, а вся логіка аналізу потоків інформації організована у вигляді універсального cloud-сервісу, який може обслуговувати відразу декілька web-серверів підприємства. Подібний підхід дозволяє перенести значне навантаження, що виникає при виконанні аналізу трафіку, на зовнішній хост, вивільнивши додаткові ресурси для web-додатків.

Серверний процес інспектування може бути впроваджений декількома способами, наприклад, завантажений як модуль для http-сервера, вбудований в додаток, запущений в режимі пасивного аналізу трафіку (як сниффер) або впроваджений у вигляді проксі-акселератора (reverse proxy). Проект має модульну архітектуру, дозволяючи легко створювати і підключати розширюють функціональність доповнення, без детального вивчення внутрішньої архітектури IronBee. Планується створення інфраструктури для спільного накопичення та обміну правилами щодо блокування різних видів атак на різні web-додатки. Крім того, буде створена централізована БД з набором правил для конкретних web-додатків і відомих вразливостей.

Suricata - Next Generation Intrusion Detection and Prevention Engine (Версія: 2.0.1 від 2014-05-26) [ + ]
[ обговорити ] Відкрита система виявлення і запобігання атак, що базується на принципово нові механізми роботи. Suricata створюється з метою створення нових ідей і технологій, а не просто розробки чергового нового інструменту дублюючого можливості інших продуктів галузі. Код проекту поширюється під ліцензією GPLv2.

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

  • Робота в багатопотоковому режимі, дозволяє найбільш повно задіяти можливості багатоядерних і багатопроцесорних систем;
  • Підтримка автоматичного визначення протоколів: IP, TCP, UDP, ICMP, HTTP, TLS, FTP і SMB. Користувач системи має можливість визначення типу протоколу в правилах, без прив'язки до номера порту (наприклад, блокувати HTTP трафік на нестандартному порту);
  • Підготовлена ​​спеціальна HTP бібліотека для нормалізації і розбору HTTP трафіку. Бібліотека може бути не тільки задіяна в складі движка Suricata, але і використана в сторонніх проектах. Код бібліотеки написаний автором проекту Mod_Security.
  • Підтримка розбору стисненого методом Gzip змісту пакетів;
  • Дуже швидкий механізм зіставлення по масці з великими наборами IP адрес;
  • Підтримка стандартних інтерфейсів для перехоплення трафіку NFQueue, IPFRing, LibPcap, IPFW. Уніфікований формат виведення результатів перевірки дозволяє використовувати стандартні утиліти для аналізу;
  • Можливість використання змінних в правилах: можна зберегти інформацію з потоку і пізніше використовувати її в інших правилах;
  • Наявність модуля для ведення докладного журналу транзитних HTTP пересилань, лог зберігається в стандартному форматі apache;
  • У найближчих планах:
    • Формування загальнодоступною розподіленої бази репутації IP адрес;
    • Можливість апаратної акселерації на стороні GPU, за рахунок залучення CUDA і OpenCL.
Blitzableiter - вільний аналізатор вразливостей в Flash контенті [ + ]
[ обговорити ] Інструмент для транзитного аналізу Flash роликів перед їх відображенням користувачеві. Програма дозволяє виявити і заблокувати виконання зловмисних ділянок ActionScript коду, інтегрованих в SWF файли з цілю поразки вразливою версії плагіна Adobe Flash, а також запобігти використанню Flash для проведення деяких видів атак на браузер.

З метою захисту від примусового ініціювання кліків на рекламу або підміни переходу на нормальні сайти сторінкою злоумишенніка, в Blitzableiter здійснюється перенаправлення деяких ключових викликів, таких як ActionGetURL2, на що додається до SWF файлу власний обробник, який контролює факти звернення за межі поточного активного домену і захищає від CSRF -атаки.

З недоліків, над усуненням яких працюють розробники, відзначається збільшення розміру вихідного файлу приблизно на 220%, додавання приблизно секундної затримки при завантаженні файлу через аналізатор і наявність проблем при модифікації певних видів SWF файлів. Наприклад, при тестуванні набору з 92 тисяч SWF файлів, 92% успішно пройшли тест на коректність формату, але задіяти захист Blitzableiter вдалося тільки для 82% файлів (проте Flash контент популярних сервісів, таких як YouTube, піддається модифікації без проблем). При перевірці ефективності Blitzableiter успішно блокував роботу всіх з 20 беруть участь в експерименті реальних експлойтів.

Вихідні тексти програми поширюються в рамках ліцензії GPLv3, написані на мові C # і вимагають для свого виконання задіяння проекту Mono. Blitzableiter може бути оформлений у вигляді плгіна до web-браузеру або у вигляді фільтруючого модуля, що працює спільно з проксі сервером Squid.

Korset - Code-based Intrusion Detection for Linux [ + ]
[ обговорити ] Система, що працює на рівні Linux ядра і виробляє моніторинг виконання програм в системі. У разі виявлення аномалій, невластивих певною програмою, додаток блокується не чекаючи факту вчинення зловмисних дій.

Korset складається з двох базових модулів:

  • Автоматичний статичний аналізатор, який будує CFG правила на етапі складання програми.
  • Агент, який працює на рівні ядра і перевіряючий проходження заданими правилами.

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

GreenSQL - Open Source database firewall (Версія: 1.3.0 від 2010-10-20) [ + ]
[ обговорити ] Дозволяє захистити MySQL від атак, спрямованих на підстановку SQL запитів. На відміну від mod_security, що реалізує подібний захист на рівні перевірки запитів до http-серверу, GreenSQL є проксі сервер, безпосередньо аналізує транзитні запити, що виявляє аномалії і блокуючий небезпечні операції.

Для кожного запиту GreenSQL обчислює ступінь ризику, при перевищенні певного порогу запит блокується. В якості фактів підвищують коефіцієнт ризику, може бути звернення до службових таблиць, використання коментарів з запитом, операції порівняння констант ( "1 = 1"), наявність виразів свідомо повертають TRUE, обнуління полів з паролем, поява "OR" з запитом і т. д.

програма дозволяє визначити список допустимих і заборонених (наприклад, блокувати запити зі згадуванням id адміністратора) масок для таких операцій, як DELETE, UPDATE і INSERT, а також блокувати виконання адміністративних операцій, подібних DROP і CREATE. Управління програмою та перегляд статистики роботи проводиться через web-інтерфейс.