Skip to main content
Vulnerability Database/CVE-2026-18234

CVE-2026-18234: MStore API WordPress Auth Bypass Flaw

CVE-2026-18234 is an authentication bypass vulnerability in MStore API WordPress plugin allowing authenticated users to mark orders as paid without payment. This post explains its impact, affected versions, and mitigation steps.

Published:

CVE-2026-18234 Overview

CVE-2026-18234 affects the MStore API WordPress plugin in versions before 4.21.1. The plugin's wallet payment handler fails to verify that the order being paid belongs to the authenticated requester. It also does not deduct the wallet balance for most payment methods. Any authenticated user, including low-privilege Subscribers, can mark arbitrary orders as paid without any funds being taken. The flaw is categorized under [CWE-862] Missing Authorization and stems from a broken access control check in the payment workflow.

Critical Impact

Authenticated users with Subscriber-level access can mark arbitrary WooCommerce orders as paid without transferring funds, resulting in financial loss to store operators.

Affected Products

  • MStore API WordPress plugin versions prior to 4.21.1
  • WordPress sites running WooCommerce integrated with MStore API
  • Mobile commerce backends built on the MStore API endpoints

Discovery Timeline

  • 2026-08-29 - CVE-2026-18234 published to NVD
  • 2026-08-31 - Last updated in NVD database

Technical Details for CVE-2026-18234

Vulnerability Analysis

The MStore API plugin exposes a wallet payment handler used to settle WooCommerce orders through the mobile storefront. The handler accepts an order identifier from the authenticated caller and marks the referenced order as paid. Two controls are missing from this flow. First, the endpoint does not check that the current user owns the order identified in the request. Second, the handler does not deduct the wallet balance for most supported payment methods. These omissions allow any logged-in account to complete other customers' orders at no cost.

Root Cause

The root cause is missing authorization on a state-changing API action [CWE-862]. The handler trusts the order ID parameter without correlating it to the requesting user's account. Subscriber-level accounts, which WordPress permits self-registration for on many storefronts, retain enough privilege to reach the endpoint.

Attack Vector

An attacker registers or logs into a Subscriber account on the target WordPress site. The attacker enumerates or guesses WooCommerce order IDs and submits them to the vulnerable wallet payment endpoint. The plugin marks each targeted order as paid and does not withdraw any balance from the attacker's wallet. Store operators then fulfill orders that were never funded.

The vulnerability manifests in the wallet payment handler's order-processing logic. See the WPScan Vulnerability Report for further technical detail.

Detect Identity Attacks the Moment Authentication Fails

Singularity™ Identity surfaces credential misuse, lateral movement, and privilege escalation in real time, so you can contain the breach before it spreads.

Stop Identity Attacks

Detection Methods for CVE-2026-18234

Indicators of Compromise

  • WooCommerce orders transitioning to a paid status without a corresponding gateway transaction record
  • Wallet payment API requests originating from Subscriber accounts that do not own the referenced order
  • Discrepancies between paid order totals and wallet ledger debits in MStore API logs

Detection Strategies

  • Review WooCommerce order history for orders marked paid via the wallet method without matching wallet balance deductions
  • Correlate user_id on the API request with the customer_id on each order that transitioned to paid status
  • Alert on repeated wallet payment API calls from a single Subscriber account against multiple distinct order IDs

Monitoring Recommendations

  • Enable verbose logging on MStore API endpoints, particularly wallet payment routes
  • Monitor WordPress authentication logs for bursts of new Subscriber registrations followed by API activity
  • Track order status changes in the WooCommerce audit trail and reconcile against payment gateway settlement reports

How to Mitigate CVE-2026-18234

Immediate Actions Required

  • Update the MStore API plugin to version 4.21.1 or later on all WordPress installations
  • Audit recent WooCommerce orders for unauthorized paid transitions and reverse fulfillment where appropriate
  • Restrict new user registration or require email verification if Subscriber self-registration is not required

Patch Information

The vendor addressed the issue in MStore API version 4.21.1. The patched release adds ownership verification against the requesting user and corrects wallet balance deduction across supported payment methods. Refer to the WPScan Vulnerability Report for advisory details.

Workarounds

  • Disable the wallet payment method in WooCommerce settings until the plugin is updated
  • Block access to the MStore API wallet payment endpoints at the web application firewall for unauthenticated and Subscriber-level traffic
  • Temporarily disable new customer self-registration to reduce the pool of accounts able to reach the endpoint
bash
# Example WordPress CLI update command
wp plugin update mstore-api --version=4.21.1

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.