ИБ. Ещё один WAF

ИБ. Ещё один WAF
Полторы недели назад Код Безопасности неожиданно объявил о выпуске межсетевого экрана для web приложений (web application firewall) «Континент WAF». А на прошлой неделе на вебинаре КБ раскрыли подробности нового продукта и сказали, что он уже доступен для продажи и тестирования.

Как так? Без предварительных анонсов и спойлеров? Без упоминания в прошлогодних планах? Просто взяли и выпустили технологически сложный продукт. Ответ вы узнаете чуть позже, а пока кратко пройдемся по истории.

С 2003 года, а может быть и ранее в РФ наиболее популярным вариантом защиты web приложений был опенсорсный modsecurity. Несмотря на сложности в настройке, он был и, пожалуй, остается одним из наиболее эффективных решений. Но корпоративным заказчикам было неудобно с ним работать. В связи с этим стало появляться много коммерческих продуктов которые взяли за основу modsecurity, сигнатуры или работали по схожему принципу.

Примерно в 2008 году на рынке корпоративного ИБ РФ начало продвигаться западное решение в области специализированных межсетевых экранов для защиты web приложений - imperva securesphere web application firewall.  Позже продвигались и другие западные решения Fortigate Web, Barracuda WAF, Cisco ACE, но это были скорее разовые проекты.

Временем серьезной популярности WAF в РФ можно считать с 2011 года, когда Imperva получили сертификат ФСТЭК на свое решение и его можно было внедрять ещё и в гос. органах. С этого момента популярность WAF только увеличивалась, что не удивительно, ведь область применения – все компании имеющие важные web приложения (их количество стремится к 100% со временем) сочетались с гибкой ценовой политикой (по стоимости доступны были не только крупным, но и средним компаниям. по стоимости сравнимы с IPS). Но кризис 2014 серьезно подкосил imperva в РФ. Цены выросли в несколько раз (что существенно сокращало область применения до крупных корпораций), потом задержки с поставками, потом санкции и т.п.

Параллельно с этим, примерно в 2013 -2014 году с резкой критикой существующих WAF решений выступили многие российские исследователи / пентестеры. Закончилось это появлением собственных решений сначала wallarm, потом positive technologies application firewall и solidlab WAF. В отличие от западных вендоров, которые черпали идеи в открытых сообществах типа OWASP, наши разработчики опирались на собственный опыт пентестов, bugbounty и соревнований CTF. Это позволило им создать WAF нового поколения.

 Wallarm изначально был больше применим для малого бизнеса и западных компаний (ведь безопасники крупных российских компаний не спешили доверять облакам). PT AF наоборот позиционировался для крупных компаний и гос. Solidwall же не был особо известен на корпоративном рынке ИБ, по крайне мере я не слышал о нем до сего дня. А чтобы помочь донести WAF до средних компаний, Infowatch включили wallarm в состав своей группы решений под названием attack killer.

В конце 2016 года событий, связанных с WAF в РФ стало ещё больше: появились новые требования ФСТЭК к межсетевым экранам, в том числе WAF были вынесены в отдельный тип, появились обязательные требования к наличию WAF у лицензиатов ФСТЭК , в конце 2016 года Pentest.IT выпустили Nemesida WAF (бюджетный облачный WAF с планами по сертификации в ФСТЭК).



И вот на прошлой неделе Континент WAF. Расскажу самое интересное с вебинара:
·         Планируют получить сертификат ФСТЭК по 4 классу по новым требованиям уже этим летом
·         Запускаться будет на стандартных платформах Континент 400, 1000, 3000 (система управления на континент 100)
·         Производительность планируют в 1000 RPS для Континент 1000 (для сравнения, у PT AF в линейке решений 5000, 40000, 100000 RPS)
·         В функциях кроме стандартных сигнатур для WEB и фильтрации HTTP есть ещё и автоматическое профилирование приложения, и анализ профилирование поведения пользователя – а это уже рядом с Imperva
·         Решение сделали не самостоятельно, а в партнерстве с Solidlab(думаю партнерство аналогичное тому как КБ раньше работали с ESET и Agnitum)




