CVE-2025-12355
WordPress vulnerability analysis and mitigation

Overview

CVE-2025-12355 is a Missing Authorization vulnerability in the Payaza plugin for WordPress that allows unauthenticated attackers to modify order statuses via an unprotected AJAX endpoint. It affects all versions of the Payaza plugin up to and including 0.3.8, developed by the vendor "bigmaster." The vulnerability was published on December 5, 2025, and was assigned by Wordfence. It carries a CVSS v3.1 base score of 5.3 (Medium) (Wordfence, Red Hat CVE).

Technical details

The root cause is a missing capability check (CWE-862) on the wp_ajax_nopriv_update_order_status AJAX endpoint registered by the Payaza WordPress plugin. Because the endpoint uses the nopriv hook, it is accessible to unauthenticated users, and no authorization check is performed before processing the request. An attacker can send a crafted HTTP POST request to WordPress's admin-ajax.php with the action parameter set to update_order_status, manipulating WooCommerce or plugin-managed order records without any credentials or user interaction (Wordfence, ENISA EUVD).

Impact

Successful exploitation allows unauthenticated remote attackers to arbitrarily update order statuses on affected WordPress e-commerce sites, potentially marking unpaid orders as completed, canceling legitimate orders, or otherwise manipulating transaction states. This primarily affects data integrity, with no direct confidentiality or availability impact. The business impact can include financial loss, fraudulent order fulfillment, and disruption of payment workflows for merchants using the Payaza payment plugin (Wordfence, ENISA EUVD).

Exploitability

No public proof-of-concept exploit code or evidence of active in-the-wild exploitation has been reported as of the available data. The EPSS score is approximately 0.051% (0.000510), indicating a low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been identified (Wordfence).

Exploitation steps

  1. Reconnaissance: Identify WordPress sites using the Payaza plugin (versions ≤ 0.3.8) via passive scanning, plugin enumeration tools (e.g., WPScan), or by checking publicly accessible readme.txt files at /wp-content/plugins/payaza/readme.txt.
  2. Identify the vulnerable endpoint: Confirm the site exposes the wp_ajax_nopriv_update_order_status action by sending a test POST request to https://target.com/wp-admin/admin-ajax.php with action=update_order_status.
  3. Craft the malicious request: Construct an HTTP POST request to admin-ajax.php with the required parameters to specify a target order ID and the desired new status (e.g., completed, processing).
  4. Submit the request: Send the unauthenticated POST request. Because no capability check is enforced, the plugin processes the request and updates the order status in the database.
  5. Verify impact: Confirm the order status change via the WordPress admin panel or by observing downstream effects such as order fulfillment notifications (Wordfence).

Indicators of compromise

  • Network: Unusual or repeated unauthenticated POST requests to /wp-admin/admin-ajax.php with the parameter action=update_order_status from unexpected IP addresses.
  • Logs: WordPress or web server access logs showing POST requests to admin-ajax.php?action=update_order_status without a valid session cookie or nonce.
  • Application: Unexpected changes to WooCommerce or Payaza-managed order statuses (e.g., orders marked as completed without corresponding payment confirmation); orders transitioning to paid/completed states without matching payment gateway callbacks.

Mitigation and workarounds

Users should update the Payaza plugin to a version beyond 0.3.8 that includes a proper capability check on the update_order_status AJAX endpoint. If no patched version is yet available from the plugin author, site administrators should deactivate and remove the Payaza plugin until a fix is released. As an additional layer of defense, web application firewalls (WAFs) can be configured to block unauthenticated POST requests to admin-ajax.php with the update_order_status action (Wordfence, WordPress Plugin Page).

Additional resources


SourceThis report was generated using AI

Related WordPress vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-16145HIGH7.2
  • gdpr-compliant-recaptcha-for-all-forms
NoYesAug 15, 2026
CVE-2026-18387MEDIUM6.5
  • groundhogg
NoYesAug 15, 2026
CVE-2026-16586MEDIUM6.5
  • contest-gallery
NoYesAug 15, 2026
CVE-2026-17090MEDIUM6.4
  • beaver-builder-lite-version
NoYesAug 15, 2026
CVE-2026-16146MEDIUM4.9
  • gdpr-compliant-recaptcha-for-all-forms
NoYesAug 15, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management