Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privileged account
-
DeliveryAuthenticate to JeecgBoot
-
ExploitCall getUserDetailByUserId with arbitrary userId
-
ExecutionEnumerate userId values
-
ImpactHarvest exposed user PII
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the attacker to already hold a valid authenticated JeecgBoot account (PR:L); any low-privileged user suffices, with no admin rights, user interaction, or special configuration needed, and it works against the standard SysUserController getUserDetailByUserId endpoint. The limiting factor is therefore account access: the flaw is only reachable post-authentication, so deployments that tightly restrict account provisioning or network exposure of the admin/API surface meaningfully reduce real-world risk, while instances allowing self-registration or many low-trust users are far more exposed. |
| Impact | This is a genuine but moderate-priority information-disclosure flaw, not a critical one. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) confirms network-reachable, low-complexity exploitation requiring only a low-privileged authenticated account and no user interaction, with impact limited to confidentiality of the vulnerable system (VC:L, VI:N, VA:N) - consistent with CWE-862 missing authorization enabling horizontal IDOR-style access to other users' PII. Publicly available exploit code exists (a Python POC in the referenced GitHub repo), which raises practical exploitability, but the issue is NOT in CISA KEV and no EPSS score was provided, so there is no evidence of active, widespread exploitation at time of analysis. No SSVC decision data was supplied. The signals are internally consistent (low-privilege, network, low confidentiality impact) and point to a realistic post-authentication data-harvesting risk in multi-tenant or large-user JeecgBoot deployments, rather than a mass-exploitation emergency; its real-world weight depends heavily on how freely low-privileged accounts can be obtained in a given deployment. |
| Exploit ScenarioDerived | An attacker who holds any valid low-privileged JeecgBoot account authenticates and issues requests to the SysUserController getUserDetailByUserId endpoint, iterating arbitrary userId values. Because the handler performs no authorization check, the attacker enumerates and harvests other users' real names, usernames, emails, phone numbers, birthdays, employee numbers, and department/post data. A public Python POC (poc_sys_user_detail_by_user_id.py) automates this enumeration. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 11, 2026
Missing authorization in JeecgBoot through 3.9.5 lets any authenticated user retrieve other users' profile details - real names, usernames, emails, phone numbers, birthdays, employee numbers, department paths and posts - by supplying arbitrary userId values to the SysUserController getUserDetailByUserId handler. Exploitation requires only a low-privileged account (CVSS PR:L, no admin rights, no user interaction, no special configuration), and publicly available exploit code exists, so any deployment that permits self-registration or hosts many low-trust accounts is meaningfully exposed. This is a moderate-priority information-disclosure issue rather than a critical one; there is no confirmation of active exploitation and CVSS 4.0 scores it 5.3 (VC:L only, no integrity or availability impact), with the practical limiting factor being that the flaw is reachable only post-authentication.
RemediationAI
No vendor-released patch was identified at time of analysis; check the VulnCheck advisory (https://www.vulncheck.com/advisories/jeecgboot-through-3.9.5-missing-authorization-via-sys-user-getuserdetailbyuserid) and the upstream JeecgBoot project for a fixed release, and treat all versions through 3.9.5 as vulnerable until a patched build is confirmed. The most direct fix, if you can modify the source, is to add an object-level authorization check in SysUserController#getUserDetailByUserId (lines 1034-1047) so the endpoint returns data only when the caller requests their own record or holds an appropriate administrative permission annotation (e.g. @RequiresPermissions); the trade-off is that tightening this may break legitimate HR/admin lookup screens that relied on the unrestricted behavior. As compensating controls while unpatched: disable or tightly control self-registration and account provisioning in JeecgBoot so only vetted accounts exist; restrict network access to the administrative/API surface behind a gateway, VPN or IP allowlist; and monitor API logs for repeated or sequential userId values against the user-detail endpoint. These measures reduce exposure and provide detection but do not eliminate the underlying missing authorization flaw.
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
JeecgBoot is a Java/Spring Boot low-code development platform whose system module exposes REST endpoints under the jeecg-system-biz component; the vulnerable handler is SysUserController#getUserDetailByUserId (source lines 1034-1047 in the upstream repository), which takes a userId parameter and returns the corresponding user record without verifying that the caller is entitled to view it. The root cause is CWE-862 (Missing Authorization): the endpoint authenticates the request but performs no object-level ownership or role check, so any valid session can enumerate other accounts by varying userId. The affected product is captured by the wildcard CPE cpe:2.3:a:jeecgboot:jeecgboot:*:*:*:*:*:*:*:* (all versions through 3.9.5). The exposed fields include personal and organizational data (real name, username, email, phone, birthday, employee number, department path, post), making the issue a classic horizontal privilege-escalation / IDOR-style disclosure rather than an authentication bypass, despite the 'Authentication Bypass' tag assigned by the reporting feed.
Know when Jeecgboot 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:N/VA:N/SC:N/SI:N/SA:N
Network-reachable endpoint (AV:N) exploitable by any authenticated low-privileged user (PR:L) with no interaction; only other users' PII is disclosed, so C:L and I/A:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
JeecgBoot through 3.9.5 contains a missing authorization vulnerability in the SysUserController getUserDetailByUserId handler that allows any authenticated user to read other users' details. Low-privileged attackers can supply arbitrary userId values to retrieve real names, usernames, emails, phone numbers, birthdays, employee numbers, department paths and posts.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Unauthenticated report data exfiltration in JimuReport (JeecgBoot) through version 2.5.0 lets remote attackers export th
Broken access control in JeecgBoot through 3.9.2 lets authenticated low-privilege users reach the OpenApiAuthController
Privilege escalation in JeecgBoot through 3.9.5 lets any authenticated user approve their own pending tenant administrat
Missing authorization in the saveDeptRolePermission endpoint of JeecgBoot's SysDepartPermissionController lets any authe
SQL injection vulnerability in Beijing Guoju Information Technology Co., Ltd JeecgBoot v.3.7.2 allows a remote attacker
JeecgBoot up to v 3.5.1 was discovered to contain a SQL injection vulnerability via the component queryFilterTableDictIn
JeecgBoot up to v 3.5.1 was discovered to contain a SQL injection vulnerability via the component queryTableDictItemsByC
JeecgBoot through 3.9.5 ships a system log controller whose batch-delete handler performs no authorization check, so any
Database credential disclosure in JeecgBoot through 3.9.5 allows any authenticated low-privileged user to retrieve JDBC
Missing authorization in JeecgBoot through 3.9.5 lets any authenticated user enumerate record IDs through the unguarded
Authenticated low-privileged users of JeecgBoot through 3.9.5 can retrieve any other user's stored password ciphertext t
Authenticated users of any privilege level on JeecgBoot through 3.9.5 can rewrite DingTalk, WeCom, or Feishu third-party
EUVD-2026-97063
GHSA-4gwg-345v-gmc7
NVD
CVE.org
EPSS
Exploit-DB