CVE-2026-54593: Pterodactyl's improper JWT scoping allows subuser to upload files when not explicitly granted `file.create` permissions
A privilege escalation vulnerability exists in the Wings /upload/file endpoint due to insufficient validation of panel-signed JWTs. Wings accepts any valid panel-signed JWT containing server_uuid, user_uuid, and unique_id, regardless of the token’s intended purpose. Because the Panel issues JWTs with these same claims for other lower-privilege operations (such as WebSocket authentication and file download links), an authenticated subuser can reuse one of those tokens to upload arbitrary files without possessing the required file.create permission.
References
- github.com/advisories/GHSA-8r6w-3qq5-4p4r
- github.com/pterodactyl/panel/commit/7ffcd636310bb72b54bac3280d2a15e727feded7
- github.com/pterodactyl/panel/pull/5636
- github.com/pterodactyl/panel/security/advisories/GHSA-8r6w-3qq5-4p4r
- github.com/pterodactyl/wings/commit/d0ddc80844479302abdaf9654de3bacd511c0f5c
- nvd.nist.gov/vuln/detail/CVE-2026-54593
Code Behaviors & Features
Detect and mitigate CVE-2026-54593 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →