Зачем инвестировать в DAST и что делать с ложными срабатываниями

За 2023 год число кибератак на российскую инфраструктуру выросло на 30% по сравнению с 2022-м годом. В числе инцидентов наблюдались DDoS-атаки, причем с рекордными для России показателями мощности, а также рассылки фишинговых писем, взломы веб-сайтов, эксплуатация уязвимостей и ошибок, возникших в результате отсутствия обновлений зарубежных продуктов. В текущих условиях компаниям нужно заботиться об укреплении киберустойчивости своей инфраструктуры и продуктов и использовать для этого инструменты безопасности, в частности средства динамического анализа (DAST). Рассмотрим подробнее этот вид тестирования, разберемся, почему он необходим игрокам современного ИТ-рынка и как сократить количество ложных срабатываний.

Зачем защищать приложения?

Сегодня многие компании с трудом находят и устраняют уязвимости до релиза. В числе главных причин — некачественные инструменты ИБ и нехватка знаний в области безопасности. Также большую роль играет давление со стороны бизнеса, который сокращает сроки, стремясь как можно скорее выпустить ПО на рынок. Такая комбинация часто приводит к тому, что к пользователям попадают незащищенные продукты. По данным Positive Technologies, в 2020-2021 годах злоумышленники имели возможность совершать атаки на 98% веб-приложений — в 2022 году на них пришлось около 80% от общего количества инцидентов, согласно отчету Swordfish Security.

Из числа недавних атак можно привести в пример взлом Rutube. Обнаружив уязвимости, хакеры проникли в информационную инфраструктуру сервиса и нанесли ему значительный ущерб. В результате инцидента было поражено более 75% инфраструктуры основной версии Rutube и 90% резервных копий и кластеров для восстановления баз данных. Сервис был недоступен почти двое суток, по оценкам экспертов, на восстановление сайта могло уйти примерно 100–150 млн рублей, а финансовый ущерб из-за простоя, возможно, достиг 1 млрд рублей.

Проблемы безопасности российских продуктов могут привести компании и к более серьезным последствиям, чем те, с которыми столкнулся Rutube. Сегодня организациям необходимо повышать уровень защищенности приложений, применяя современные ИБ-инструменты. Ключевое место среди них занимают средства динамического тестирования безопасности приложений (DAST).

Почему DAST сегодня так необходим?

DAST (Dynamic Application Security Testing) — одна из практик безопасной разработки. Инструменты DAST производят автоматическое сканирование развернутых и функционирующих приложений. В рамках проверок динамические анализаторы тестируют все точки доступа HTML и HTTP и имитируют внешние атаки с использованием распространенных уязвимостей. Средства DAST моделируют работу пользователей, то есть «гуляют» по приложениям, определяют, какие API есть у сервисов и отправляют большое количество запросов. Анализируя команды и полученные ответы от сервера и сравнивая их с легитимными запросами и их результатами, инструменты находят уязвимости.

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

DAST-инструменты эффективны в поиске уязвимостей, связанных с повреждением памяти, недостатками конфигурации защитных механизмов, возможностью межсайтового исполнения сценариев, ошибок идентификации и аутентификации пользователей, внедрения вредоносного SQL-кода, устаревших версий приложений и других опасных проблем. Для поиска большинства подобных критических уязвимостей подходит именно метод «черного ящика», в рамках которого функциональное поведение приложения анализируется с позиции внешнего мира, а знание о внутреннем устройстве, то есть коде продукта не используется. Эта стратегия как раз и применяется в динамическом сканировании. Инструменты SAST (Static Application Security Testing, статическое тестирование безопасности приложений), использующие метод «белого ящика» (который предполагает, что код виден тестировщику), напротив, в обнаружении таких проблем не очень точны. Кроме этого, сканеры DAST можно сочетать с другими средствами безопасности, что сделает тестирование более эффективным и масштабным по охвату зон анализа.

