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



    Два года подряд во время международного форума 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.
    Positive Technologies 303,17
    Компания
    Поделиться публикацией
    Комментарии 13
    • 0
      Потребительский вопрос. :) А почему у вас на сайте нет технической документации на продукт, с подробными описаниями настроек и возможных конфигурации. Только реклама.
      • +2
        Для знакомства с общими функциональными возможностями бывает достаточно почитать Data Sheet:
        www.ptsecurity.ru/appsecurity/application-firewall/AF_DS_A4.RUS.0002.02.JUL.14.2015.pdf

        Если же вам хочется познакомится с продуктом поближе, то пожалуйста записывайтесь на демонстрацию, пилотный проект или бесплатное тестирование – дадим и сам продукт, и самую подробную документацию. Записаться можно здесь: af.ptsecurity.ru
      • 0
        Переработка архитектуры ядра продукта, с целью получения возможности встраивания в любые Proxy web-servers, такие как nginx, apache, lighttpd, IIS.


        т.е. работа не как HW или VE appliance, а как плагин для уже работающего у клиента веб-сервера?

        • 0
          и еще пара вопросов.
          ваш кластер подразумевает отказоустойчивость, подхват соединений и синхронизацию конфигов между членами кластера?
          если ставить как reverse-proxy, поддерживается ли балансировка между группой серверов и health checking?

          и последний вопрос)) оборудование продается под проект через партнера или заказчикам можно обращаться к вам напрямую?

          спасибо!
          • 0
            т.е. работа не как HW или VE appliance, а как плагин для уже работающего у клиента веб-сервера?

            Да, планируется работа AF не только как hardware или virtual appliance, но и как плагин к веб-серверу.

            ваш кластер подразумевает отказоустойчивость, подхват соединений и синхронизацию конфигов между членами кластера?
            если ставить как reverse-proxy, поддерживается ли балансировка между группой серверов и health checking?

            Да, конечно, кластер реализован со всеми необходимыми технологиями отказоустойчивости.

            оборудование продается под проект через партнера или заказчикам можно обращаться к вам напрямую

            Только через авторизованных партнёров.
          • 0
            Версию kibana на 4 будете обновлять?
            • 0
              Нет, будем писать свою кибану.
              • 0
                Набираем команду в том числе и для этого :)
              • 0
                А сейчас что используется, если есть пункт «Переход на более быстрые библиотеки/драйвера получения данных с сетевых карт»?
                • 0
                  возможно, рассматривается переход с обычных серверов на custom-built железо с L2 коммутаторами, с аппаратными L4 и SSL оффлоадом.
                  если продукт выстрелил, то это один из очевидных этапов развития.

                  это лишь мой взгляд со стороны. посмотрим, что ответ вендор.

                  • 0
                    Нет, Netmap никакого отношения к custom железу не имеет, он работает исключительно на серверах общего назначения. А про offload в статьей итак сказано.
                    • 0
                      да, вы правы. не увидел упоминания netmap в вашей цитате.
                  • 0
                    Сейчас используем libnids + libpcap, также есть работающая версия на netmap, но ее нужно развивать.

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                  Самое читаемое