Description
When creating an export through the pretix API, API clients are returned an UUID value for their export job (a long, random string like 35742818-c375-4d15-839f-d49aecce94d6). Using this UUID, the API client can then request the actual file for download. The same kind of UUID is used in other places in pretix when temporary files are generated for internal use or download. One remaining API endpoint, however, wrongfully did not verify if the UUID used for download actually belongs to a file that is supposed to be downloadable and belongs to the correct user. In reality, this is hard to exploit because an attacker would need to have access to a valid UUID for the file they desire which is unlikely to happen without a separate security problem giving them access to logs etc.
Problem types
CWE-639 Authorization Bypass Through User-Controlled Key
Product status
2024.10.0 (python) before 2026.2.0
2026.2.0 (python) before 2026.3.0
2026.3.0 (python) before 2026.4.0
2026.4.0 (python) before 2026.5.0
Credits
Deepjyoti Roy
References
pretix.eu/about/en/blog/20260527-release-2026-4-2/