В Банк данных угроз безопасности информации (BDU) поступила запись о критической уязвимости в популярном фреймворке для автоматизации тестирования WebdriverIO. Проблема получила идентификаторы BDU:2026-07092 и CVE-2026-25244 и базовую оценку 9,8 балла по шкале CVSS 3.1. Это означает, что уязвимость представляет собой непосредственную угрозу для множества компаний, использующих данный инструмент в процессах разработки и тестирования.
Детали уязвимости
Уязвимость относится к типу CWE-78 - непринятие мер по нейтрализации специальных элементов, используемых в команде операционной системы. Простыми словами, злоумышленник может внедрить вредоносную команду в те параметры, которые фреймворк передаёт операционной системе для выполнения. Поскольку WebdriverIO широко применяется в средах непрерывной интеграции и развёртывания (CI/CD), а также при ручном тестировании, потенциальная зона поражения оказывается внушительной.
На момент выявления уязвимости были уязвимы все версии WebdriverIO до 9.24.0 включительно. Важно отметить, что производитель,OpenJS Foundation, уже подтвердил проблему и выпустил исправление. Более того, в открытом доступе существует готовый эксплойт - код, автоматизирующий атаку. Это резко повышает риски для тех организаций, которые ещё не обновили своё программное обеспечение.
Как именно происходит атака? Исследователи выяснили, что уязвимость кроется в одном из вспомогательных модулей фреймворка, отвечающем за взаимодействие с сервисом BrowserStack. В процессе обработки определённых данных, поступающих из внешних источников, например, имени браузера или параметров сессии, фреймворк не проводит достаточную фильтрацию. В результате злоумышленник может подставить в эти поля строку, содержащую команду операционной системы. При выполнении теста эта команда исполнится с теми же правами, что и сам процесс WebdriverIO.
Последствия могут быть самыми серьёзными. Получив возможность выполнять произвольный код на сервере, где запущен тест, злоумышленник способен инициировать загрузку программ-вымогателей, похитить учётные данные доступа к базам данных или внедрить бэкдор для долгосрочного закрепления в системе. В среде CI/CD, где тесты часто запускаются с повышенными привилегиями, подобная атака может привести к полной компрометации конвейера сборки и, как следствие, к внедрению вредоносного кода в релизные версии продуктов.
К слову, это не первый случай, когда инструменты тестирования становятся вектором атаки. Ранее исследователи неоднократно указывали на то, что среда разработки и тестирования часто защищена слабее, чем продуктивные серверы. Злоумышленники это прекрасно знают. Поэтому атака на инструментарий разработчика - это классический способ двигаться вглубь инфраструктуры.
На практике эксплуатация уязвимости не требует аутентификации. Вектор атаки сетевой, то есть нарушителю достаточно отправить специально сформированный запрос к уязвимому сервису. Сложность атаки низкая, а значит, подходит даже не слишком опытным злоумышленникам. Всё это ставит уязвимость в разряд наиболее опасных.
Что делать компаниям, использующим WebdriverIO? Прежде всего, необходимо в кратчайшие сроки обновить фреймворк до версии 9.24.0 или выше. Именно в этом релизе разработчики закрыли проблему, добавив санитизацию входных данных в модуле взаимодействия с BrowserStack. Ссылки на патч и технические детали доступны в официальном репозитории проекта на GitHub и в бюллетене безопасности фонда.
Кроме того, стоит пересмотреть общие принципы безопасности в конвейере разработки. Даже если сам инструмент обновлён, рекомендуется ограничить сетевой доступ к тестовым стендам, использовать принцип минимальных привилегий для процессов тестирования и регулярно проводить аудит используемых библиотек. Уязвимости в инструментах разработки - это реальность, и игнорировать их уже нельзя.
В целом, данный инцидент лишний раз напоминает о том, что безопасность необходимо встраивать не только в финальный продукт, но и во все промежуточные этапы его создания. Любая сторонняя зависимость, особенно популярная, может стать слабым звеном. Поэтому мониторинг баз уязвимостей, таких как BDU, и своевременное обновление компонентов должны быть частью регулярного процесса, а не разовой акцией после громких новостей.
Итог таков: CVE-2026-25244 - это не просто очередная запись в каталоге. Это прямая угроза для всех, кто продолжает использовать старые версии WebdriverIO. Эксплойт уже в сети. Обновление - единственный надёжный способ защиты.
Ссылки
- https://bdu.fstec.ru/vul/2026-07092
- https://www.cve.org/CVERecord?id=CVE-2026-25244
- https://github.com/webdriverio/webdriverio/blob/ea0e3e00288abced4c739ff9e46c46977b7cdbd2/packages/wdio-browserstack-service/src/testorchestration/helpers.ts#L204
- https://github.com/webdriverio/webdriverio/releases/tag/v9.24.0
- https://github.com/webdriverio/webdriverio/security/advisories/GHSA-5c46-x3qw-q7j7