CVE-2026-90982
@fastify/static vulnerable to route guard bypass via path case-folding
Что произошло
@fastify/static is a Fastify plugin that serves static files from a configured root directory. In versions before 10.1.4, on a case-insensitive filesystem such as Windows or the default macOS volume, a route guard or allowedPath restriction can be bypassed by altering the letter case of a path segment. The route matcher is case-sensitive while the filesystem is not, so a request that changes the case of a protected segment does not match the guarded route and falls through to the static handler, yet the filesystem resolves it to the same protected file. As a result, an unauthenticated request can read a file that a route guard or allowedPath was configured to protect. The issue does not affect case-sensitive filesystems and is not a directory traversal, since nothing is served from outside the configured root. The issue is fixed in @fastify/static 10.1.4, which validates the requested path against its actual on-disk spelling and rejects case-aliased paths before authorization. As a workaround, serve static files from a case-sensitive filesystem, or ensure route guards and allowedPath rules account for every letter-case variant of the protected paths.
Что это значит
В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.
Что делать
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. После исправления
- Проверьте фактическую версию и результат установки по бюллетеню.
- При необходимости перезапустите сервисы в согласованное окно.
- Повторите проверку сканером и функциональные проверки.
- Зафиксируйте результат, дату, владельца и оставшийся риск.
Продукты и затронутые версии
@fastify/static / @fastify/static
{
"status": "affected",
"version": "0",
"lessThan": "10.1.4",
"versionType": "semver"
}{
"status": "unaffected",
"version": "10.1.4",
"versionType": "semver"
}CVSS: оценки и векторы
CVSS 3.1 · cve5.3
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Источники и ссылки
Происхождение полей
{
"cwes": [
"cve"
],
"epss": {
"source": "epss",
"received_at": "2026-11-04T21:21:03.340782+00:00"
},
"title": {
"source": "cve",
"received_at": "2026-10-28T18:09:15.419961+00:00"
},
"scores": [
"cve"
],
"status": {
"source": "cve",
"received_at": "2026-10-28T18:09:15.419961+00:00"
},
"affected": [
"cve"
],
"published": {
"source": "cve",
"received_at": "2026-10-28T18:09:15.419961+00:00"
},
"solutions": [],
"percentile": {
"source": "epss",
"received_at": "2026-11-04T21:21:03.340782+00:00"
},
"references": [
"cve"
],
"description": {
"source": "cve",
"received_at": "2026-10-28T18:09:15.419961+00:00"
},
"workarounds": [],
"configurations": []
}Хронология записи
- Данные обновлены05.11.2026, 00:21
- Данные обновлены04.11.2026, 00:15
- Данные обновлены03.11.2026, 00:15
- Данные обновлены02.11.2026, 00:13
- Данные обновлены31.10.2026, 12:00
- Данные обновлены29.10.2026, 12:45
- Опубликована28.10.2026, 21:09
Личная заметка и статус
Другие CVE того же продукта
| УЯЗВИМОСТЬ / ПРОДУКТ | ПРИОРИТЕТ | CVSS | EPSS | СИГНАЛЫ | ОПУБЛИКОВАНА | Карточка |
|---|---|---|---|---|---|---|
| CVE-2026-18427 @fastify/static vulnerable to route guard bypass via non-canonical path segments @fastify/static / @fastify/static | Высокий | 7.5 | 0,66 % | 06.08.2026 | ||
| CVE-2026-15074 @fastify/static vulnerable to route guard bypass via path traversal @fastify/static / @fastify/static · @fastify/static | Высокий | 7.5 | 0,67 % | 23.07.2026 | ||
| CVE-2026-7120 @fastify/static vulnerable to Authorization Bypass via Non-Canonical URL Paths @fastify/static / @fastify/static · @fastify/static | Средний | 5.3 | 0,37 % | 23.07.2026 | ||
| CVE-2026-6414 @fastify/static vulnerable to route guard bypass via encoded path separators @fastify/static / @fastify/static · @fastify/static | Средний | 5.9 | 0,42 % | 16.04.2026 | ||
| CVE-2026-6410 @fastify/static vulnerable to path traversal in directory listing @fastify/static / @fastify/static · @fastify/static | Средний | 5.3 | 0,51 % | 16.04.2026 |