Medium severity · published Sep 7, 2024
CVE-2024-1596
Ninja Forms File Uploads <= 3.3.16 - Unauthenticated Stored Cross-Site Scripting via File Upload
6.1
CVSS
0.4%
EPSS
No
On KEV
Description
The Ninja Forms - File Uploads plugin for WordPress is vulnerable to Stored Cross-Site Scripting via an uploaded file (e.g. RTX file) in all versions up to, and including, 3.3.16 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
Required
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.4% · higher than 37% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
NF
Ninja Forms - File Uploads · SaturdayDrive
through 3.3.16 · source: vendor
NF
Ninja Forms File Uploads · Ninjaforms
before 3.3.18 · source: NVD
NF
Ninja Forms · Saturday Drive
through 3.3.16 · source: CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2024-1596
CVE.org
https://www.cve.org/CVERecord?id=CVE-2024-1596
Product
https://ninjaforms.com/extensions/file-uploads/
Release Notes
https://ninjaforms.com/extensions/file-uploads/?changelog=1/
Third Party Advisory
https://www.wordfence.com/threat-intel/vulnerabilities/id/499a1892-12b7-49d5-b65f-4f53a968a23a?source=cve
More from Ninja Forms - File Uploads
9.8
CVE-2026-0740
Ninja Forms - File Upload <= 3.3.26 - Unauthenticated Arbitrary File Upload
8.1
CVE-2026-92820
Ninja Forms - File Uploads <= 3.3.34 - Unauthenticated Arbitrary File Upload
7.5
CVE-2026-13369
Ninja Forms - File Uploads <= 3.3.29 - Unauthenticated Arbitrary File Read via File Upload Field 'files[].data.file_path' Parameter
5.3
CVE-2026-12557
Ninja Forms - File Uploads <= 3.3.29 - Missing Authorization to Unauthenticated Log Disclosure and Deletion via debug-log/delete-all and debug-log/get-all REST Endpoints
