Безопасность ПО в 2025: как справиться с уязвимостями нулевого дня

Почему безопасность — это не финальный штрих, а постоянный вызов

В первой статье этой серии о современных технологиях и подходах к тестированию безопасности мы говорили о том, как AI и Shift-Left меняют тестирование безопасности. Но даже используя продвинутые инструменты, команды сталкиваются с вызовами, которые невозможно решить одной автоматизацией. Если бы защита ПО работала как в кино, то достаточно было бы одного хакера в худи, пары строчек кода и драматичной музыки. В реальности всё гораздо сложнее. За угрозами стоит огромная эволюция методов атак, а то, что мир вокруг ускоряется, не идет на пользу проектам. Быстрые релизы и погоня за новыми фичами в бизнесе делают любую мелкую уязвимость потенциальной бомбой замедленного действия.

По данным Qualys, в 2024 году число уязвимостей выросло на 30%. При этом количество кибератак на финансовый сектор за прошлый год выросло на треть и достигло 9 тыс. подтвержденных инцидентов. Исследования IBM показывают: исправление бага после релиза обходится в 30 раз дороже, чем его устранение на этапе разработки.

Секьюрность в 2025 году — это не чек-лист, который заполняют перед продакшеном, а ежедневная гонка. И если вы не внедряете DevSecOps, вполне вероятно, что ваш код уже тестирует кто-то другой. И, конечно, не факт, что он из вашей команды. Как вам такой повод задуматься?

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

Конфликт скоростей: DevOps vs SecOps

DevOps-культура требует выпускать фичи еженедельно, но SecOps настаивает на тщательном аудите. Результат? Команды пропускают этапы SAST/DAST, чтобы успеть к дедлайну. 

SAST/DAST/IAST

Основные два метода тестирования безопасности приложений. Направлены на выявление уязвимостей в различных аспектах разработки, помогая защитить данные и снизить риски атак.

  • SAST (Static Application Security Testing) — статический анализ безопасности, выполняется на уровне исходного кода без запуска приложения. Тестирование «белого ящика».
  • DAST (Dynamic Application Security Testing) — динамическое тестирование, выполняется на работающем приложении. Тестирование «черного ящика».
  • IAST (Interactive Application Security Testing) — интерактивное тестирование безопасности приложений. Объединяет главные элементы обоих подходов, выполняет проверку в режиме реального времени:

Так на рынок выходят продукты с уязвимостями, которые можно было бы поймать ещё на раннем этапе. Кейс из 2024 года: в одной крупной FinTech-X компании ускорили релиз новой фичи и пропустили проверку SAST. Через два месяца обнаружили XSS-атаку, позволявшую красть пользовательские данные прямо из браузера. А двумя годами ранее в 2022 году стартап FinTech-Y ускорил релиз платежного шлюза, сократив код-ревью. Через месяц хакеры нашли SQL-инъекцию в неотрецензированном модуле — утекли данные 200 тыс. пользователей.  
*Решением могли стать:

  • Security Gates в CI/CD — GitHub Advanced Security или GitLab Secure блокируют сборку, если найдены критические уязвимости.
  • Автоматизированные тестыSAST, DAST, IAST-продукты (например, SonarQube, Burp Suite) встраиваются в пайплайн и не тормозят релизы.

Legacy-код: мина замедленного действия

Если вашему продукту больше пяти лет, где-то в коде точно есть уязвимость. Устаревшие библиотеки — тот еще подарочек. Помните Log4j? В 2021 году уязвимость удаленного выполнения кода (Remote Code Execution, RCE) в этой библиотеке поставила на уши полмира. В 2024 всплыли похожие истории с библиотеками curl и XZ, которые использовались повсеместно.

*Как обойти стороной такие «грабли»?

  •  Используйте SCA-инструменты (Snyk, WhiteSource) для поиска уязвимых зависимостей.
  •  Выделяйте 10% спринта на технический долг. Это не «бесполезная трата времени», а инвестиция в безопасность.

«Слепые зоны» в архитектуре

Часто чем сложнее архитектура, тем больше дыр. Микросервисы и Kubernetes упрощают масштабирование, но усложняют безопасность — злоумышленники ищут слабые места именно там. В 2023 году была обнаружена уязвимость CVE-2023-2728 в Kubernetes, которая позволяла получать права root через некорректно настроенные Pod’ы. В том же году объявлено о критической уязвимости с возможностью эскалации привилегий CVE-2023-23397 в Microsoft Outlook.