Что нас ждет дальше? Бум разработки WAF от отечественных производителей (Searchinform windows actual firewall?) или на этом успокоимся?

PS:
Отдельно связался с solidlab и попросил немного рассказать про их решение:
·         SolidWall "WAF" и "Континент" WAF это два параллельно живущих решения
·         Продукт построен на платформе Linux и имеет собственную уникальную архитектуру и набор функциональных модулей за исключением системы захвата трафика на основе NGinx (активный режим) или Suricata (пассивный режим), а также сигнатурного анализатора ModSecurity (сделано для обеспечения совместимости с открытым форматом сигнатур)
·         Про сигнатуры... Ответов на этот вопрос много. Дело в том, что наш WAF состоит из целого набора модулей, которые работают на различных уровнях абстракции веб-приложения и на основе различных методах. Пройдемся по порядку: Первый уровень абстракции - это уровень протокола HTTP. На этом уровне осуществляется протокольная валидация, которая позволяет исключить атаки на уровень парсера веб-сервера, фреймворка или избежать неприятных вещей типа Http Parameter Contamination (HPC). Соответственно, понятие сигнатуры тут - это правила в терминах RFC о протоколе HTTP. Есть базовый набор правил, который по желанию можно расширить: запретить определенные заголовки или, например, HPP, если приложение не использует одноименные параметры. Как видно, на этом уровне сплетаются два способа задания правильного и нежелательного: black-listing и модель нормального поведения. Второй уровень абстракции - это атаки, синтаксиса входных параметров в домене веб-приложения. Здесь также мы используем два варианта описания: black-listing для обнаружения injection-атак и автоматическое или ручное формирование синтаксических моделей параметров веб-приложения. Для модуля black-listing'а синтаксических атак на самом нижнем уровне используется mod_security, который обвешан различными дополнениями: интеллектуально подавление ложных срабатываний, автоматическое обновление через подписки от TrustWave или ручное создание собственных сигнатур. На самом деле, основной упор делается на модуль автоматического вывода синтаксических форм параметров веб-приложений, так как такой подход позволяет избежать injection-атак в подавляющем большинстве случаев by design. Остаются только различные сложные варианты типа File Upload. Третий уровень абстракции - это все, что связано с семантикой параметров: время жизни сессий, атаки на авторизацию и аутентификацию, манипуляции с CSRF-токеном, переборные атаки, нарушение последовательностей действий и т.п. Здесь сигнатурой опять же является мета-правило более высокого порядка, которое формулируется в терминах не синтаксиса параметров, но действий и их атрибутов. Это если кратко. Технологически, конечно, все намного сложнее.
·         Про основу - у нас почти все написано на Питоне и есть модули на Си. целевая система – Ubuntu. Соответственно для модулей на Си есть Питоновские обертки. Идея нашего слоеной модульности в т.ч. чтобы избежать лаборатории с выпуском новых сигнатур для блеклистинга эксплойтов ибо известно, что это во-первых, операционно дорого, а во вторых плохо работает в мире веба потому ставка на позитивные модели для каждый бизнес-действий

Пару слов про Nemesida от Pentest.IT
·         WAF наша собственная разработка, выполнен в виде модуля для nginx
·         Сигнатуры:
 * анализ security trackers;
 * отдел аудита и тестирования на проникновение, собственные исследования;
 * собственная лаборатория  lab.pentestit.ru  с количеством участников
   15.000 со всего мира и "чистыми" логами атак по 50-60 Гб в день в
   первые две недели запуска;
 * защищаемые сайты;
·         Сертификацией ФТСЭК активно занимаемся в данный момент


Alt text
В пятом выпуске мы расскажем о кибератаках на Pfizer, SolarWinds, а также о масштабных хищениях с помощью изощренных взломов. Новый обзор в нашем Youtube канале!