Cyber Resilience

CVE-2025-2040

Iocoder Ruoyi-Vue-Pro 2.4.1

Public PoC
Published
06 March 2025
Modified
07 July 2025
CVSS Score v4 5.3
Click a component to see what it means
Raw vectorCVSS: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:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.0047 39th percentile
Risk Priority 33 floored blend · peak EPSS

Summary

CVE-2025-2040 is a medium-severity Incomplete Filtering of Special Elements (CWE-791) vulnerability in Iocoder Ruoyi-Vue-Pro. Its CVSS base score is 5.3 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Template Injection (T1221); ranked at the 39th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

EU & UK References

Vulnerability Data

A vulnerability classified as critical was found in zhijiantianya ruoyi-vue-pro 2.4.1. Affected by this vulnerability is an unknown functionality of the file /admin-api/bpm/model/deploy. The manipulation leads to improper neutralization of special elements used in a template engine. The attack can…

more

be launched remotely. The exploit has been disclosed to the public and may be used.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1221 Template Injection Stealth
Adversaries may create or modify references in user document templates to conceal malicious code or force authentication attempts.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2025-2708Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-2744Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-2742Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-2743Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-2707Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-10276Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-10278Same product: Iocoder Ruoyi-Vue-Pro
CVE-2025-10988Same product: Iocoder Ruoyi-Vue-Pro
CVE-2026-3725Shared CWE-1336, CWE-791
CVE-2026-9498Shared CWE-1336, CWE-791

Affected Assets

iocoder
ruoyi-vue-pro
2.4.1

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V1.3.2
  • V1.3.7
  • V1.3.10

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and static analysis can discover missing neutralization of template directives.

Input validation directly requires complete filtering of special elements on received data before further processing or forwarding.

Security engineering principles require use of safe templating APIs and proper escaping of external input.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly require complete input filtering and sanitization to prevent this weakness.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development and acceptance can detect incomplete filtering but does not itself implement the filtering.

prevents

Secure development life cycle processes include validation activities that reduce the likelihood of CWE-791 but do not specify the control itself.

prevents

Application security requirements explicitly call for input validation and sanitization that directly mitigates incomplete special-element filtering.

prevents

Secure system architecture and engineering principles require defensive design patterns that prevent unfiltered data from reaching downstream components.

prevents

Secure coding standards mandate complete filtering and escaping of special elements, directly eliminating CWE-791.

References