Мониторинг Карточка CVE
Открытые данные
К списку уязвимостей
Критический
PoCПатч
Опубликована

CVE-2026-116795

RE2JS: Quadratic-time denial of service in re2js lookbehind matching

Публикация: 28.10.2026·Обновлена: 03.11.2026, 00:17·Europe/Moscow

Что произошло

Автоперевод выключен · оригинальное описание

RE2JS is the JavaScript port of RE2, a regular expression engine that provides linear time matching. From 2.2.0 until 2.8.7, enabling LOOKBEHINDS and using repeated matching through matcher().find(), matchAll(), split(), or matcher().replaceAll() can cause quadratic total work. Machine.match restarts lookbehind scanning from offset zero for each requested start position, while Matcher-based APIs request capture slots that prevent the early exit used for captureless matching. Dense matches therefore repeatedly rescan the input, allowing attacker-influenced text to monopolize a single-threaded worker and deny service. This issue is fixed in version 2.8.7.

Что это значит

В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.

Что делать

Редакционные пояснения, сведения источников и общие рекомендации помечены отдельно
Устранить в течение 24 ч

1. Проверьте, затронуты ли вы

Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.

Debian / Ubuntu
dpkg-query -W -f='${Package}	${Version}\n'
RHEL / AlmaLinux
rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'
Windows PowerShell
Get-HotFix | Select-Object HotFixID, InstalledOn
Общая рекомендация, не из бюллетеня вендора

2. Установите исправление

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

Общая рекомендация, не из бюллетеня вендора

3. Временные меры

До проверки бюллетеня ограничьте доступ к затронутому компоненту доверенными узлами. Оцените сегментацию и отключение ненужных интерфейсов с владельцем сервиса; универсального правила WAF для этой CVE не подтверждено.

Общая рекомендация, не из бюллетеня вендора

4. Проверьте следы эксплуатации

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

Общая рекомендация, не из бюллетеня вендора

5. После исправления

  • Проверьте фактическую версию и результат установки по бюллетеню.
  • При необходимости перезапустите сервисы в согласованное окно.
  • Повторите проверку сканером и функциональные проверки.
  • Зафиксируйте результат, дату, владельца и оставшийся риск.

Продукты и затронутые версии

le0pard / re2js

{
  "status": "affected",
  "version": ">= 2.2.0, < 2.8.7"
}

re2js npm

Диапазон источника: >= 2.2.0, < 2.8.7

Первая исправленная версия по источнику: 2.8.7

re2js npm

{
  "status": "affected",
  "version": "*",
  "versionEndExcluding": "2.8.7",
  "versionStartIncluding": "2.2.0"
}

CVSS: оценки и векторы

CVSS 3.1 · cve7.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнет
I · Целостностьнет
A · Доступностьвысокое
CVSS 3.1 · security-advisories@github.com7.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнет
I · Целостностьнет
A · Доступностьвысокое
CVSS 3.1 · ghsa7.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнет
I · Целостностьнет
A · Доступностьвысокое

Источники и ссылки

Происхождение полей
{
  "cwes": [
    "cve",
    "ghsa",
    "nvd"
  ],
  "epss": {
    "source": "epss",
    "received_at": "2026-11-03T21:11:59.495790+00:00"
  },
  "title": {
    "source": "cve",
    "received_at": "2026-11-02T20:26:17.757298+00:00"
  },
  "scores": [
    "cve",
    "ghsa",
    "nvd"
  ],
  "status": {
    "source": "cve",
    "received_at": "2026-11-02T20:26:17.757298+00:00"
  },
  "affected": [
    "cve",
    "ghsa",
    "osv"
  ],
  "published": {
    "source": "cve",
    "received_at": "2026-11-02T20:26:17.757298+00:00"
  },
  "solutions": [],
  "percentile": {
    "source": "epss",
    "received_at": "2026-11-03T21:11:59.495790+00:00"
  },
  "references": [
    "cve",
    "ghsa",
    "nvd",
    "osv"
  ],
  "description": {
    "source": "cve",
    "received_at": "2026-11-02T20:26:17.757298+00:00"
  },
  "workarounds": [],
  "configurations": []
}

Хронология записи

  1. Данные обновлены04.11.2026, 00:11
  2. Данные обновлены03.11.2026, 00:11
  3. Появилась ссылка на PoC02.11.2026, 23:26
  4. Данные обновлены02.11.2026, 15:15
  5. Данные обновлены02.11.2026, 00:10
  6. Данные обновлены31.10.2026, 11:57
  7. Данные обновлены30.10.2026, 16:57
  8. Данные обновлены29.10.2026, 03:58
  9. Появились сведения об исправлении29.10.2026, 00:30
  10. Опубликована28.10.2026, 21:30

Личная заметка и статус