PT-2026-51451 · Npm+2 · @Actual-App/Sync-Server+1
CVSS v3.1
8.3
High
| Vector | AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L |
Name of the Vulnerable Software and Affected Versions
Actual versions prior to 26.6.0
Description
In OpenID multi-user mode, disabling a user only prevents future OpenID logins for that identity. Existing session tokens remain valid because the shared session validation path does not check if the associated user is still enabled. This allows a disabled user to continue accessing authenticated server endpoints. The issue is particularly persistent in default deployments where the
token expiration variable is set to never. A disabled user can maintain access to their own budgets, shared budgets containing sensitive financial data, or even administrative privileges if the disabled account had an admin role. The vulnerability involves the validateSession() function and affects endpoints protected by validateSessionMiddleware, such as the sync API and the /users update route via the enabled variable.Recommendations
Update Actual to version 26.6.0.
Exploit
Fix
Insufficient Session Expiration
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
@Actual-App/Sync-Server
Actual