29.08.2022

Одна из наиболее популярных целей киберпреступников — веб-приложения. Их взлом возможен из-за наличия уязвимостей в коде. Обнаруживать потенциальные уязвимости в приложениях во время их эксплуатации помогают сканеры безопасности, в том числе инструменты класса DAST (динамический анализ без доступа к исходному коду и среде исполнения, метод черного ящика). О том, на какие параметры стоит обратить внимание при выборе динамического анализатора рассказали руководитель отдела разработки PT BlackBox компании Positive Technologies Евгений Рыжов и руководитель группы обеспечения качества PT BlackBox Олег Халаджиев.


Сейчас на этом рынке остались только решения open source: все западные вендоры, предлагавшие коробочные продукты в этом классе, наш рынок в этом году покинули. Остальные продукты — это сочетание SAST (статический анализ кода, использует метод белого ящика), DAST и иногда IAST (интерактивный анализ кода).

Несколько терминов:

Тестирование методом черного ящика — оценка защищенности приложения внешним исследователем без предварительного получения от владельца каких-либо дополнительных данных о приложении, кроме его адреса.

Тестирование методом белого ящика — оценка защищенности приложения с использованием всех имеющихся о нем данных, включая исходный код приложения.

On-premise — программное обеспечение, которое распространяется по подписке, но устанавливается на серверах компании, как правило, внутри корпоративной сети. Такие решения можно модифицировать под определенную специфику, заказав доработку у вендора.

Open source — программное обеспечение с открытым исходным кодом, поставляемое конечному пользователю. Такое ПО можно свободно использовать, дорабатывать под свои задачи и распространять.

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

Евгений Рыжов, руководитель отдела разработки PT BlackBox компании Positive Technologies Евгений Рыжов, руководитель отдела разработки PT BlackBox компании Positive Technologies Евгений Рыжов: В абсолютном большинстве случаев (по нашим данным, это 98%) злоумышленники имеют возможность проводить атаки на веб-ресурсы. В 91% приложений могут происходить утечки информации, а две трети ресурсов, исследованных нами, подвержены раскрытию персональных данных. Все это грозит компаниям финансовыми и репутационными потерями, нарушением работы важных для бизнеса систем. Поэтому приложения нужно защищать и не оставлять слабых мест при их разработке и эксплуатации.

Некоторые владельцы веб-ресурсов полагают, что если их приложение посещает небольшое количество пользователей, то и злоумышленников оно не заинтересует, а значит, беспокоиться о его защите нет необходимости. На самом деле, это не так. Например, низкоквалифицированные киберпреступники — их обычно называют скрипт-кидди — могут запускать скрипты, которые ищут сайты на базе WordPress или Apache по всем IP-адресам в интернете. В дальнейшем злоумышленники точечно проверяют найденные сайты на известные уязвимости. Если им повезет, они обнаружат старую версию сервера или программы с незакрытой уязвимостью, которую смогут проэксплуатировать.

При худшем стечении обстоятельств дырой может оказаться RCE-уязвимость, позволяющая изменить или удалить сервер, где развернуто приложение, или возможность проведения SQL-инъекции, с помощью которой можно украсть данные с сервера. В лучшем случае злоумышленники ограничатся дефейсом сайта: много примеров подобного рода атак мы видели этой весной. Например, когда ряд российских СМИ — "Известия", "Коммерсантъ", "Фонтанка", РБК — сообщили об атаках на свои ресурсы. Сегодня важность обеспечения кибербезопасности понимают не только руководители служб ИБ, но и первые лица компаний, в том числе технические директора.

Олег Халаджиев, руководитель группы обеспечения качества PT BlackBox Олег Халаджиев, руководитель группы обеспечения качества PT BlackBox Олег Халаджиев: Компаниям необходимо выстраивать полноценный и непрерывный процесс безопасности, с максимального количества сторон охватывающий этапы разработки, тестирования, развертывания и эксплуатации приложений. 23 августа мы представили первый в России динамический анализатор приложений ― PT BlackBox, осуществляющий проверку методом черного ящика. Сканер тестирует защищенность развернутых приложений и обнаруживает уязвимые места в сетевой безопасности. Так, PT BlackBox "обходит" приложение, просматривает параметры окружения, серверы и их конфигурации — и подсвечивает ошибки, если они есть. В отличие от средств статического анализа, инструменты класса DAST знают рабочую среду, в которой работает приложение, как оно развернуто, и потому точно определяют, какие уязвимости злоумышленники могут эксплуатировать в боевых условиях. Динамический анализ в том числе показывает, есть ли у компании устаревший софт, потенциальные бреши в серверах и другие проблемы безопасности, в частности, лежащие на поверхности, которые легко смогут найти скрипт-кидди.

