Summary
CVE-2026-0740 is a critical unauthenticated arbitrary file upload vulnerability in the Ninja Forms – File Uploads extension for WordPress, affecting versions up to and including 3.3.26. Successful exploitation allows an attacker with no authentication to write arbitrary files, including PHP webshells, to the web server, leading to remote code execution and full site compromise. The flaw carries a CVSS v3.1 base score of 9.8 (Critical) and has been observed under active exploitation in the wild.
Technical details
- Root cause: the
NF_FU_AJAX_Controllers_Uploads::handle_uploadfunction validates the file type of the uploaded source filename but fails to validate the destination filename/path, allowing the intended file-extension allowlist to be bypassed. - Trigger conditions: the targeted site must have a Ninja Forms form containing a file upload field powered by the File Uploads extension.
- Attack vector: unauthenticated, network-based exploitation via a crafted multipart/form-data POST request to the WordPress
admin-ajax.phpendpoint, using the plugin’s own AJAX actions to obtain an upload nonce and then submit a disguised malicious file. - Impact: arbitrary file write leading to remote code execution, allowing an attacker to plant and execute a PHP webshell and fully compromise the affected server.
Affected software
- Ninja Forms – File Uploads (WordPress plugin/extension): all versions up to and including 3.3.26
- Version 3.3.25 contains only a partial fix and remains exploitable
Severity
- CVSS v3.1 Base Score: 9.8 (Critical)
- Vector:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Mitigation and recommended actions
- Immediate: upgrade Ninja Forms – File Uploads to version 3.3.27 or later, which fully resolves the vulnerability. Confirm the update was actually applied, since this is a premium extension and updates do not always flow through the standard WordPress.org update pipeline.
- If immediate patching is not possible: disable or remove any Ninja Forms with file upload fields until patched, review the WordPress uploads directory for unexpected executable files (e.g., unexpected
.phpfiles), monitor for suspicious multipart POST requests toadmin-ajax.php, and enable web application firewall rules covering this vulnerability.
How IONIX identifies potentially affected assets
IONIX matches the following signals against data already collected when it crawled the asset; identifying the technology sends no request beyond that crawl.
- Raw response body:
/wp-content/plugins/ninja-forms/,/wp-content/plugins/ninja-forms-uploads/

