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

CVE-2026-108082

Symfony: ReDoS in HeaderUtils::split() Reachable Through the Cache-Control Request Header

Публикация: 15.10.2026·Обновлена: 27.10.2026, 22:01·Europe/Moscow

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

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

Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Prior to versions 5.4.54, 6.4.46, 7.4.19, and 8.1.7, HeaderUtils::split() parsed header values with a pattern whose token alternative also matched whitespace, followed by a (?<!\s) lookbehind. A run of whitespace placed before a separator could be divided among the iterations of the enclosing repetition in exponentially many ways, and the engine tried all of them before settling. HeaderBag calls it for the Cache-Control header whenever a Request is built, so any application handling HTTP requests is reachable, with no authentication. A single request carrying such a header costs close to a second of CPU (813 ms for a run of 17 spaces in an 8 KB header on PHP 8.5, doubling with each extra space). From 18 spaces on, preg_match_all() gives up at pcre.backtrack_limit and split() returns an empty array, so every directive of the header is silently dropped. This issue affects symfony/http-foundation v4.1.0-BETA1 through v5.4.53, v6.0.0-BETA1 through v6.4.45, v7.0.0-BETA1 through v7.4.18, and v8.0.0-BETA1 through v8.1.6.

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

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

Что делать

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

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. После исправления

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

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

sensiolabs / symfony

{
  "status": "affected",
  "version": "v4.1.0-BETA1",
  "lessThan": "v5.4.54",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "v6.0.0-BETA1",
  "lessThan": "v6.4.46",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "v7.0.0-BETA1",
  "lessThan": "v7.4.19",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "v8.0.0-BETA1",
  "lessThan": "v8.1.7",
  "versionType": "git"
}

symfony/http-foundation composer

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

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

symfony/http-foundation composer

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

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

symfony/http-foundation composer

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

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

symfony/symfony composer

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

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

symfony/symfony composer

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

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

symfony/symfony composer

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

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

symfony/http-foundation composer

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

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

symfony/symfony composer

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

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

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

CVSS 4.0 · cve8.7
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
AV · Вектор атакисеть
AC · Сложность атакинизкая
AT · Условия атакидополнительные условия не нужны
PR · Привилегиине нужны
UI · Участие пользователяне нужно
VC · Конфиденциальность уязвимой системынет
VI · Целостность уязвимой системынет
VA · Доступность уязвимой системывысокое
SC · Конфиденциальность связанной системынет
SI · Целостность связанной системынет
SA · Доступность связанной системынет

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

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

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

  1. Данные обновлены04.11.2026, 00:11
  2. Данные обновлены03.11.2026, 00:11
  3. Данные обновлены02.11.2026, 00:09
  4. Данные обновлены31.10.2026, 11:56
  5. Данные обновлены30.10.2026, 16:15
  6. Данные обновлены29.10.2026, 00:26
  7. Данные обновлены28.10.2026, 18:05
  8. Появились сведения об исправлении28.10.2026, 17:59

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

Другие CVE того же продукта

УЯЗВИМОСТЬ / ПРОДУКТПРИОРИТЕТCVSSEPSSСИГНАЛЫОПУБЛИКОВАНАКарточка
CVE-2026-121373
Symfony: HtmlSanitizer MetaRefreshAttributeSanitizer Matches Only a Narrow Subset of the Browser Refresh Grammar (Incomplete Fix for CVE-2026-48761)
sensiolabs / symfony
Средний5.3
—
Патч
04.11.2026
CVE-2026-118516
Symfony: Host Placeholders Can Match the Start of the Path in Compiled URL Matchers, Bypassing Path-Based Access Control
sensiolabs / symfony
Средний6.3
—
Патч
04.11.2026
CVE-2026-118513
Symfony: X.509 Authentication Impersonation via DN Value Injection (incomplete fix for CVE-2026-45063)
sensiolabs / symfony
Высокий7.7
—
Патч
04.11.2026
CVE-2026-109413
Symfony: Unbounded Recursion in the YAML Inline Lexer Lets a Single Document Crash the Process
sensiolabs / symfony · symfony/symfony
Высокий8.7
0,4 %
Патч
15.10.2026
CVE-2026-109449
Symfony: Unbounded Nesting in the Expression Parser Lets Untrusted Expressions Crash the Process
sensiolabs / symfony
Высокий8.7
0,38 %
Патч
15.10.2026
CVE-2026-108082: Symfony: ReDoS in HeaderUtils::split() Reachable Through the Cache-Control Request Header · CVE Радар