Обнаружена критическая уязвимость в популярной библиотеке jsPDF для генерации PDF

vulnerability

В Банке данных угроз безопасности информации (БДУ) зарегистрирована новая серьёзная уязвимость под идентификатором BDU:2026-03346. Уязвимость затрагивает широко используемую библиотеку с открытым исходным кодом jsPDF, которая применяется для создания PDF-файлов непосредственно в веб-браузере. Соответственно, проблема представляет угрозу для миллионов веб-приложений по всему миру.

Детали уязвимости

Уязвимость, получившая также идентификатор CVE-2026-31938, была обнаружена 17 марта 2026 года. Она классифицируется как недостаточная нейтрализация вводимых данных в веб-страницу, более известная как межсайтовый скриптинг (XSS). Ошибка кроется в функции "output()" библиотеки, которая некорректно обрабатывает определённые параметры. В результате злоумышленник, действующий удалённо, может внедрить вредоносный код в специально созданный PDF-документ.

Ключевой риск заключается в том, что для успешной атаки достаточно, чтобы пользователь просто открыл скомпрометированный PDF-файл в браузере. После этого злоумышленник получает возможность выполнить произвольный код в контексте уязвимого веб-приложения. Это может привести к краже сессионных cookies, похищению конфиденциальных данных, подмене содержимого страницы или даже к установке на компьютер пользователя дополнительного вредоносного ПО. Важно отметить, что, по данным БДУ, эксплойты для эксплуатации этой уязвимости уже существуют в открытом доступе, что значительно повышает актуальность угрозы.

Уровень опасности уязвимости оценён как критический. Базовый балл по шкале CVSS 3.1 достигает 9.6, что указывает на высокую сложность эксплуатации и серьёзность потенциальных последствий. Затронуты все версии библиотеки jsPDF, выпущенные до версии 4.2.1. Производитель, Parallax Agency Ltd, уже подтвердил наличие проблемы и оперативно выпустил исправление.

Основным и самым эффективным способом устранения угрозы является немедленное обновление библиотеки jsPDF до версии 4.2.1 или более новой. Разработчикам веб-приложений настоятельно рекомендуется проверить свои проекты на зависимость от уязвимой версии и применить патч. Официальное исправление и подробности об изменениях доступны на странице релиза проекта на GitHub.

В случаях, когда быстрое обновление невозможно, эксперты рекомендуют применять комплекс компенсирующих мер. Во-первых, следует ограничивать возможность открытия PDF-файлов, полученных из ненадёжных источников. Во-вторых, эффективным решением может стать использование современных систем обнаружения и предотвращения вторжений (IDS/IPS), настроенных на выявление подобных аномальных шаблонов. Кроме того, полезно сегментировать сеть и использовать межсетевые экраны для ограничения нежелательного доступа к внутренним веб-приложениям.

Данный инцидент в очередной раз подчёркивает важность регулярного мониторинга зависимостей в программных проектах. Библиотеки с открытым исходным кодом, такие как jsPDF, являются фундаментом современной веб-разработки, но их уязвимости автоматически становятся уязвимостями всех приложений, которые их используют. Следовательно, своевременное применение обновлений безопасности остаётся одним из ключевых элементов защиты. Для получения дополнительной технической информации следует обратиться к официальным источникам, включая консультационный бюллетень GitHub Security Advisory и запись в Банке данных угроз.

Ссылки

Комментарии: 0