CVE-2026-9145: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in crmperks Database for Contact Form 7, WPforms, Elementor forms
The Database for Contact Form 7, WPforms, Elementor forms plugin for WordPress is vulnerable to Arbitrary File Copy via the create_entry_el() function in versions up to, and including, 1.5.1. The function reads raw_value from Elementor Pro's Form_Record object for upload-type fields and passes it directly to PHP's copy() without validating that the value corresponds to a legitimately uploaded file — when no file is present in $_FILES, raw_value reflects the attacker-controlled POST string. copy() accepts both local filesystem paths and URL sources, so the attacker can target any file readable by the PHP process or supply an attacker-controlled remote URL. Elementor Pro is a prerequisite for triggering the code path (it owns the elementor_pro/forms/new_record hook and populates the Form_Record object), but the bug itself is entirely in Contact Form Entries' handler. This could allow unauthenticated attackers to disclose arbitrary files on the affected site's server. The file is copied to a directory unknown to the attacker; the hashed directory name provides defense-in-depth but is generated from non-cryptographic sources (uniqid() + rand()) and should not be relied upon as the primary mitigation.
AI Analysis
Technical Summary
The vulnerability exists in the create_entry_el() function of the Database for Contact Form 7, WPforms, Elementor forms plugin for WordPress (up to and including version 1.5.1). This function reads the raw_value from Elementor Pro's Form_Record object for upload-type fields and passes it directly to PHP's copy() function without validating that the file was legitimately uploaded. When no file is present in $_FILES, raw_value can be attacker-controlled via POST data. Because PHP's copy() accepts both local filesystem paths and URLs, an attacker can copy arbitrary files readable by the PHP process or supply a remote URL. Elementor Pro is required to trigger this code path, but the vulnerability lies entirely in the Contact Form Entries handler. The copied file is placed in a directory with a hashed name generated from uniqid() and rand(), which is not cryptographically secure and should not be relied upon as primary mitigation.
Potential Impact
An unauthenticated attacker can exploit this vulnerability to copy arbitrary files from the server or remote URLs to a directory on the affected site. This can lead to disclosure of sensitive files readable by the PHP process. The impact is confidentiality loss (high), with no direct integrity or availability impact reported. The vulnerability requires Elementor Pro to be installed but does not require authentication.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, restrict access to the affected plugin and consider disabling it if possible. Monitor vendor channels for updates and apply official fixes once released. Do not rely on the hashed directory name as a security control.
CVE-2026-9145: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in crmperks Database for Contact Form 7, WPforms, Elementor forms
Description
The Database for Contact Form 7, WPforms, Elementor forms plugin for WordPress is vulnerable to Arbitrary File Copy via the create_entry_el() function in versions up to, and including, 1.5.1. The function reads raw_value from Elementor Pro's Form_Record object for upload-type fields and passes it directly to PHP's copy() without validating that the value corresponds to a legitimately uploaded file — when no file is present in $_FILES, raw_value reflects the attacker-controlled POST string. copy() accepts both local filesystem paths and URL sources, so the attacker can target any file readable by the PHP process or supply an attacker-controlled remote URL. Elementor Pro is a prerequisite for triggering the code path (it owns the elementor_pro/forms/new_record hook and populates the Form_Record object), but the bug itself is entirely in Contact Form Entries' handler. This could allow unauthenticated attackers to disclose arbitrary files on the affected site's server. The file is copied to a directory unknown to the attacker; the hashed directory name provides defense-in-depth but is generated from non-cryptographic sources (uniqid() + rand()) and should not be relied upon as the primary mitigation.
CVSS v3.1
Score 6.5medium
Affected software
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability exists in the create_entry_el() function of the Database for Contact Form 7, WPforms, Elementor forms plugin for WordPress (up to and including version 1.5.1). This function reads the raw_value from Elementor Pro's Form_Record object for upload-type fields and passes it directly to PHP's copy() function without validating that the file was legitimately uploaded. When no file is present in $_FILES, raw_value can be attacker-controlled via POST data. Because PHP's copy() accepts both local filesystem paths and URLs, an attacker can copy arbitrary files readable by the PHP process or supply a remote URL. Elementor Pro is required to trigger this code path, but the vulnerability lies entirely in the Contact Form Entries handler. The copied file is placed in a directory with a hashed name generated from uniqid() and rand(), which is not cryptographically secure and should not be relied upon as primary mitigation.
Potential Impact
An unauthenticated attacker can exploit this vulnerability to copy arbitrary files from the server or remote URLs to a directory on the affected site. This can lead to disclosure of sensitive files readable by the PHP process. The impact is confidentiality loss (high), with no direct integrity or availability impact reported. The vulnerability requires Elementor Pro to be installed but does not require authentication.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, restrict access to the affected plugin and consider disabling it if possible. Monitor vendor channels for updates and apply official fixes once released. Do not rely on the hashed directory name as a security control.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-05-20T20:03:22.747Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a4634ad27e9c79719a6e419
Added to database: 07/02/2026, 09:51:41 UTC
Last enriched: 07/02/2026, 10:06:56 UTC
Last updated: 08/16/2026, 00:41:16 UTC
Views: 84
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.