Home

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.

PUBLISHED Reserved 2026-05-07 | Published 2026-05-14 | Updated 2026-05-16 | Assigner GitHub_M




HIGH: 7.1CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Problem types

CWE-639: Authorization Bypass Through User-Controlled Key

Product status

<= 1.180.8
affected

References

github.com/.../tuist/security/advisories/GHSA-fqp5-hg46-cp2x

cve.org (CVE-2026-44678)

nvd.nist.gov (CVE-2026-44678)

Download JSON