Pull to refresh

Защита корпоративных приложений: как стать разработчиком PT Application Firewall

Reading time4 min
Views16K


Два года подряд во время международного форума 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.
Tags:
Hubs:
+11
Comments13

Articles

Information

Website
www.ptsecurity.com
Registered
Founded
2002
Employees
1,001–5,000 employees
Location
Россия