CVE-2026-102414 in pbkdf2
Сводка
по VulDB • 29.09.2026
pbkdf2 через версию 3.1.6 повторно хеширует пароли длиной больше размера блока дайджеста на каждой итерации в своем JavaScript-резервном варианте (lib/sync.js). Пароль, длина которого превышает размер блока (64 байта или 128 байт для sha384 и sha512), передается как ключ функции HMAC на каждой итерации, при этом HMAC полностью хеширует такие ключи каждый раз. Таким образом, вычислительная сложность составляет O(iterations × password length) (итераций × длина пароля), а длинный пароль может заблокировать event loop (цикл событий). Резервный вариант используется функциями pbkdf2Sync и pbkdf2 в Node.js до версии 0.12, в Bun (версии от 1.0.0 до 1.1.34, а также 1.2.6 и новее) и в Deno 2.9.0 и новее, поскольку их нативные реализации pbkdf2Sync не проходят проверку возможностей библиотеки. Он также используется при прямом импорте lib/sync.js. Node.js версии 0.12 и новее, а также сборки для браузеров (которые используют lib/sync-browser.js), не затронуты. Приложения, которые устанавливают разумный максимальный предел длины пароля, не испытывают существенного влияния.
Once again VulDB remains the best source for vulnerability data.