Два года подряд во время международного форума Positive Hack Days проходил конкурс WAF Bypass по обходу межсетевого экрана PT Application Firewall. Мы публиковали в блоге разбор заданий этого соревнования (2014 год и 2015 год).
За год популярность соревнования значительно выросла: этой весной для участия зарегистрировалось 302 человека (годом ранее — 101), которые за время конкурса отправили 271390 запросов (вдвое больше, чем в предыдущем году).
При этом многие участники соревнования и гости PHDays интересовались не только самим соревнованием и его заданиями, но и экраном, который нужно было обходить. Поэтому мы решили немного подробнее рассказать об этом инструменте и пригласить поучаствовать в его разработке тех хабраюзеров, которые интересуются темой WAF не только в рамках конкурсов.
Немного истории
Наша компания уже 13 лет занимается борьбой с киберугрозами, за это время мы разработали целый ряд программных решений, которые сейчас обеспечивают безопасность более 1000 компаний в 30 государствах.
Одним из таких проектов является интеллектуальный межсетевой экран Positive Technologies Application Firewall (PT AF) — он помогает защищать веб-порталы, ERP-системы и мобильные приложения. Продукт уже неплохо показал себя в «боевых» условиях: например, при защите сайтов медиа-холдинга ВГТРК во время зимней Олимпиады-2014. А международная аналитическая компания Gartner, изучив наш защитный экран, назвала компанию Positive Technologies «Визионером» в своем исследовании «Magic Quadrant for Application Firewalls 2015».
Мы хотим сделать продукт еще лучше, и для этого нам нужны увлеченные люди.
Технические подробности
Продукт разрабатывается и поставляется как Hardware Appliance или Virtual Appliance (с режимами работы Reverse Proxy, Mirrored SPAN и Forensics) — поэтому все части системы должны дополнять друг друга. Решение «заточено» на работу с высоконагруженными системами (трафик 10 Gbps). Предусмотрена возможность кластерной установки с горизонтальным масштабированием для увеличения производительности.
Рассматривая PT AF как многокомпонентную систему, можно выделить несколько направлений разработки:
- Система сборки и установки продукта;
- User Interface. Frontend;
- User Interface. Backend;
- Ядро продукта. Логика анализа трафика;
- Сетевая инфраструктура. Логика получения и разбора трафика;
- Машинное обучение. Эвристические алгоритмы по оценке пользовательского поведения и отправляемых данных.
Для дальнейшего развития системы мы ищем разработчиков C++, Python/JS и тестировщиков. И вот какими задачами им (то есть вам) предстоит заниматься.
Разработчики C++
- Реализация алгоритмов машинного обучения для выделения аномалий в передаваемом трафике, аномалий пользовательского поведения, bot detection, DDoS detection.
- Использование GPU для ускорения математических обсчетов, технологии CUDA, OpenCL (используется в алгоритмах машинного обучения). Предполагается исследование Xeon Phi.
- Переработка архитектуры ядра продукта, с целью получения возможности встраивания в любые Proxy web-servers, такие как nginx, apache, lighttpd, IIS.
- Интеграция SSL acceleration device в appliance PT AF.
- Анализ трафика к базам данных, разбор протоколов, выявление аномалий в трафике, разграничение возможности доступа пользователей.
- Переход на более быстрые библиотеки/драйвера получения данных с сетевых карт, такие как Netmap, SPDK.
- Внедрение технологии Load balancing traffic.
Разработчики Python/JS
- Проработка и реализация SaaS-архитектуры PT AF.
- Реализация возможности разграничения полномочий пользователей по управлению политиками безопасности для большого числа установленных копий продукта (multitenance).
- Работа над REST API — инструментом управления PT AF, который используется как для собственного UI, так и для интеграции с любыми другими внешними системами.
- Развитие систем Orchestration и Provisioning, позволяющих создавать достаточное количество копий продукта для обслуживания пользовательского трафика.
- CLI – консольный интерфейс управления продуктом на основе REST API.
- Разработка и поддержка новой версии Frontend для UI. Язык преимущественно AngularJS, Node.JS.
- Развитие системы обновления продукта. Интеграция с собственным сервером управления лицензиями. Организация доступа для технической поддержки на сервер PT AF. Сбор статистической информации с PT AF на сервер сбора данных.
- Доработка системы отчетности — генерация отчетов об инцидентах, статусе системы, нагрузке, шаблонизирование пользовательских отчетов.
Инженеры по качеству
- Ручное и автоматизированное тестирование всего перечисленного выше;
- Проверка защиты L7 через WAF от всевозможных типов атак;
- Поддержка фермы нагрузочного тестирования и его проведение (десятки тысяч HTTP RPS);
- Анализ сложной функциональности и разработка подходов к её тестированию.
Что мы предлагаем
Команда проекта пока небольшая, а значит, каждый ее член может принимать ключевые решения. Помимо прочего, работа в Positive Technologies — это:
- Оформление согласно ТК РФ;
- 6 недель оплачиваемого отпуска;
- ДМС, включая стоматологию;
- Возможность выбрать время начала рабочего дня;
- Офис в 30 шагах от метро Преображенская площадь (Москва);
- Возможность посещать профильные международные и российские конференции;
- Отсутствие дресс-кода и уважение к ценностям каждого сотрудника.
Рассказ о себе и проектах, в которых удалось поучаствовать, присылайте в текстовом формате в теле письма на адрес электронной почты career@ptsecurity.com.
Комментарии (13)
zup
08.09.2015 18:43Переработка архитектуры ядра продукта, с целью получения возможности встраивания в любые Proxy web-servers, такие как nginx, apache, lighttpd, IIS.
т.е. работа не как HW или VE appliance, а как плагин для уже работающего у клиента веб-сервера?
zup
08.09.2015 18:52и еще пара вопросов.
ваш кластер подразумевает отказоустойчивость, подхват соединений и синхронизацию конфигов между членами кластера?
если ставить как reverse-proxy, поддерживается ли балансировка между группой серверов и health checking?
и последний вопрос)) оборудование продается под проект через партнера или заказчикам можно обращаться к вам напрямую?
спасибо!ptsecurity
09.09.2015 12:34т.е. работа не как HW или VE appliance, а как плагин для уже работающего у клиента веб-сервера?
Да, планируется работа AF не только как hardware или virtual appliance, но и как плагин к веб-серверу.
ваш кластер подразумевает отказоустойчивость, подхват соединений и синхронизацию конфигов между членами кластера?
если ставить как reverse-proxy, поддерживается ли балансировка между группой серверов и health checking?
Да, конечно, кластер реализован со всеми необходимыми технологиями отказоустойчивости.
оборудование продается под проект через партнера или заказчикам можно обращаться к вам напрямую
Только через авторизованных партнёров.
pavelodintsov
09.09.2015 12:01А сейчас что используется, если есть пункт «Переход на более быстрые библиотеки/драйвера получения данных с сетевых карт»?
zup
09.09.2015 13:01возможно, рассматривается переход с обычных серверов на custom-built железо с L2 коммутаторами, с аппаратными L4 и SSL оффлоадом.
если продукт выстрелил, то это один из очевидных этапов развития.
это лишь мой взгляд со стороны. посмотрим, что ответ вендор.
pavelodintsov
09.09.2015 13:24Нет, Netmap никакого отношения к custom железу не имеет, он работает исключительно на серверах общего назначения. А про offload в статьей итак сказано.
Raz0r
09.09.2015 13:59Сейчас используем libnids + libpcap, также есть работающая версия на netmap, но ее нужно развивать.
Spewow
Потребительский вопрос. :) А почему у вас на сайте нет технической документации на продукт, с подробными описаниями настроек и возможных конфигурации. Только реклама.
ptsecurity
Для знакомства с общими функциональными возможностями бывает достаточно почитать Data Sheet:
www.ptsecurity.ru/appsecurity/application-firewall/AF_DS_A4.RUS.0002.02.JUL.14.2015.pdf
Если же вам хочется познакомится с продуктом поближе, то пожалуйста записывайтесь на демонстрацию, пилотный проект или бесплатное тестирование – дадим и сам продукт, и самую подробную документацию. Записаться можно здесь: af.ptsecurity.ru