Summary
CVE-2026-84434 is a critical arbitrary file upload vulnerability (CWE-434) in the Gravity Forms WordPress plugin, affecting all versions up to and including 3.1.0.4. The flaw allows unauthenticated attackers to bypass file-extension validation on Hidden File Upload fields and upload potentially executable files to a public-facing WordPress site, which can lead to remote code execution. The vulnerability carries a CVSS v3.1 base score of 9.8 (Critical).
Technical details
- Root cause: A mismatch between the plugin’s field validation logic and its file persistence pipeline in the
upload_filefunction. When a file is rejected during validation, its upload state is not cleared, and the file is later processed by the upload handler without being re-validated. - Trigger conditions: The vulnerability requires a publicly accessible Gravity Forms form that contains a File Upload field with its Visibility setting configured to "Hidden."
- Attack vector: Network-based (AV:N), requires no authentication (PR:N) and no user interaction (UI:N), with low attack complexity (AC:L), making it exploitable directly against internet-facing WordPress sites.
- Impact: Successful exploitation allows an unauthenticated attacker to upload arbitrary, potentially executable files to the server, which can result in remote code execution and full compromise of confidentiality, integrity, and availability (C:H/I:H/A:H).
Affected software
- Gravity Forms (WordPress plugin) — all versions up to and including 3.1.0.4
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: Update Gravity Forms to the latest available version. The vendor has released newer builds (3.1.1 and 3.1.2) that include general "security enhancements," though the changelog does not attribute a specific fix to this CVE; applying the latest available update is the recommended path to remediation.
- If immediate patching is not possible:
- Audit all public-facing forms for File Upload fields configured with Hidden visibility and disable or remove them until the plugin is updated.
- Restrict or monitor access to the WordPress uploads/temporary upload directories used by Gravity Forms.
- Configure the web server to prevent execution of scripts (e.g.,
.php) from upload directories as a defense-in-depth measure.