Какую пользу PT BlackBox принесет организациям, еще не внедрившим безопасную разработку, и тем, кто только выстраивает процессы DevSecOps (development, security, operations)? Легко ли его устанавливать и какие специалисты необходимы, чтобы контролировать его работу?

Евгений Рыжов: Основные пользователи PT BlackBox — разработчики и специалисты DevOps и DevSecOps. Сканер Positive Technologies хорош тем, что позволяет компаниям оценить защищенность приложений и не требует при этом больших стартовых затрат на "железо" и специалистов по ИБ, как и проведения сложных и долгих манипуляций по внедрению и развертыванию. В дальнейшем PT BlackBox легко можно встроить в процесс безопасной разработки (DevSecOps) — продукт либо поможет наладить его, либо будет интегрирован в уже существующий.

Олег Халаджиев: Развертывание PT BlackBox происходит максимально просто, а на его настройку у опытного специалиста уйдет буквально полчаса: пользователь скачивает на виртуальную или физическую машину, где уже установлены Docker и Docker Compose, маленький установочный файл. По аналогии с Chrome этот файл скачивает в интернете все необходимые компоненты, сервисы и автоматически устанавливает сканер. Пользователю остается только авторизоваться в системе с логином и паролем, указать адрес цели и запустить сканирование, чтобы получить первый отчет.

Пользователь также может встроить PT BlackBox в процессы непрерывной интеграции и непрерывной доставки — для этого есть скрипт, который всего за полчаса настроит продукт. В этом случае сканирование запустится автоматически. Задача пользователя — исправить обнаруженные уязвимости, зафиксировать их и запустить сборку приложения.

Установить PT BlackBox можно за 30 минут, а внедрить — за 1 час.

Российский рынок покинули зарубежные вендоры, в том числе все разработчики средств DAST. Тем не менее компании по-прежнему могут использовать продукты этого класса со свободной лицензией. В чем преимущества динамического сканера "из коробки"?

Евгений Рыжов: Компании любят применять решения open source, потому что их можно доработать под свои нужды. Их сила действительно в том, что можно подобрать под собственные задачи и системы необходимое количество плагинов или же дописать код, чтобы расширить функциональность open source. Однако в этом же заключается и их слабость: доработка такого решения под конкретные сценарии, как и его внедрение, развертывание, настройка и адаптация, ложится на самого пользователя. Это влечет дополнительные трудозатраты. Фактически компании потребуется иметь команду специалистов, которые будут заниматься только доработкой и обслуживанием опенсорсного DAST: следить за обновлениями, определять, какие плагины нужны, требуется ли вносить изменения в код, а главное — вычислять, как оптимально его запустить, чтобы сэкономить ресурсы, в том числе временные.

И тогда перед бизнесом встает вопрос о том, какой продукт экономически целесообразнее приобретать: готовое решение от вендора, которое можно легко установить и сразу начать использовать, или open source, который в дальнейшем потребует принятия в штат компании высокооплачиваемых специалистов для постоянной поддержки решения.

Олег Халаджиев: Если говорить конкретно о нашем динамическом сканере PT BlackBox, он содержит экспертизу, основанную на уникальном опыте Positive Technologies по углубленному анализу защищенности веб-приложений, а также на результатах работ по тестированию на проникновение. Ежегодно команда PT SWARM (эксперты Positive Technologies, исследующие безопасность всевозможных систем и устройств) проводит десятки пентестов для крупнейших компаний. Наша экспертиза помогает сканеру выявлять более 100 различных типов уязвимостей и ошибок окружения, большинство из которых инструменты open source этого же класса находить не умеют.

Кроме того, PT BlackBox построен на технологии динамического анализа, включившей экспертизу, непрерывно развиваемую Positive Technologies на протяжении десяти лет. В ее основе — знания специалистов исследовательского центра по анализу защищенности PT SWARM и экспертного центра кибербезопасности (PT Expert Security Center), обеспечивающего противодействие атакам. Данную технологию применяют в других продуктах Positive Technologies в той степени, которая необходима для усиления стека каждого конкретного продукта. Такой подход помогает более эффективно решать их основные задачи. В частности, межсетевой экран уровня веб-приложений PT Application Firewall использовал ядро PT BlackBox для сканирования серверной части приложений, система анализа защищенности PT Application Inspector использовала его для подтверждения уязвимостей, найденных в исходном коде, а система контроля защищенности и соответствия стандартам MaxPatrol 8 с его помощью находила веб-уязвимости внутри периметра.

На какие параметры нужно обязательно обращать внимание при выборе сканера безопасности приложений?

