CVE-2026-57565
Readest: Cross-tenant object write via unsanitized fileName in /api/storage/upload (object-key path traversal)
CVSS 3.1Medium
6.5/ 10.0
Опубликовано
Обновлено
В атаках
Не зафиксировано
Публичный PoC
Отсутствует
Анализ подготовлен:CVE Futuretools Threat Intelligence
Верификация: MITRE CVE List · CISA KEV · NIST NVD
ОФИЦИАЛЬНЫЙ ПАТЧ НЕ ОПУБЛИКОВАН
Обновите Readest до версии 0.11.10.
01 // ТЕХНИЧЕСКАЯ СУТЬ УЯЗВИМОСТИ
В Readest обнаружен обход каталога при формировании ключа объекта через параметр fileName в маршруте /api/storage/upload. Уязвимость позволяет перезаписывать файлы других пользователей в хранилище Cloudflare R2.
02 // АНАТОМИЯ АТАКИ И ДЕФЕКТ ЛОГИКИ
Маршрут apps/readest-app/src/pages/api/storage/upload.ts формирует ключ объекта из идентификатора пользователя и переданного клиентом fileName без фильтрации разделителей пути. При нормализации URL в apps/readest-app/src/utils/r2.ts перед подписанием presigned PUT-запроса происходит выход за пределы пространства имён вызывающего пользователя.
03 // СИСТЕМНЫЕ ПОСЛЕДСТВИЯ
Аутентифицированный злоумышленник, знающий идентификатор целевого пользователя и хеш книги, может перезаписать или подменить сохранённый объект книги и повредить метаданные file_key в R2.
04 // МАТРИЦА ЗАТРОНУТЫХ ПАКЕТОВ
Точные диапазоны версий не зафиксированы в источниках
05 // ПЕРВОИСТОЧНИКИ И БЮЛЛЕТЕНИ (4)
06 // ЦИТИРОВАНИЕ ДАННЫХ И ИСТОЧНИК
Для включения аналитической карточки в отчёты по безопасности, матрицы рисков или исследовательские публикации используйте стандартизированный формат цитирования:
Библиографическая ссылка (Plain text)
CVE Futuretools (2026). Анализ уязвимости CVE-2026-57565: Readest: Cross-tenant object write via unsanitized fileName in /api/storage/upload (object-key path traversal). URL: https://cve.futuretools.ru/cve/CVE-2026-57565
BibTeX формат (LaTeX)
@misc{cve_futuretools_cve_2026_57565,
title = {{CVE-2026-57565: Readest: Cross-tenant object write via unsanitized fileName in /api/storage/upload (object-key path traversal)}},
author = {{CVE Futuretools}},
year = {2026},
howpublished = {\url{https://cve.futuretools.ru/cve/CVE-2026-57565}},
note = {Оперативный инженерный анализ киберугроз}
}