JeecgBoot Information Disclosure Vulnerability in Department Role Query Endpoint

Vulnerability

An information disclosure vulnerability has been identified in JeecgBoot versions prior to 3.9.0. The issue arises in the 'getDeptRoleByUserId' function within the 'SysDepartRoleController' file. The vulnerability allows unauthorized access to user department role information by manipulating the 'departId' parameter, bypassing tenant validation. This could lead to cross-tenant permission leaks and unauthorized insights into user roles and responsibilities.

Impact

Exploitation of this vulnerability could result in unauthorized access to cross-tenant user role information, allowing attackers to analyze and map organizational permission structures. Additionally, it could disclose sensitive personnel information regarding department affiliations and roles, which could be used to identify high-privilege users for targeted attacks.

Reproduction

To reproduce this vulnerability, an authenticated user must send a GET request to the '/sys/sysDepartRole/getDeptRoleByUserId' endpoint, including a valid 'userId' and 'departId' from a different tenant. The absence of tenant validation will allow the request to succeed and return the targeted user's role information.

Remediation

Implement tenant ownership validation for departments and users, ensuring that only authorized data is accessed. Add tenant ID filtering to database queries, restrict role queries to individual users for non-administrators, and log all role query operations, especially cross-tenant access attempts.

Added: Dec 28, 2025, 5:18 AM
Updated: Dec 28, 2025, 5:18 AM

Vulnerability Rating

Custom Algorithm
spread
0.8
impact
2.5
exploitability
6.6
remediation
0.0
relevance
1.6
threat
6.4
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.