{"schemaVersion":3,"id":"CVE-2026-12997","aliases":[],"status":"published","duplicateOf":null,"title":"Gravity Forms <= 2.10.4 - Unauthenticated Arbitrary File Read via 'gform_uploaded_files' Parameter","description":"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.","dates":{"published":"2026-07-15T18:34:13.250Z","modified":"2026-07-15T19:06:20.091Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.5,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"wordfence","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00928,"percentile":0.60157,"severity":"low","asOf":"2026-10-22T00:00:00.000Z","change":{"pp":0,"baselineDate":"2026-09-22T00:00:00.000Z","baselineScore":0.00928},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00928,"percentile":0.60157}],"last30":[{"date":"2026-09-22T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00928,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00928,"percentile":0.60157}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')","description":"The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/22.html"}],"affected":[{"vendor":"gravity forms","product":"gravity forms","name":"Gravity Forms","label":"gravity forms","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 2.10.4","noFixRecorded":false,"fixedIn":null}],"versionsText":"≤ 2.10.4","eol":null,"hubHref":"/vendor/gravity_forms/gravity_forms"},{"vendor":"wordpress","product":"gravityforms","name":"Gravity Forms","label":"gravityforms","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 2.10.4 (fixed in 2.10.5)","noFixRecorded":false,"fixedIn":"2.10.5"}],"versionsText":"≤ 2.10.4 (fixed in 2.10.5)","eol":null,"hubHref":null}],"affectedCount":2,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/5c03c07f-8f41-47c2-bc95-d92a623f5f7c?source=cve","label":"www.wordfence.com/threat-intel/vulnerabilities/id/5c03c07f-8f41-47c2-bc95-d92a623f5f7c?source=cve","hostname":"www.wordfence.com","tags":[]},{"url":"https://www.gravityforms.com/","label":"www.gravityforms.com","hostname":"www.gravityforms.com","tags":[]},{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/5c03c07f-8f41-47c2-bc95-d92a623f5f7c","label":"www.wordfence.com/threat-intel/vulnerabilities/id/5c03c07f-8f41-47c2-bc95-d92a623f5f7c","hostname":"www.wordfence.com","tags":["Vendor Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-07-15T18:34:13.250Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-07-15T19:06:20.091Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":30,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T18:44:47.849Z","stale":false,"partial":false}}