Advisories for Npm/Payload package

2026

Payload: Unauthenticated account-lockout denial of service

Impact An unauthenticated attacker who knows an account’s email address or username could trigger Payload’s account lockout mechanism and prevent that user from signing in. You are affected if: Using an affected Payload version with an auth-enabled collection that uses local authentication and account lockout. Applications that do not use Payload local authentication are not affected. Patches Successful password resets now clear the account’s lockout state. The forgot-password flow also …

Payload: Incomplete validation during the upload file lifecycle

Under certain conditions, an authenticated user with permission to modify uploads could cause unintended files to be removed during file cleanup. This may result in data loss or service disruption. You are affected if: You use Payload upload collections with local file storage. Untrusted authenticated users can update or delete uploads. Deployments that restrict upload management to trusted users are less exposed.

Payload external upload trust validation issue

Under certain external upload configurations, Payload could send authentication data to a destination that was not verified as trusted. If the affected request contained a valid session, this could expose that session to an unintended recipient. You are affected if: You have enabled external URL-based upload retrieval, where authenticated requests can trigger it.

Payload authentication token field handling issue

Under certain field configurations, Payload could include unintended values in the authentication token issued at login. You are affected if: You use an affected Payload version and have configured a custom field option that maps a field to a reserved authentication claim name.

Payload: SQL Injection in SQLite and Postgres

A user can submit a request that exploits a SQL Injection vulnerability in Payload. You are affected if: You use an affected Payload version. Untrusted users can query readable collections using dynamic filters or joins. You are not affected if you use MongoDB (@payloadcms/mongodb).

Payload has Authenticated SSRF via Upload Functionality

An authenticated Server-Side Request Forgery (SSRF) vulnerability existed in the upload functionality. Authenticated users with create or update access to an upload-enabled collection could cause the server to make outbound HTTP requests to arbitrary URLs. Consumers are affected if ALL of these are true: Payload version < v3.79.1 At least one collection with upload enabled An authenticated user has create or update access to that collection

Payload has a CSRF Protection Bypass in Authentication Flow

A Cross-Site Request Forgery (CSRF) vulnerability existed in the authentication flow. Under certain conditions, the configured CSRF protection could be bypassed, allowing cross-site requests to be made. Consumers are affected if ALL of these are true: Payload version < v3.79.1 serverURL is configured

Payload: Server-Side Request Forgery (SSRF) in External File URL Uploads

A Server-Side Request Forgery (SSRF) vulnerability exists in Payload's external file upload functionality. When processing external URLs for file uploads, insufficient validation of HTTP redirects could allow an authenticated attacker to access internal network resources. Users are affected if ALL of these are true: Payload version < v3.75.0 At least one collection with upload enabled A user has create access to that upload-enabled collection An authenticated user with upload collection …

payload-preferences has Cross-Collection IDOR in Access Control (Multi-Auth Environments)

A cross-collection Insecure Direct Object Reference (IDOR) vulnerability exists in the payload-preferences internal collection. In multi-auth collection environments using Postgres or SQLite with default serial/auto-increment IDs, authenticated users from one auth collection can read and delete preferences belonging to users in different auth collections when their numeric IDs collide. Users are affected if ALL of these are true: Multiple auth collections configured (e.g., admins + customers) Postgres or SQLite database …

2025

Payload's SQLite adapter Session Fixation vulnerability

A Session Fixation vulnerability existed in Payload's SQLite adapter due to identifier reuse during account creation. A malicious attacker could create a new account, save its JSON Web Token (JWT), and then delete the account, which did not invalidate the JWT. As a result, the next newly created user would receive the same identifier, allowing the attacker to reuse the JWT to authenticate and perform actions as that user. This …

Payload does not invalidate JWTs after log out

Payload uses JSON Web Tokens (JWT) for authentication. After log out JWT is not invalidated, which allows an attacker who has stolen or intercepted token to freely reuse it until expiration date (which is by default set to 2 hours, but can be changed). This issue has been fixed in version 3.44.0 of Payload.

2023

Exposure of Sensitive Information to an Unauthorized Actor

Payload is a free and open source headless content management system. In versions prior to 1.7.0, if a user has access to documents that contain hidden fields or fields they do not have access to, the user could reverse-engineer those values via brute force. Version 1.7.0 contains a patch. As a workaround, write a beforeOperation hook to remove where queries that attempt to access hidden field data.

2022