Description
The Abandoned Contact Form 7 plugin for WordPress is vulnerable to unauthorized arbitrary post deletion in versions up to, and including, 2.2. This is due to a missing capability check and missing nonce validation in the action__remove_abandoned() function, which is registered to both the wp_ajax_remove_abandoned and wp_ajax_nopriv_remove_abandoned hooks. The handler takes a user-supplied recover_id parameter from $_POST and passes it directly to wp_delete_post() with the force-delete flag set to true, without verifying that the ID belongs to the plugin's own cf7af_data post type. This makes it possible for unauthenticated attackers to permanently delete arbitrary posts, pages, or other content on the affected site by sending a single admin-ajax.
Published: 2026-06-16
Score: 5.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Abandoned Contact Form 7 plugin for WordPress allows an attacker to delete any post, page, or content on the site by exploiting a missing capability check and nonce validation. This flaw, identified by CWE-862, permits unauthorized users to send a crafted request to the wp_ajax_remove_abandoned action, which then calls wp_delete_post() directly with the force-delete flag. The result is permanent loss of data and potential disruption of site availability.

Affected Systems

WordPress installations that have the Abandoned Contact Form 7 plugin installed, version 2.2 or earlier. Any site using this plugin in those versions is exposed to this deletion vulnerability.

Risk and Exploitability

The vulnerability has a CVSS score of 5.3, indicating moderate severity. The EPSS score of less than 1% suggests a very low likelihood of exploitation at present. The vulnerability is not listed in the CISA KEV catalog. Given that the malicious action can be performed via a simple admin‑ajax request without authentication, an attacker could target any such site by sending a single crafted HTTP POST. However, the low EPSS score and lack of active exploitation data imply that the overall risk is moderate, although the impact on data integrity and availability is significant.

Generated by OpenCVE AI on June 16, 2026 at 21:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Abandoned Contact Form 7 to the latest version, which removes the flawed remove_abandoned handler.
  • If an upgrade is not immediately possible, disable the wp_ajax_remove_abandoned and wp_ajax_nopriv_remove_abandoned hooks by patching the plugin or adding a custom filter that nullifies the action for unauthenticated users.
  • Ensure that future plugin updates include proper capability checks for all actions that modify content, following the remedy for CWE‑862: maintain strict role and capability validations before executing destructive operations.

Generated by OpenCVE AI on June 16, 2026 at 21:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 16 Jun 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 16 Jun 2026 06:30:00 +0000

Type Values Removed Values Added
Description The Abandoned Contact Form 7 plugin for WordPress is vulnerable to unauthorized arbitrary post deletion in versions up to, and including, 2.2. This is due to a missing capability check and missing nonce validation in the action__remove_abandoned() function, which is registered to both the wp_ajax_remove_abandoned and wp_ajax_nopriv_remove_abandoned hooks. The handler takes a user-supplied recover_id parameter from $_POST and passes it directly to wp_delete_post() with the force-delete flag set to true, without verifying that the ID belongs to the plugin's own cf7af_data post type. This makes it possible for unauthenticated attackers to permanently delete arbitrary posts, pages, or other content on the affected site by sending a single admin-ajax.
Title Abandoned Contact Form 7 <= 2.2 - Missing Authorization to Unauthenticated Arbitrary Post Deletion via 'recover_id' Parameter
Weaknesses CWE-862
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-06-16T12:37:54.599Z

Reserved: 2026-05-21T15:01:06.791Z

Link: CVE-2026-9187

cve-icon Vulnrichment

Updated: 2026-06-16T12:37:47.656Z

cve-icon NVD

Status : Deferred

Published: 2026-06-16T06:16:58.817

Modified: 2026-06-16T15:22:49.577

Link: CVE-2026-9187

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-16T21:30:16Z

Weaknesses