TREK — это совместный планировщик путешествий. До версии 3.1.3 действия по загрузке, обновлению и связыванию файлов TREK принимали контролируемые злоумышленником значения резервирования_id, Place_id и присваивания_id без использования метода findForeignLinkTarget() для проверки принадлежности объекта, на который ссылаются, к поездке файла. Аутентифицированный пользователь с разрешением на редактирование файлов в любой доступной поездке может отправить идентификатор зарубежного бронирования через POST /api/trips/:tripId/files/:id/link, POST /api/trips/:tripId/files или PUT /api/trips/:tripId/files/:id.
Последующие операции чтения через FILE_SELECT или getFileLinks() присоединяются к зарубежному резервированию и возвращают резервирование_заголовок, раскрывая существование резервирования и названия за границами частной поездки. Эта проблема исправлена в версии 3.1.3.
Показать оригинальное описание (EN)
TREK is a collaborative travel planner. Prior to 3.1.3, TREK file upload, update, and link actions accept attacker-controlled reservation_id, place_id, and assignment_id values without using findForeignLinkTarget() to verify that the referenced object belongs to the file's trip. An authenticated user with file-edit permission on any accessible trip can submit a foreign reservation identifier through POST /api/trips/:tripId/files/:id/link, POST /api/trips/:tripId/files, or PUT /api/trips/:tripId/files/:id. Subsequent reads through FILE_SELECT or getFileLinks() join the foreign reservation and return reservation_title, disclosing reservation existence and titles across private trip boundaries. This issue is fixed in version 3.1.3.
Характеристики атаки
Последствия
Строка CVSS v3.1