CVE-2026-8468
Unbounded buffer accumulation in multipart header parsing causes denial of service in plug
Что произошло
Allocation of Resources Without Limits or Throttling vulnerability in plug_project plug allows denial of service via unbounded buffer accumulation in multipart header parsing. 'Elixir.Plug.Conn':read_part_headers/2 in lib/plug/conn.ex does not obey its :length parameter. There is no upper bound on the size of the accumulated buffer. By contrast, the sibling function read_part_body has an explicit byte_size(acc) > length guard that stops accumulation once a limit is reached. No such guard exists in read_part_headers. An unauthenticated remote attacker can exhaust server memory by sending a crafted multipart/form-data request, causing a denial of service. This issue affects plug from 1.4.0 before 1.15.4, 1.16.3, 1.17.1, 1.18.2, and 1.19.2.
Что это значит
В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.
Что делать
1. Проверьте, затронуты ли вы
Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.
dpkg-query -W -f='${Package} ${Version}\n'rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'Get-HotFix | Select-Object HotFixID, InstalledOn
2. Установите исправление
Сверьте точный продукт и версию с бюллетенем вендора. Установите указанное в нём исправление после резервного копирования и проверки совместимости. Подтверждённая целевая версия в источниках отсутствует.
3. Временные меры
До проверки бюллетеня ограничьте доступ к затронутому компоненту доверенными узлами. Оцените сегментацию и отключение ненужных интерфейсов с владельцем сервиса; универсального правила WAF для этой CVE не подтверждено.
4. Проверьте следы эксплуатации
Проверьте аномальные входы, новые учётные записи, ошибки и необычные дочерние процессы в затронутом сервисе. Публичные проверенные правила обнаружения не включены в запись; отсутствие сигналов не доказывает отсутствие компрометации.
5. После исправления
- Проверьте фактическую версию и результат установки по бюллетеню.
- При необходимости перезапустите сервисы в согласованное окно.
- Повторите проверку сканером и функциональные проверки.
- Зафиксируйте результат, дату, владельца и оставшийся риск.
Продукты и затронутые версии
elixir-plug / plug
{
"status": "affected",
"version": "1.4.0",
"lessThan": "1.15.4",
"versionType": "semver"
}{
"status": "affected",
"version": "1.16.0",
"lessThan": "1.16.3",
"versionType": "semver"
}{
"status": "affected",
"version": "1.17.0",
"lessThan": "1.17.1",
"versionType": "semver"
}{
"status": "affected",
"version": "1.18.0",
"lessThan": "1.18.2",
"versionType": "semver"
}{
"status": "affected",
"version": "1.19.0",
"lessThan": "1.19.2",
"versionType": "semver"
}cpe:2.3:a:plug_project:plug:*:*:*:*:*:*:*:*
elixir-plug / plug
{
"status": "affected",
"changes": [
{
"at": "2cb7958d33030aa826b0c7404375844d4593d43a",
"status": "unaffected"
},
{
"at": "aa69c5ece99c40ded88b8c6581ecc86664b0b734",
"status": "unaffected"
},
{
"at": "d5dfffe25e975585227b1b85d247b0d14164bc45",
"status": "unaffected"
},
{
"at": "df812a1527bae9e941965e897308a2b8bbf83a94",
"status": "unaffected"
},
{
"at": "33858427c7f2737d560a2e40a0c9a9270d77d1d7",
"status": "unaffected"
}
],
"version": "c52b2f32c90bccd718202bafccb5f95594e30183",
"lessThan": "*",
"versionType": "git"
}cpe:2.3:a:plug_project:plug:*:*:*:*:*:*:*:*
CVSS: оценки и векторы
CVSS 4.0 · cve8.2
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 4.0 · 6b3ad84c-e1a6-4bf7-a703-f496b71e49db8.2
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Источники и ссылки
Происхождение полей
{
"cwes": [
"cve",
"nvd"
],
"epss": {
"source": "epss",
"received_at": "2026-11-03T21:15:44.575996+00:00"
},
"title": {
"source": "cve",
"received_at": "2026-10-28T19:41:24.693801+00:00"
},
"scores": [
"cve",
"nvd"
],
"status": {
"source": "cve",
"received_at": "2026-10-28T19:41:24.693801+00:00"
},
"affected": [
"cve"
],
"published": {
"source": "cve",
"received_at": "2026-10-28T19:41:24.693801+00:00"
},
"solutions": [],
"percentile": {
"source": "epss",
"received_at": "2026-11-03T21:15:44.575996+00:00"
},
"references": [
"cve",
"nvd"
],
"description": {
"source": "cve",
"received_at": "2026-10-28T19:41:24.693801+00:00"
},
"workarounds": [],
"configurations": []
}Хронология записи
- Данные обновлены04.11.2026, 00:15
- Данные обновлены03.11.2026, 00:15
- Данные обновлены02.11.2026, 00:13
- Данные обновлены31.10.2026, 12:00
- Появились сведения об исправлении28.10.2026, 22:41
- Данные обновлены28.10.2026, 18:07
- Опубликована28.10.2026, 15:14
Личная заметка и статус
Другие CVE того же продукта
| УЯЗВИМОСТЬ / ПРОДУКТ | ПРИОРИТЕТ | CVSS | EPSS | СИГНАЛЫ | ОПУБЛИКОВАНА | Карточка |
|---|---|---|---|---|---|---|
| CVE-2026-105963 Secret key base exposed in stack trace arguments on wrong-typed Plug.Crypto arguments elixir-plug / plug · elixir-plug / plug_crypto | Средний | 5.1 | 0,51 % | Патч | 23.10.2026 | |
| CVE-2026-56814 Plug: multipart :length limit is not charged for part headers, enabling unbounded temp-file creation (denial of service) elixir-plug / plug | Средний | 6.9 | 1,08 % | Патч | 10.07.2026 | |
| CVE-2026-56813 Cookie attribute injection in Plug.Conn.Cookies.encode/2 elixir-plug / plug | Низкий | 2.1 | 0,22 % | Патч | 10.07.2026 | |
| CVE-2026-54892 Plug: quadratic-time decoding of nested query/body parameters enables denial of service elixir-plug / plug | Критический | 8.7 | 0,89 % | PoCПатч | 23.06.2026 |