JeecgBoot CVE-2025-15126
LOWSeverity by source
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P/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
Requires authenticated low-privilege session and high complexity; confidentiality-only impact via user enumeration; no integrity or availability consequence.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
2DescriptionCVE.org
A weakness has been identified in JeecgBoot up to 3.9.0. Affected by this vulnerability is the function getPositionUserList of the file /sys/position/getPositionUserList. This manipulation of the argument positionId causes improper authorization. The attack may be initiated remotely. The complexity of an attack is rather high. The exploitation appears to be difficult. The exploit has been made available to the public and could be exploited. The vendor was contacted early about this disclosure but did not respond in any way.
AnalysisAI
Improper authorization in JeecgBoot's position management API allows authenticated low-privilege users to enumerate personnel assigned to arbitrary organizational positions by manipulating the positionId parameter at the /sys/position/getPositionUserList endpoint. All versions up to and including 3.9.0 are confirmed affected per NVD CPE data. A publicly available proof-of-concept exploit exists on GitHub, though the CVSS 4.0 score of 1.3 and EPSS of 0.04% (11th percentile) indicate this is a limited-impact, difficult-to-exploit information disclosure - no active exploitation has been confirmed.
Technical ContextAI
JeecgBoot (CPE: cpe:2.3:a:jeecg:jeecg_boot:*:*:*:*:*:*:*:*) is a Java-based low-code enterprise rapid development platform widely used in Chinese enterprise and government deployments. The affected component is the position management module, specifically the REST endpoint /sys/position/getPositionUserList, which retrieves a list of users associated with a given organizational position. The root cause is classified as CWE-266 (Incorrect Privilege Assignment): the server-side function does not adequately validate whether the authenticated caller holds the necessary privileges to view the user list for the requested positionId value. This is functionally an Insecure Direct Object Reference (IDOR) pattern, where a sequentially guessable or enumerable identifier is accepted without proper ownership or authorization checks, allowing lateral access to organizational hierarchy data outside the caller's authorized scope.
RemediationAI
No vendor-released patch has been identified at time of analysis - the vendor did not respond to the coordinated disclosure. As a compensating control, operators should implement server-side authorization enforcement at the application or API gateway layer to validate that the requesting user's session principal is permitted to query the specific positionId value before returning results. Restricting access to the /sys/position/getPositionUserList endpoint to roles that legitimately require it (e.g., HR administrators) via role-based access control configuration reduces the exposed attack surface. Network-level controls restricting access to the JeecgBoot management interface to trusted internal networks will limit the network-accessible attack vector. Organizations should monitor VulDB entry 338504 and the official JeecgBoot repository for a future patch release. The PoC is publicly documented at https://github.com/Hwwg/cve/issues/39 and https://vuldb.com/?id.338504.
More in Jeecg Boot
View allJeecg-boot v3.4.3 was discovered to contain a SQL injection vulnerability via the component updateNullByEmptyString. Rat
Jeecg-boot v3.4.3 was discovered to contain a SQL injection vulnerability via the component /sys/duplicate/check. Rated
JeecgBoot v3.7.1 was discovered to contain a SQL injection vulnerability via the component /onlDragDatasetHead/getTotalD
SSTI injection vulnerability in jeecg-boot version 3.5.3, allows remote attackers to execute arbitrary code via crafted
SQL injection vulnerability in jeecg-boot v3.5.3, allows remote attackers to escalate privileges and obtain sensitive in
SQL injection vulnerability in jeecg-boot version 3.5.3, allows remote attackers to escalate privileges and obtain sensi
Jeecg boot up to v3.5.3 was discovered to contain a SQL injection vulnerability via the component /jeecg-boot/jmreport/s
jeecg-boot v3.5.1 was discovered to contain a SQL injection vulnerability via the title parameter at /sys/dict/loadTreeD
jeecg-boot 3.5.0 and 3.5.1 have a SQL injection vulnerability the id parameter of the /jeecg-boot/jmreport/show interfac
A vulnerability classified as critical has been found in jeecg-boot 3.5.0. Rated critical severity (CVSS 9.8), this vuln
Jeecg boot up to v3.5.3 was discovered to contain an arbitrary file read vulnerability via the interface /testConnection
jjeecg-boot V3.5.0 has an unauthorized arbitrary file upload in /jeecg-boot/jmreport/upload interface. Rated medium seve
Same weakness CWE-266 – Incorrect Privilege Assignment
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today