Parse Server — это серверная часть с открытым исходным кодом, которую можно развернуть в любой инфраструктуре, поддерживающей Node.js. До версий 8.6.8 и 9.5.0-alpha.8 маршрут обслуживания статических файлов PagesRouter уязвим для атаки с обходом пути, которая позволяет читать файлы без проверки подлинности за пределами настроенного каталога PagesPath. Проверка границ использует сравнение префиксов строк без принудительного соблюдения границы разделителя каталогов.
Злоумышленник может использовать последовательности обхода путей для доступа к файлам в родственных каталогах, имена которых имеют тот же префикс, что и каталог страниц (например, «pages-secret» начинается с «pages»). Эта проблема исправлена в версиях 8.6.8 и 9.5.0-alpha.8.
Показать оригинальное описание (EN)
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to versions 8.6.8 and 9.5.0-alpha.8, the PagesRouter static file serving route is vulnerable to a path traversal attack that allows unauthenticated reading of files outside the configured pagesPath directory. The boundary check uses a string prefix comparison without enforcing a directory separator boundary. An attacker can use path traversal sequences to access files in sibling directories whose names share the same prefix as the pages directory (e.g. pages-secret starts with pages). This issue has been patched in versions 8.6.8 and 9.5.0-alpha.8.
Характеристики атаки
Последствия
Строка CVSS v4.0