Pathling — это набор инструментов, которые упрощают использование FHIR и клинической терминологии при анализе медицинских данных. До версии 2.0.0 Pathling Server конечная точка Pathling `/$result` позволяла вызывающей стороне, которая может получить любой действительный идентификатор задания асинхронного экспорта, предоставлять значения параметра `file`, содержащие последовательности обхода пути. Обработчик проверяет только предоставленное задание и никогда не нормализует и не ограничивает путь к запрошенному файлу каталогом jobs/<jobId> этого задания перед открытием его как ресурса файловой системы.
Поскольку рабочее пространство асинхронного экспорта находится в том же корне базы данных хранилища, что и таблицы постоянных ресурсов, злоумышленник может использовать собственное задание экспорта для чтения других файлов из хранилища. Это исправлено в Pathling Server 2.0.0. В качестве временного решения отключите операции асинхронного экспорта (pathling.operations.exportEnabled, PatientExportEnabled, groupExportEnabled, BulkSubmitEnabled) или включите аутентификацию и ограничьте возможность экспорта доверенными абонентами.
Показать оригинальное описание (EN)
Pathling is a set of tools that make it easier to use FHIR and clinical terminology within health data analytics. Prior to version 2.0.0 of Pathling Server, Pathling's `/$result` endpoint allows a caller who can obtain any valid async export job ID to supply `file` parameter values containing path traversal sequences. The handler verifies only the supplied `job` and never normalises or confines the requested `file` path to that job's `jobs/<jobId>` directory before opening it as a filesystem resource. Because async export scratch space lives under the same warehouse database root as persisted resource tables, an attacker can use their own export job to read other files from the warehouse. This is fixed in Pathling Server 2.0.0. As an interim mitigation, disable the async export operations (`pathling.operations.exportEnabled`, `patientExportEnabled`, `groupExportEnabled`, `bulkSubmitEnabled`) or enable authentication and restrict export capability to trusted callers.
Характеристики атаки
Последствия
Строка CVSS v4.0