Gravity Forms <= 2.10.4 - Unauthenticated Arbitrary File Read via 'gform_uploaded_files' Parameter
The Gravity Forms plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 2.10.4 via the 'gform_uploaded_files' parameter parameter. This makes it possible for unauthenticated attackers to read the contents of arbitrary files on the server, which can contain sensitive information. Exploitation requires the targeted form to not enforce login (so publicly accessible), which allows the unauthenticated attacker to reach the process_send_resume_link endpoint and supply an arbitrary recipient email address to receive the traversal-retrieved file as a notification attachment.
Quick answer
Gravity Forms should be reviewed and updated if it matches the affected versions. The recommended fix is to apply the vendor-supported patched version or the mitigation steps below, then retest the public website with Fixnx.
Who is affected
Affected versions
- *-2.10.4
Fixed versions
- 2.10.5
How to fix it
CVE-2026-12997 is a information disclosure issue in Gravity Forms. Update from *-2.10.4 to 2.10.5 or newer. Keep the fix simple: upgrade first, then test the normal user flow.
- Find every place where Gravity Forms is installed or used.
- Upgrade Gravity Forms to 2.10.5 or a newer fixed release from the vendor.
- If you cannot upgrade right away, limit access to the affected feature until the update is done.
- Restart or redeploy the service if the product needs it after the update.
Scan now. Google sign-in is only needed to unlock fix guidance.
Verify the fix
- Confirm the installed version is 2.10.5 or newer.
- Run a normal login, admin, and user flow to make sure the site still works.
- Check logs for new errors after the update.
Related categories
Trusted references
FAQ
What is affected by CVE-2026-12997?
Gravity Forms versions listed as affected should be reviewed: *-2.10.4.
What should I fix first?
Start with internet-facing sites, admin panels, login flows, plugins, themes, modules, packages, and systems that process user-controlled input or sensitive data.
How do I confirm the fix worked?
Apply the patched version or mitigation, clear caches where relevant, retest the affected workflow, and run a new Fixnx scan to verify public website exposure signals.
How are Fixnx security risk categories chosen?
Fixnx keeps one canonical risk page and assigns only broad, relevant categories such as ecosystem, technology area, or vulnerability class.
