Summary
CVE-2026-18351 is a critical unrestricted file upload vulnerability in the "Drag and Drop File Upload for Elementor Forms" WordPress plugin (developed by addonsorg), affecting all versions up to and including 1.6.0. The flaw allows unauthenticated attackers to upload arbitrary files, including executable PHP files, which can lead to full remote code execution on the affected web server. The vulnerability carries a CVSS v3.1 base score of 9.8 (Critical).
Technical details
- Root cause: The plugin’s
is_file_type_valid()function performs insufficient validation of uploaded file types. The attacker-controlledtypeparameter is used as regex keys against the MIME/extension allowlist inside theelementor_file_uploadfunction. - Trigger conditions: An attacker can craft a file extension/type value that bypasses the allowlist check via regex manipulation; the filename is subsequently normalized by
sanitize_file_name()in a way that can resolve to a PHP-executable extension. - Attack vector: Network-based, requiring no authentication and no user interaction — the plugin’s file upload endpoint used by Elementor forms is exposed to any site visitor.
- Impact: Successful exploitation allows uploading and executing arbitrary code (e.g., a PHP web shell) on the hosting server, resulting in complete compromise of confidentiality, integrity, and availability of the affected WordPress installation.
Affected software
- Drag and Drop File Upload for Elementor Forms (WordPress plugin) — all versions up to and including 1.6.0
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 the "Drag and Drop File Upload for Elementor Forms" plugin to a version released after 1.6.0 that corrects the file type validation logic in
is_file_type_valid(). - If no patch is available: Disable or remove the plugin until a fixed version is released. As a network-level mitigation, block or restrict access to the plugin’s file upload handler, enforce strict file-type/extension checks at the web server or WAF layer, and configure upload directories to deny script execution (e.g., disable PHP execution via server configuration in upload folders).

