Критическая уязвимость в sha.js ставит под удар миллионы веб-приложений

Критическая уязвимость в sha.js ставит под удар миллионы веб-приложений

Критическая уязвимость в sha.js ставит под удар миллионы веб-приложений

В популярной JavaScript-библиотеке sha.js обнаружили критическую уязвимость, которая может поставить под угрозу безопасность миллионов приложений. Этот модуль используется для реализации алгоритмов SHA и еженедельно скачивается более 14 миллионов раз, так что проблема затрагивает огромное число проектов на Node.js и в браузере.

Баг получил идентификатор CVE-2025-9288 и высокий балл по CVSS — 9,1 из 10. Ошибка связана с тем, что библиотека не проверяла корректность входных данных. В итоге злоумышленник может управлять тем, как вычисляется хеш, и добиваться крайне опасных последствий — от коллизий до восстановления приватных ключей.

Какие атаки возможны:

  • Сброс состояния хеша. Через специальные конструкции наподобие { length: -x } можно «отмотать» внутреннее состояние и даже превратить помеченный хеш в непомеченный, лишив его защиты.
  • Коллизии и неверные значения. Поддельный ввод вроде { length: buf.length, ...buf, 0: buf[0] + 256 } может дать тот же хеш, что и оригинальный буфер, хотя данные различаются. Это приводит к расхождениям с другими библиотеками, например, bn.js.
  • Отказ в обслуживании. Ввод вида { length: '1e99' } заставляет функцию зависнуть, фактически обрушивая приложение.
  • Криптографическая катастрофа. Самый опасный сценарий связан с генерацией nonce через хеширование. Если разные значения дают одинаковый хеш, но интерпретируются по-разному, можно восстановить приватные ключи.

Разработчикам настоятельно рекомендуют как можно скорее обновиться до версии 2.4.12, где проблема уже исправлена.

Миллионы серверов под угрозой: в NGINX обнаружили опасную уязвимость

В NGINX обнаружили новую 0-day уязвимость под названием nginx-poolslip. По предварительным данным, баг может позволить удалённо выполнять код на уязвимых серверах без аутентификации. Проблема затрагивает NGINX 1.31.0 — актуальную стабильную версию популярного веб-сервера.

Уязвимость обнаружил исследователь Vega из команды NebSec, публично о ней сообщили 21 мая 2026 года.

Согласно описанию, nginx-poolslip связана с внутренним механизмом управления памятью NGINX. Самое неприятное — заявлена возможность обхода ASLR, одной из базовых защит от эксплуатации ошибок памяти. Если обход действительно работает стабильно, это резко повышает шансы атакующего не просто уронить сервер, а выполнить свой код.

История выглядит особенно неприятно на фоне недавней уязвимости CVE-2026-42945 в ngx_http_rewrite_module, которую уже закрывали в версиях 1.31.0 и 1.30.1. Но, по данным NebSec, предыдущий патч не убрал саму поверхность атаки, а nginx-poolslip позволяет обойти прежние меры защиты.

На момент публикации у nginx-poolslip ещё нет идентификатора, а F5 и проект NGINX не выпустили официальный патч. NebSec заявляет, что следует процедуре ответственного раскрытия и опубликует технические детали только после появления патча.

Пока заплатки нет, администраторам советуют снижать риски вручную: следить за бюллетенями F5 и NebSec, ограничить доступ к административным интерфейсам, использовать WAF-правила, проверить включение ASLR, а также внимательно пересмотреть конфигурации с rewrite, if и set.

Масштаб проблемы серьёзный, NGINX используется как веб-сервер, обратный прокси, балансировщик и API-шлюз на огромном числе площадок.

RSS: Новости на портале Anti-Malware.ru