Согласно результатам отчета компании Swordfish Security, 35% ИБ-специалистов крупных компаний считают, что инвестирование в современные инструменты тестирования безопасности, среди которых средства DAST, станет одним из приоритетных направлений в обеспечении защищенности приложений в 2023 году. Но вкладывая деньги, бизнес предпочитает видеть результаты, которые как раз отлично демонстрируют современные инструменты DAST, оснащенные продвинутыми модулями отчетности. При выборе таких решений нужно обращать внимание на их возможность предоставлять подробную документацию, описывающую статистику по работе с уязвимостями, на основе которой можно сформировать показатели, отражающие сокращение числа ручных задач.

Проблемы современных DAST

Ограниченная видимость

Dynamic Application Security Testing (DAST) анализирует приложения в режиме реального времени, имитируя атаки на внешние интерфейсы. Однако, поскольку DAST работает на уровне "черного ящика", он часто не может глубоко заглянуть внутрь кода приложения. Это ограничивает его возможности по обнаружению уязвимостей, скрытых в глубине системы, таких как логические ошибки или специфические уязвимости на серверной стороне.

Высокий уровень ложных срабатываний

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

Проблемы интеграции

Интеграция DAST в существующие процессы разработки и CI/CD (Continuous Integration/Continuous Deployment) может быть сложной задачей. Многие DAST-инструменты не поддерживают бесшовную интеграцию с популярными инструментами DevOps, что затрудняет автоматизацию и непрерывное тестирование безопасности.

Ограниченная поддержка современных технологий

Современные приложения часто используют сложные архитектуры, включая микросервисы, API, и облачные платформы. Не все DAST-инструменты способны эффективно сканировать такие приложения, что оставляет значительные пробелы в покрытии безопасности/

Что делать с ложными срабатываниями?

Главная проблема, которая может возникнуть при работе с инструментами DAST — ложные срабатывания (алерты о наличии ошибок или проблем, которых на самом деле нет). Ручная верификация уязвимостей, найденных сканерами, и исключение ложных срабатываний — довольно трудоемкий процесс. По нашему опыту, в среднем проверка только одного бага занимает час. Но каждая новая ошибка может оказаться либо реальной проблемой, либо ложной тревогой. Чтобы не возиться с каждой уязвимостью (особенно когда некоторые выглядят совсем несерьезно) ИБ-специалисты начинают игнорировать результаты проверок: по данным Swordfish Security, две трети безопасников пропускают хотя бы одну реальную уязвимость не менее раза в месяц, полагая, что это ложное срабатывание.

Снизить уровень «шума» (количество ложных срабатываний) позволяет автоматизация верификации найденных уязвимостей. Чтобы значительно сократить число ручных задач и сэкономить время специалистов, можно использовать динамические анализаторы вместе с автоматизированными инструментами, например, с технологией сканирования на основе доказательств — она выявляет реальные уязвимости и ошибки, которые могут проэксплуатировать злоумышленники. Кроме этого, при выборе решений DAST нужно обращать внимание на такой параметр, как «шумность» — это отношение количества реальных уязвимостей к числу ложных срабатываний, дубликатов настоящих ошибок и ложноположительных срабатываний. По нашему опыту, зачастую «шумные» отчеты выдают сканеры DAST, созданные на базе Open Source.

Вывод

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

Но на пути к обеспечению безопасности приложений с помощью сканеров DAST возникает такая проблема, как ложные срабатывания. Чтобы решить ее, компаниям нужно использовать средства динамического тестирования вместе с автоматизированными инструментами анализа найденных уязвимостей или выбирать решения DAST с уже встроенными технологиями верификации ошибок. Поскольку сегодня российский рынок ориентирован на импортозамещение, возможно, вскоре пул доступных инструментов динамического анализа расширится. При их разработке отечественным ИБ-компаниям необходимо учитывать потребность в автоматизации и тенденцию масштабирования сканирования. Это позволит сделать решения DAST более привлекательными и полезными для разработчиков, ИБ-специалистов и компаний в целом.

Начать дискуссию