Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit poisoned form entry with traversal path
-
ExploitEntry appears as spam in moderation queue
-
ExecutionAdmin permanently deletes entry (UI:R)
-
Impactweforms_delete_entry_attachments removes attacker-chosen media file
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires two distinct conditions. First, the attacker submits a weForms form entry containing an image/file-upload field whose stored attachment path is manipulated with directory-traversal sequences (the flaw is in weforms_delete_entry_attachments due to insufficient file-path validation, reachable via the class-field-image and class-ajax entry-deletion code paths). Second, and critically limiting, an administrator must PERMANENTLY delete that specific entry - not merely trash it - which is the action that triggers the unsafe deletion. Realistic limiting factors: the attack is fully dependent on authenticated admin interaction (UI:R), so it cannot be automated end-to-end by the attacker; impact is confined to deleting media files the web server process can unlink (no read, no execution, no exfiltration); and the plugin must be installed and accepting entries with file attachments. Mitigation also requires only upgrading to the fixed branch (1.6.29). |
| Impact | This is a genuine but moderate-priority issue, and the CVSS 5.4 (Medium) rating is well-calibrated rather than inflated. The provided vector CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L is internally consistent with the description: PR:N reflects that an unauthenticated attacker can submit the malicious form entry, while UI:R correctly captures the hard dependency on an administrator performing a permanent-delete action. Impact is deliberately limited (C:N, I:L, A:L) - this is arbitrary media-file deletion, not code execution, data theft, or site takeover. No EPSS score was supplied, the CVE is not listed in CISA KEV, and no public exploit code is referenced, so exploitation status is 'no public exploit identified at time of analysis.' The only intelligence source is Wordfence (the reporter), and a fix branch (1.6.29) exists on GitHub, indicating a patch is available. The practical risk ceiling is low-to-moderate: an attacker cannot act alone - success depends on social-engineering an admin into permanently deleting a poisoned entry - which is why this is a targeted/opportunistic nuisance rather than a wormable or mass-exploitable flaw. No conflicting signals were found between the CVSS vector and the description; both agree on remote submission plus required admin interaction. |
| Exploit ScenarioDerived | An unauthenticated attacker submits a weForms contact-form entry crafted so its attachment file path contains traversal sequences pointing at an unrelated media file on the server. The submission is designed to look like spam, prompting an administrator to permanently delete the entry during routine moderation; that deletion invokes weforms_delete_entry_attachments, which fails to validate the path and removes the attacker-chosen media file instead. No public proof-of-concept is referenced in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 17, 2026
Arbitrary media file deletion in the weForms WordPress plugin (all versions through 1.6.28) lets an unauthenticated attacker poison a form entry's image-upload attachment path with directory-traversal sequences and then persuade an administrator to permanently delete that entry, at which point the plugin unlinks whatever file the traversed path resolves to. The CVSS 5.4 (Medium) score is well-calibrated: the attacker never gains read, execution, or exfiltration capability, impact is limited to files the web server process can unlink, and the mandatory administrator interaction (UI:R) makes end-to-end automation impossible. No public exploit code and no CISA KEV entry were identified at time of analysis; the practical risk concentrates on sites that accept file-upload entries and routinely hard-delete spam-looking submissions.
RemediationAI
Upgrade the plugin to the fixed 1.6.29 branch (https://github.com/BoldGrid/weforms/tree/1.6.29) - vendor fix available as 1.6.29; this is the only complete remediation, since the flaw lives in the deletion routine itself. If immediate upgrading is not possible, compensate in layers: restrict the ability to permanently delete form entries to a small set of trusted administrators and instruct them never to hard-delete unsolicited or spam-looking submissions without first inspecting the uploaded attachment path (this removes the UI:R trigger, at the cost of a slower moderation workflow); temporarily remove image/file-upload fields from public-facing forms or gate those forms behind authentication so untrusted users cannot plant a poisoned attachment path (this reduces attack surface but breaks legitimate upload use cases); and tighten filesystem permissions so the web-server user owns only the plugin's own uploads directory, limiting what an unlink can reach (side effect: WordPress core updates and other plugins that write outside uploads may require manual permission adjustments). Review existing entries with suspicious ../ sequences in attachment metadata before bulk purging, and consult the vendor advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/cb7478fa-418d-43ce-8db7-b7ede06574df?source=cve for updates.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-22 (improper limitation of a pathname to a restricted directory). weForms stores the attachment path for image/file-upload form fields in entry metadata, but the deletion routine weforms_delete_entry_attachments (includes/functions.php, around line 362) passes that stored value to a filesystem unlink operation without canonicalizing it or confirming the resolved path stays inside the plugin's uploads directory. The value originates in the image field handler (includes/fields/class-field-image.php, line 138) and is carried through the entry-deletion AJAX code paths in includes/class-ajax.php (roughly lines 627, 711, and 1056). Because traversal sequences such as ../ survive into the delete call, a poisoned entry can point the unlink at an arbitrary media file elsewhere in the WordPress content tree. The function is triggered only by a permanent (hard) deletion of the entry - trashing it is not sufficient - and the deletion executes with the privileges of the PHP/web-server user, which bounds the damage to files that account can remove. There is no path for reading file contents, writing files, or executing code, which is why confidentiality is scored None and integrity/availability are only Low.
Know when Wordpress Plugin gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L
Unauthenticated remote submission gives PR:N/AV:N/AC:L, but the deletion fires only on a required admin action (UI:R); impact is limited file deletion so C:N, I:L, A:L.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The weForms - Easy Drag & Drop Contact Form Builder For WordPress plugin for WordPress is vulnerable to limited media file deletion due to insufficient file path validation in the weforms_delete_entry_attachments function in all versions up to, and including, 1.6.28 This makes it possible for unauthenticated attackers to delete arbitrary media files on the server. This requires an administrator to permanently delete the poisoned form entry, a routine moderation action for spam-looking submissions that an attacker can prompt through social engineering.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
More in Wordpress Plugin
View allThe Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in
Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u
EUVD-2026-103278
GHSA-w3hx-mw4h-q7x8
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB