CVE-2026-88620 in SmartAdmininfo

Summary

by MITRE • 09/15/2026

SmartAdmin API Java17 SpringBoot3 version 3.30.0 contains an improper authorization vulnerability in the /employee/queryAll endpoint. The endpoint does not enforce the required function-level permission or data-scope authorization, allowing an authenticated low-privileged employee to retrieve employee records belonging to other departments and users

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 09/15/2026

The identified vulnerability represents a critical failure in access control mechanisms within the SmartAdmin API application, specifically targeting version 3.30.0 built on Java 17 with Spring Boot 3. This flaw is located at the /employee/queryAll endpoint and constitutes an improper authorization issue where the system fails to enforce function-level permissions or data-scope restrictions appropriately. In a properly secured enterprise environment, endpoints handling sensitive human resources data must implement robust checks that verify not only whether a user is authenticated but also whether they possess the specific role-based privileges required for the requested action and whether their access scope permits viewing records outside their designated departmental boundaries. The absence of these controls allows an attacker with low-privileged credentials to bypass intended security restrictions entirely.

From a technical perspective, this vulnerability stems from a lack of server-side validation regarding user context during request processing. When an authenticated user invokes the /employee/queryAll endpoint, the backend logic retrieves and returns employee records without filtering them based on the requesting user's department ID or role hierarchy. This indicates that the application likely relies solely on client-side controls for data visibility or fails to implement middleware components such as Spring Security method-level security annotations like @PreAuthorize or custom interceptors that validate data ownership before serialization. Consequently, any authenticated account can issue a GET request to this endpoint and receive a comprehensive list of all employee records stored in the database, regardless of their organizational level or departmental affiliation.

The operational impact of this vulnerability is severe due to the sensitive nature of the exposed data. Employee records typically contain personally identifiable information including full names, contact details, internal identification numbers, salary information, job titles, and potentially performance reviews or security clearance levels. Unauthorized access to this dataset facilitates a mass disclosure of confidential organizational intelligence. Attackers can leverage this information for social engineering attacks, such as spear-phishing campaigns tailored with accurate personal details to increase credibility against specific targets. Furthermore, the exposure of internal hierarchy and contact structures aids adversaries in mapping out an organization's operational framework, which is invaluable for planning further targeted intrusions or physical security breaches.

This vulnerability aligns directly with CWE-284 Improper Access Control, specifically reflecting scenarios where access control decisions are not enforced correctly on protected resources. It also maps to the MITRE ATT&CK technique T1078 Valid Accounts, as it exploits legitimate credentials to gain unauthorized access to restricted data, and potentially T1539 Steal Web Session Cookie if session management is weak, though primarily it falls under information disclosure through broken object level authorization patterns often seen in RESTful APIs. The flaw highlights a common pitfall in modern web development where developers assume that frontend restrictions are sufficient for security or fail to implement granular data-level permissions alongside role-based access control.

To mitigate this vulnerability, immediate remediation is required at the application logic layer. Developers must enforce strict server-side authorization checks on the /employee/queryAll endpoint. This involves implementing a mechanism that extracts the authenticated user's department ID and role from their security context or session token before executing database queries. The backend service should then filter results to ensure only records belonging to the same department as the requesting user are returned, unless the user holds an explicit administrative role with broader permissions. Utilizing Spring Security’s method-level expression support can help encapsulate these checks cleanly within service methods. Additionally, implementing data-scope frameworks that automatically apply filters based on tenant or organizational context is recommended for multi-tenant applications to prevent such leaks across different business units. Regular security testing including penetration tests focused on broken access control and code reviews emphasizing secure coding practices will further reduce the risk of similar vulnerabilities in future releases.

Responsible

MITRE

Reservation

09/10/2026

Disclosure

09/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!