
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2025-4643 is an Insufficient Session Expiration vulnerability in Payload CMS where JSON Web Tokens (JWTs) are not invalidated upon user logout. This allows an attacker who has stolen or intercepted a valid JWT to continue using it until the token naturally expires — by default, up to 2 hours after issuance. The vulnerability affects all versions of the payload, @payloadcms/next, and @payloadcms/graphql npm packages prior to 3.44.0. It was published and disclosed on August 29, 2025, with a fix released the same day. The CVSS v4 base score is 6.3 (Medium/Moderate) (Github Advisory, ENISA EUVD).
The root cause is classified as CWE-613 (Insufficient Session Expiration): when a user logs out of a Payload CMS instance, the server does not maintain a token denylist or otherwise revoke the issued JWT, leaving it cryptographically valid until its embedded expiry timestamp. Because JWTs are stateless by design, the server has no mechanism to distinguish a post-logout token from a legitimately active one without server-side invalidation logic. An attacker who intercepts or steals a JWT — via network sniffing, XSS, or other means — can replay it against any Payload API endpoint that accepts bearer token authentication for the full remaining lifetime of the token (default: 2 hours). The vulnerability was discovered and reported by CERT Polska (CERT-PL, Github Advisory).
Successful exploitation allows an attacker to maintain unauthorized, authenticated access to a Payload CMS instance as the logged-out user for up to 2 hours (or longer if the JWT expiry has been extended by configuration). This can result in unauthorized access to sensitive content, data exposure through the admin panel or API, and unauthorized modifications to managed content or user data. Availability is not impacted, but both confidentiality and integrity of the vulnerable system are at low risk according to the CVSS assessment (Github Advisory, ENISA EUVD).
Authorization: Bearer <token> HTTP header to make authenticated API requests to the Payload CMS REST or GraphQL endpoints.exp claim is reached (default: 2 hours from issuance), accessing or modifying content, user data, or administrative functions permitted by the victim's role (Github Advisory, CERT-PL).Upgrade to Payload CMS version 3.44.0 or later, which implements server-side JWT invalidation on logout for the payload, @payloadcms/next, and @payloadcms/graphql npm packages (Github Advisory). As a temporary workaround prior to upgrading, administrators should reduce the JWT token validity period to the shortest acceptable value in the Payload configuration to limit the exploitation window. Additionally, enforcing HTTPS to prevent token interception in transit and monitoring for anomalous authenticated API activity after logout events are recommended compensating controls (CERT-PL).
The vulnerability was discovered and reported by CERT Polska (CERT-PL), which published a dedicated advisory on August 29, 2025 (CERT-PL). The issue was also tracked by ENISA under EUVD-2025-26180 and picked up by security aggregators including Malware News and various CVE tracking platforms shortly after disclosure (ENISA EUVD). No significant broader media coverage or notable researcher commentary beyond the initial disclosure has been identified.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."