Олег Халаджиев: Как правило, в первую очередь ориентируются на скорость сканирования. Некоторые решения действительно тратят много времени на поиск ошибок и уязвимостей. Результаты наших тестов показали, что сканирование большого периметра занимает у PT BlackBox семнадцать с половиной дней, что в три раза быстрее аналогичных опенсорсных решений. Для сравнения, двум сканерам с открытым исходным кодом для анализа такого же числа целей потребовалось гораздо больше времени — первому 60 дней, а второму 133. При этом важно учитывать, что указано общее время сканирования 60 разных целей. Время сканирования одной цели может варьироваться от 10 минут до пары дней и напрямую зависит от объема сайта, его структуры и наполненности.

Евгений Рыжов: Скорость, конечно, важный параметр, но не основной. При выборе эффективного сканера следует обращать внимание на "шумность" отчета — это разработанная нашей компанией метрика, показывающая отношение количества подтвержденных уязвимостей (true positive, подтвержденные уникальные бреши) к общему числу ложных срабатываний (false positive, уязвимые места, которые на самом деле не содержат "дыр" или ошибок), к количеству дубликатов настоящих уязвимостей, а также к дубликатам ложноположительных срабатываний. Дубликат уязвимости появляется тогда, когда сканер находит одну и ту же брешь и показывает ее в разных отчетах несколько раз.

Как показывает практика, в основном опенсорсные решения DAST грешат тем, что они выдают очень "шумные" отчеты, из-за чего приходится тратить много времени на их разбор.

Олег Халаджиев: Прежде чем вывести PT BlackBox на рынок, мы проанализировали несколько инструментов c открытым кодом. И по нашим оценкам, в таких отчетах 1/3 составляют реальные уязвимости и ошибки окружения, которые разработчикам на самом деле необходимо исправить, чтобы повысить уровень безопасности веб-приложения. А более 65% найденных брешей являются ложными срабатываниями и дубликатами. При этом качественным считается сканер, который с максимально возможной точностью умеет определять подтвержденные уязвимости.

Евгений Рыжов: Уязвимости по степени опасности могут сильно различаться, поэтому делать вывод о том, насколько серьезные угрозы выявил сканер, основываясь только лишь на количестве обнаруженных уязвимостей, в корне неверно. Выделяют уязвимости высокого, среднего и низкого уровня риска. DAST-продукты лучше выявляют уязвимости, связанные с недостатками конфигурации защитных механизмов, ошибками идентификации и аутентификации, а также устаревшими версиями используемого ПО (все уязвимости входят в OWASP Top 10).

Уязвимости, которые эффективнее выявляются методом черного ящика
Уязвимости, которые эффективнее выявляются методом черного ящика

При этом именно эти виды уязвимостей лучше обнаруживаются именно методом черного ящика — динамическим анализом (см. инфографику). В данном случае продукты, использующие статический анализ (SAST), справляются хуже.

Многие из этих уязвимостей имеют среднюю или высокую степень риска из-за возможности получения несанкционированного доступа к приложению или личному кабинету пользователя, а значит, требуют незамедлительного устранения.

Сколько времени тратят на обработку результатов анализа и проверку уязвимостей? Кто обычно этим занимается?

Олег Халаджиев: Ручная верификация всех уязвимостей, найденных сканером, и исключение из этого списка ложных срабатываний — очень трудоемкий процесс, который может занимать недели. Причем эта обязанность ложится на плечи разработчиков, которые на рынке труда более востребованы и стоят дороже по сравнению с тестировщиками и DevSecOps-специалистами. При этом не стоит забывать о том, что кибербезопасность — это процесс, который необходим, чтобы исправлять реальные бреши, выполнять разбор результатов сканирования придется на постоянной основе. Если компания небольшая и в R&D-отделе работает человек пятнадцать, то ресурс каждого конкретного разработчика будет очень дорогим. Следовательно, компании придется делать выбор: нанимать дополнительных разработчиков, которые будут только лишь отбирать актуальные уязвимости; передавать эту задачу менее дорогостоящим специалистам по ИБ, которых, кстати, нужен будет целый штат, и, несмотря на это, верификация будет проходить долго; обойтись силами все тех же пятнадцати специалистов, но потерять время, которое могло бы пойти на разработку новых фич. Если можно доверить решение задачи продукту ИБ, то почему бы этого не сделать?

PT BlackBox уже доступен для коммерческого пилотирования. Вы можете оставить заявку на "пилот" по ссылке, а в качестве демо продукта можете протестировать его облачную версию — PT BlackBox Scanner, которая покрывает часть функциональности PT BlackBox.