CVE-2026-3640
WordPress vulnerability analysis and mitigation

Overview

CVE-2026-3640 is a Missing Authentication vulnerability in the STRABL – A Checkout Solution plugin for WordPress, affecting all versions up to and including 4.5. The plugin exposes a REST API webhook endpoint at /wp-json/strabl/webhook/order with a permission_callback of __return_true, allowing completely unauthenticated access. It was published on June 19, 2026, with a patch made available the same day. The vulnerability carries a CVSS v3.1 base score of 5.3 (Medium) (GitHub Advisory).

Technical details

The root cause is classified as CWE-862 (Missing Authorization). The plugin's OrderWebhookController.php registers the /wp-json/strabl/webhook/order REST API endpoint with WordPress's __return_true as its permission callback, meaning no authentication or authorization is enforced on any incoming request. No shared secret, HMAC signature verification, or token-based authentication is implemented at any point in the request handling logic. Relevant vulnerable code paths are documented in OrderWebhookController.php at lines 60, 64, 88, 199, and 550, as well as CustomerRepository.php at line 17 (GitHub Advisory).

Impact

An unauthenticated remote attacker can abuse the unprotected webhook endpoint to create fraudulent WooCommerce orders and mark them as paid (via paymentStatus=paid), manipulate existing order statuses using an externalOrderId, create new WordPress user accounts with the customer role, issue refunds on legitimate orders, cancel existing orders, and apply chargeback fees — all without making any legitimate payment or possessing valid credentials. The primary impact is on integrity (financial fraud, order manipulation, unauthorized account creation), with no direct confidentiality or availability impact (GitHub Advisory).

Exploitation steps

  1. Reconnaissance: Identify WordPress sites running the STRABL – A Checkout Solution plugin (versions ≤ 4.5) using tools like WPScan, Shodan, or by checking /wp-content/plugins/strabl-a-checkout-solution/ for plugin presence.
  2. Confirm endpoint availability: Send a GET or POST request to https://[target]/wp-json/strabl/webhook/order to confirm the endpoint is accessible without authentication (HTTP 200 response indicates vulnerability).
  3. Create fraudulent paid order: Send a crafted POST request to the endpoint with a JSON body including paymentStatus=paid and relevant order details to create a WooCommerce order marked as completed without payment.
  4. Manipulate existing orders: Supply a known or guessed externalOrderId in the POST body to alter the status of an existing order (e.g., trigger a refund or cancellation).
  5. Create user accounts: Craft a request that triggers the customer account creation logic in CustomerRepository.php, registering a new WordPress user with the customer role for persistent access or further abuse (GitHub Advisory).

Indicators of compromise

  • Network: Unexpected POST requests to /wp-json/strabl/webhook/order from unknown or external IP addresses not associated with the legitimate STRABL payment provider.
  • Logs: WordPress/web server access logs showing repeated or anomalous requests to the /wp-json/strabl/webhook/order endpoint, especially with paymentStatus=paid or externalOrderId parameters from untrusted sources.
  • WooCommerce: Sudden appearance of orders marked as "completed" or "paid" with no corresponding legitimate payment transaction; unexpected refunds or cancellations on existing orders; chargeback fees applied without a corresponding payment dispute.
  • User Accounts: New WordPress user accounts with the customer role created at unusual times or in bulk, not corresponding to legitimate customer registrations (GitHub Advisory).

Mitigation and workarounds

Site administrators should update the STRABL plugin to a version newer than 4.5 that implements proper authentication for the webhook endpoint; a patch was made available on June 19, 2026 (changeset 3558301 in the WordPress plugin repository). As an interim workaround, implement a Web Application Firewall (WAF) rule to restrict access to /wp-json/strabl/webhook/order to known, legitimate STRABL payment provider IP addresses only. Additionally, administrators should audit recent WooCommerce orders, refunds, and newly created user accounts to identify any fraudulent activity that may have occurred prior to patching (GitHub Advisory).

Community reactions

Wordfence included CVE-2026-3640 in its weekly WordPress vulnerability report for the period of June 15–21, 2026, flagging it as a notable missing authentication issue in the STRABL plugin. No significant broader media coverage or notable researcher commentary beyond standard vulnerability tracking has been identified for this CVE.

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-13147CRITICAL9.1
  • kirki
NoYesJul 20, 2026
CVE-2026-9833HIGH7.1
  • tag-groups
NoYesJul 20, 2026
CVE-2026-13432MEDIUM5.4
  • image-sizes
NoYesJul 20, 2026
CVE-2026-13156MEDIUM5.4
  • mailersend-official-smtp-integration
NoYesJul 20, 2026
CVE-2026-8825MEDIUM4.9
  • elementor
NoYesJul 20, 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