SFTPGo — это решение для передачи файлов, управляемое событиями, с открытым исходным кодом. С версий 2.2.0 до 2.7.3 конечная точка частичной загрузки ZIP общедоступного веб-клиента для общедоступного общего ресурса проверяет записи файлов, предоставленных клиентом, с помощью сравнения необработанных байтовых префиксов, а не проверки с учетом границ каталога. Запрашивающая сторона, не прошедшая проверку подлинности и имеющая доступ к общедоступному общему каталогу, может выбрать канонический путь за пределами общего каталога, если целевой путь начинается с имени общего каталога, например родственный путь с тем же префиксом.
Затем конечная точка включает файл, выходящий за рамки области действия, в созданную загрузку, раскрывая его содержимое. Эта проблема исправлена в версии 2.7.3.
Показать оригинальное описание (EN)
SFTPGo is an open source, event-driven file transfer solution. From 2.2.0 until 2.7.3, the public web-client partial ZIP download endpoint for a browsable share validates client-supplied files entries with a raw byte-prefix comparison rather than a directory-boundary-aware check. An unauthenticated requester who can reach a public share can select a canonical path outside the shared directory when the target path begins with the shared directory's name, such as a sibling path that shares the same prefix. The endpoint then includes the out-of-scope file in the generated download, disclosing its contents. This issue is fixed in version 2.7.3.
Характеристики атаки
Последствия
Строка CVSS v3.1