Summary
Pterodactyl does not revoke SFTP access when server is deleted or permissions reduced
Pterodactyl does not revoke active SFTP connections when a user is removed from a server instance or has their permissions changes with respect to file access over SFTP. This allows a user that was already connected to SFTP to remain connected and access files even after their permissions are revoked.
Details
When a user opens a connection to a server using the Wings SFTP server instance the permissions are checked and returned from the authentication API call made to the Panel. However, credentials are not checked again after the initial handshake. Thus, if a user is removed from a server in the panel or have their permissions modified, those permissions are not updated in the SFTP connection.
As a result, a user that has already gained access to a server's files via the SFTP subsystem will maintain those permissions until disconnected (via Wings restart, or a manual disconnection on their end).
[!NOTE]
This issue impacts the SFTP subsystem for server files specifically. There is no exposure of Wings private data, or any data outside of a server's local filesystem. Additionally, a user must have been connected to SFTP at the time of their permissions being revoked in order for this issue to be exploited. If a user was not connected, they would not be able to connect once their permissions were reduced.
Impact
Affected versions
Security releases
Kodem intelligence
Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.
Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter. Kodem's runtime-powered SCA identifies whether this CVE is reachable in your applications.
Already deployed Kodem?
See it in your environmentNew to Kodem? Get a demo →Remediation advice
Please upgrade to [email protected] and [email protected] to resolve this issue. Patches are available via the implementation PRs, but it is recommended to apply by upgrading the entire instance.
Frequently Asked Questions
- What is CVE-2025-68954? CVE-2025-68954 is a high-severity security vulnerability in pterodactyl/panel (composer), affecting versions < 1.12.0. It is fixed in 1.12.0.
- Which packages are affected by CVE-2025-68954?
pterodactyl/panel(composer) (versions < 1.12.0)github.com/pterodactyl/wings(go) (versions < 1.12.0)
- Is there a fix for CVE-2025-68954? Yes. CVE-2025-68954 is fixed in 1.12.0. Upgrade to this version or later.
- Is CVE-2025-68954 exploitable, and should I be worried? Whether CVE-2025-68954 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
- What actually determines whether CVE-2025-68954 is exploitable, and how bad it is? Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
- How do I fix CVE-2025-68954?
- Upgrade
pterodactyl/panelto 1.12.0 or later - Upgrade
github.com/pterodactyl/wingsto 1.12.0 or later
- Upgrade