*Что делать?

  • Мониторинг. Falco отслеживает аномалии в контейнерах.
  • Проверку соответствия стандартам. Kube-bench оценивает безопасность кластера, проверка на соответствие стандартам CIS.

Человеческий фактор: нехватка экспертизы

57% компаний признают, что у них не хватает специалистов по DevSecOps (по данным ESG Research). Отсюда и проблема: даже если уязвимость нашлась, её не всегда понимают, а если понимают — не всегда чинят.

*Как бороться с этим?

  • Обучайте разработчиков. Платформы вроде Secure Code Warrior учат находить и устранять такие баги.
  • Используйте автоматизированные инструменты. GitLab Secure подсвечивает уязвимости прямо в Merge Request.
каберугроза тестирование безопасности хакинг уязвимость

Уязвимости нулевого дня: невидимые враги и как с ними бороться

Что такое 0-day и почему это «чёрный лебедь» безопасности
Уязвимость, которой нет в базах данных, а значит, защититься от неё невозможно стандартными методами. Термин «zero day» говорит о том, что производитель еще не знает об уязвимости и у него есть «ноль дней» на ее исправление либо знает, но еще не успел выпустить патч для устранения. В 2024 году злоумышленники активно эксплуатировали CVE-2024-21412, 0-day в функции Internet Shortcut Files Security операционной системы Windows, позволяющий обходить защиту системы без каких-либо предупреждений для пользователя.

Почему классические методы бессильны
Антивирусы и WAF используют сигнатурный анализ. А что, если сигнатуры нет? Вот и всё. Вспомните цепочку критических уязвимостей ProxyLogon в Microsoft Exchange. CVE-2021-26855 использовалась для обхода механизма аутентификации в MS Exchange, чтобы выдать себя за любого пользователя. Мимо всех стандартных правил, просто имитируя легитимные запросы.

*Как обнаружить и минимизировать риск?

  • Использовать Threat Intelligence (комплекс сервисов информирования об угрозах). Подписка на CISA Known Exploited Vulnerabilities Catalog дает информацию о 0-day раньше, чем появятся патчи.
  • Освоить Sandboxing. Инструменты вроде Cuckoo анализируют подозрительный код в изолированной среде.
  • Минимизируйте поверхность атаки, отключая ненужные сервисы (например, SSH в Docker-контейнерах).

Практикум: как построить защиту в условиях неопределённости

  1. Интеграция MITRE ATT&CK в CI/CD. MITRE ATT&CK — это карта тактик хакеров. Можно ли атаковать ваш продукт по этим сценариям? Автоматические тесты помогут проверить. Например, если Credential Dumping (T1003) возможен, значит, где-то в коде пароли хранятся в открытом виде.
  2. Red Team vs Blue Team: баттл между разработчиками. В 2024 году компания X начала проводить ежемесячные симуляции атак: Red Team ломает, Blue Team защищает. Через год число инцидентов сократилось на 40%. Начните с малого — например, с фишинговых тестов для сотрудников.
  3. Баг-баунти-программы, Bug Bounty. Метод тестирования, при котором компании предлагают вознаграждение независимым исследователям (багханерам). Такие компании защищены лучше. В 2024 году Google выплатила исследователям более $10 млн за найденные баги. Хочется такой же уровень защиты?

Безопасность — процесс, а не пункт в чек-листе

0-day — это только верхушка айсберга. Если хотите спать спокойно, меняйте подход:
✔ Проверьте CI/CD, нет ли пропущенных этапов безопасности?
✔ Учите команду и хотя бы раз в квартал проводите тренинги по MITRE ATT&CK.
✔ Автоматизируйте рутину, ведь чем больше security-тестов в пайплайне, тем меньше шансов словить атаку в продакшене.

Другие статьи
5 2 голоса
Рейтинг статьи
Подписаться
Уведомить о
Email
guest
0 комментариев
Популярные
Новые Старые
Межтекстовые Отзывы
Посмотреть все комментарии
Об авторе
author

Специалист по тестированию, контент-менеджер "Лаборатории качества". В IT с 2022 года. В журналистике с 2003 года. Работает в департаменте развития и производственном департаменте.

Поиск
Получите совет