Tuist is a virtual platform team for Swift app devs. In 1.180.8 and earlier, the DELETE /api/projects/{account_handle}/{project_handle}/previews/{preview_id} endpoint loads the preview by its UUID without verifying that the preview belongs to the project resolved from the URL path. The route's project-level authorization plug (AuthorizationPlug, :preview) authorizes the caller against the project encoded in account_handle/project_handle — which the attacker controls — and then the action deletes whichever preview's UUID is supplied. The check therefore guards the wrong project.
Metrics
Affected Vendors & Products
References
History
Fri, 15 May 2026 11:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Tuist
Tuist tuist |
|
| Vendors & Products |
Tuist
Tuist tuist |
Thu, 14 May 2026 21:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Tuist is a virtual platform team for Swift app devs. In 1.180.8 and earlier, the DELETE /api/projects/{account_handle}/{project_handle}/previews/{preview_id} endpoint loads the preview by its UUID without verifying that the preview belongs to the project resolved from the URL path. The route's project-level authorization plug (AuthorizationPlug, :preview) authorizes the caller against the project encoded in account_handle/project_handle — which the attacker controls — and then the action deletes whichever preview's UUID is supplied. The check therefore guards the wrong project. | |
| Title | Tuist: IDOR in preview deletion API allows cross-tenant deletion of any preview by UUID | |
| Weaknesses | CWE-639 | |
| References |
| |
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: GitHub_M
Published:
Updated: 2026-05-14T20:41:40.956Z
Reserved: 2026-05-07T16:20:08.660Z
Link: CVE-2026-44678
No data.
Status : Received
Published: 2026-05-14T21:16:47.640
Modified: 2026-05-14T21:16:47.640
Link: CVE-2026-44678
No data.