Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged user
-
DeliveryAccess WeChat MP material upload
-
ExploitSubmit multipart filename with ../ traversal
-
ExecutiongetOriginalFilename returns unsanitized path
-
PersistFile written outside intended directory
-
ImpactOverwrite/plant file for further impact
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated account (PR:L) on a ruoyi-vue-pro/yudao instance with access to the yudao-module-mp WeChat MP material upload feature; the attacker must be able to submit a multipart file whose original filename carries '../' traversal sequences that reach getOriginalFilename() in MpMaterialServiceImpl. Limiting factors: valid credentials and access to the MP material-upload component are needed (not unauthenticated), the WeChat MP module must be deployed/enabled, and realistic impact depends on filesystem write permissions of the application service account and whether traversal reaches a sensitive/web-served directory. No user interaction beyond the attacker's own request is required, and no vendor patch is currently available. |
| Impact | This is a genuinely low-priority issue on raw signals but warrants attention for internet-exposed Chinese-market deployments. The only CVSS provided is a VulDB CVSS 4.0 base of 2.1 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L) with E:P (proof-of-concept exploit maturity), indicating remote but authenticated (PR:L) exploitation with limited impact across confidentiality/integrity/availability. No EPSS score and no CISA KEV entry are provided, so there is no evidence of active or widespread exploitation - only a publicly disclosed PoC. VulDB's 2.1 rating is conservative for a path-traversal flaw in the getOriginalFilename() handling of an upload path: unsanitized '../' sequences in a multipart filename typically enable a file WRITE to an attacker-chosen location, which can be materially worse (potential webshell/overwrite → integrity or code execution) than the VC:L/VI:L/VA:L rating implies; this is a notable disagreement worth verifying. Countervailing limiter: exploitation requires an authenticated account (PR:L) and access to the WeChat MP material-upload feature, and no vendor fix exists because the vendor did not respond to disclosure. Net: low nominal severity, but the traversal-to-file-write nature plus a public PoC and absent patch means exposed instances should be treated above the 2.1 headline. |
| Exploit ScenarioDerived | An authenticated low-privileged user of a ruoyi-vue-pro/yudao instance uploads a WeChat MP material file whose original filename contains directory-traversal sequences (e.g. '../../'), so getOriginalFilename() returns an attacker-controlled path and the file is written outside the intended upload directory. A public PoC has been disclosed, lowering the barrier to reuse; depending on writable paths, this can enable overwriting application files or planting a webshell for follow-on code execution. Exploitation is remote (AV:N) with low complexity but requires a valid account (PR:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 24, 2026
Authenticated path traversal in the ruoyi-vue-pro (Yudao) WeChat MP material-upload component lets a low-privileged user write files outside the intended upload directory by embedding '../' sequences in a multipart filename passed to getOriginalFilename() in MpMaterialServiceImpl. Versions up to and including the 2026.08 release are affected whenever the yudao-module-mp module is deployed; the CVSS 4.0 base score is 2.1 (our independent assessment rates it CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N, i.e. remote but requiring a valid account, with limited integrity impact only). Publicly available exploit code exists per the disclosing researcher, and the vendor was contacted but did not respond, so no vendor-released patch is identified at time of analysis.
RemediationAI
No vendor-released patch is identified at time of analysis, and the vendor did not respond to the disclosure, so remediation must be compensating-control driven. The most direct fix is a code-level one: in MpMaterialServiceImpl.getOriginalFilename() (or immediately before the path is used), strip any directory components and reject filenames containing '../', '..\\', absolute paths, null bytes, or URL-encoded variants, ideally by applying something like FilenameUtils.getName() plus a strict extension allowlist and by resolving the final path with Path.normalize()/toRealPath() and verifying it stays inside the configured upload root - this changes behavior only for malformed filenames and is safe to deploy. If code changes are not possible, remove or disable the WeChat MP material-upload endpoints (or restrict them to a trusted administrative role) until a fix is available; the trade-off is loss of self-service material management for ordinary MP operators. Additionally, run the application service account with least-privilege filesystem permissions, keep the upload directory outside the web root and off any path that can reach configuration, JSP/template, or startup-hook locations, and deploy WAF or reverse-proxy rules that reject multipart filenames containing traversal sequences - each of these reduces exploitability but none fully substitutes for the sanitization fix, and WAF filename filtering carries a small risk of false positives on legitimate unicode or long filenames. Monitor https://vuldb.com/vuln/409331 for an upstream commit or tagged release before assuming a permanent fix exists.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a classic CWE-22 path traversal in the Java/Spring-based ruoyi-vue-pro (Yudao) application framework, specifically in yudao-module-mp/src/main/java/cn/iocoder/yudao/module/mp/service/material/MpMaterialServiceImpl.java in the function getOriginalFilename() of the File Upload component. The WeChat MP (official-account) module handles permanent material uploads, and instead of canonicalizing the client-controlled multipart filename before using it to build a destination path, the code trusts the string returned from getOriginalFilename(), so sequences such as '../' or encoded equivalents can escape the intended directory when the file is persisted or referenced. The relevant weakness class is path traversal (CWE-22), a relative-path injection into filesystem operations rather than a deserialization, injection, or memory-safety issue. Because the traversal depends on the write permissions of the service account and on whether the resolved path lands in a web-served or otherwise sensitive directory, real-world impact is bounded and largely integrity-oriented; no CPE entries were supplied with the advisory, and the affected artifact set is the ruoyi-vue-pro repositories mirroring YunaiV/zhijiantianya up to the 2026.08 tag with the MP module enabled.
Know when Java gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
Remote and low-complexity but needs an authenticated account (PR:L); primary impact is a limited file write (I:L), with C/A not clearly affected; I:H arguable if traversal enables webshell/overwrite.
Primary rating from Vendor (vuldb).
CVSS VectorVendor: vuldb
DescriptionCVE.org
A vulnerability was determined in YunaiV/zhijiantianya ruoyi-vue-pro up to 2026.08. This impacts the function getOriginalFilename of the file yudao-module-mp/src/main/java/cn/iocoder/yudao/module/mp/service/material/MpMaterialServiceImpl.java of the component File Upload. Executing a manipulation can lead to path traversal. It is possible to launch the attack remotely. The exploit has been publicly disclosed and may be utilized. The vendor was contacted early about this disclosure but did not respond in any way.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m
Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti
Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent
Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow
Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during
EUVD-2026-86405
GHSA-2p8r-gv6f-rr5h
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB