CVE-2026-102603 in serverinfo

Summary

by MITRE • 10/13/2026

Gotify server is a simple server for sending and receiving messages in real-time per WebSocket. Prior to 3.0.0, the password change endpoint (POST /current/user/password) accepts a valid client token without requiring the account's current password or another elevated authentication step. An attacker who obtains a client token can set a new password for the associated user, taking control of password authentication and forcing account recovery through an administrator or direct database access. This issue is fixed in version 3.0.0.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 10/13/2026

The vulnerability identified in Gotify server versions prior to 3.0.0 represents a critical failure in authentication logic within the user management subsystem, specifically affecting the password change endpoint located at POST /current/user/password. In secure application design, modifying sensitive account credentials such as passwords requires robust verification of the current identity and intent of the actor performing the action. Typically, this is achieved by requiring the user to provide their existing password or complete a multi-factor authentication challenge before allowing credential updates. This ensures that only the legitimate owner of the account can alter access controls. However, in vulnerable versions of Gotify, the server accepts requests containing a valid client token without validating whether the requester knows the current password associated with that account. A client token is generally intended for application-level API access rather than administrative or identity management actions, yet its presence was deemed sufficient by the flawed implementation to authorize privilege escalation within the user context.

From a technical perspective, this flaw constitutes an authentication bypass where the system fails to enforce proper authorization checks before processing state-changing requests. The absence of a requirement for the current password means that any entity possessing a valid client token can overwrite the existing credentials. This design oversight effectively decouples the act of changing a password from proof of ownership of the original secret, creating a trivial path for account takeover. An attacker who has obtained or guessed a client token does not need to crack the user's actual password hash; they simply submit a new password via the vulnerable endpoint and gain immediate control over the authentication mechanism. This allows the attacker to log in as the victim using the newly set credentials, bypassing any complexity requirements that might have been applied to the original password.

The operational impact of this vulnerability is severe, leading directly to full account compromise and potential lateral movement within systems integrated with Gotify for notification or alerting purposes. Once an attacker controls a user's account by changing its password, they can access all data associated with that identity, including message history, client configurations, and potentially sensitive information relayed through the platform. Furthermore, because the original password is replaced without notice to the legitimate owner until login attempts fail, detection may be delayed. The victim might only realize their account has been compromised when they are locked out or when suspicious activity is observed in logs. In environments where Gotify serves as a critical communication channel for security operations centers or system administrators, compromising an administrative user could lead to broader infrastructure visibility loss or manipulation of alerting mechanisms.

This vulnerability aligns with CWE-287 Improper Authentication and CWE-640 Weak Password Change Mechanism within the Common Weakness Enumeration framework. It also maps to MITRE ATT&CK technique T1078 Valid Accounts, as it involves the use of legitimate credentials (the client token) to gain unauthorized access or control over an account by exploiting a flaw in how those credentials are validated for specific actions. The exploitation path is straightforward and does not require complex chaining with other vulnerabilities, making it highly exploitable in environments where API tokens may be exposed through source code repositories, misconfigured permissions, or insecure client applications.

Mitigation strategies focus primarily on upgrading the software infrastructure to version 3.0.0 or later, where this logic error has been corrected by enforcing stricter authentication requirements for password modification endpoints. In addition to patching, organizations should implement defense-in-depth measures such as rotating all existing client tokens immediately upon discovery of exposure risks and auditing access logs for unusual patterns in user profile modifications. Implementing multi-factor authentication for administrative accounts can further reduce the impact if a token is compromised, ensuring that possession of a single factor like a password or token is insufficient for full account takeover. Regular security assessments should include validation of credential change workflows to ensure they consistently require proof of current identity before allowing sensitive updates.

Responsible

GitHub M

Reservation

09/29/2026

Disclosure

10/13/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

very low

Sources

Do you know our Splunk app?

Download it now for free!