/

CVE-2026-105382

Severity:

HIGH RISK

(7.3)

Improper Authorization (CWE-285) in HospitalManagementSystem

CVE-2026-105382

Deferred

Vulnerability type

Category:

Improper Authorization

CWE:

CWE-266, CWE-285

Impact:

Unauthorized Account Administration

Severity:

HIGH RISK

(7.3)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

A remote improper authorization flaw in HospitalManagementSystem allows the user_id argument in the Account Administration update_subaccount function to be manipulated without sufficient authorization checks. An attacker who can reach the affected function may modify another user's subaccount data or perform account administration actions beyond their intended permissions.

A remote improper authorization flaw in HospitalManagementSystem allows the user_id argument in the Account Administration update_subaccount function to be manipulated without sufficient authorization checks. An attacker who can reach the affected function may modify another user's subaccount data or perform account administration actions beyond their intended permissions.

Affected context

The issue occurs in the PHP controller responsible for Account Administration, specifically in the update_subaccount function. It becomes risky when the application accepts a client-controlled user_id value without reliably verifying that the requester is authorized to act on the referenced account. The affected project uses a rolling-release model, so exposure should be assessed against the deployed source revision and application configuration rather than a fixed version number.

The issue occurs in the PHP controller responsible for Account Administration, specifically in the update_subaccount function. It becomes risky when the application accepts a client-controlled user_id value without reliably verifying that the requester is authorized to act on the referenced account. The affected project uses a rolling-release model, so exposure should be assessed against the deployed source revision and application configuration rather than a fixed version number.

Exploit preconditions

  • Attack surface: Remote web application endpoint or request path invoking update_subaccount
  • Required access: Ability to reach the relevant Account Administration functionality; the required authentication level is deployment-dependent
  • Trigger point: Processing of a request containing a selected user_id
  • Why exploitation is possible: Authorization decisions may rely on attacker-influenced object identifiers instead of enforcing permission checks against the authenticated principal and target account
  • Attack surface: Remote web application endpoint or request path invoking update_subaccount
  • Required access: Ability to reach the relevant Account Administration functionality; the required authentication level is deployment-dependent
  • Trigger point: Processing of a request containing a selected user_id
  • Why exploitation is possible: Authorization decisions may rely on attacker-influenced object identifiers instead of enforcing permission checks against the authenticated principal and target account

Why this happens

The underlying bug is an authorization failure in which a user-supplied account identifier is accepted without an adequate server-side ownership or privilege check. This is consistent with CWE-285: Improper Authorization, and may also relate to CWE-266: Incorrect Privilege Assignment when the operation grants or applies administrative capabilities to an unauthorized account. The insecure pattern is object-level access control based on request parameters rather than on trusted identity and policy evaluation.

The underlying bug is an authorization failure in which a user-supplied account identifier is accepted without an adequate server-side ownership or privilege check. This is consistent with CWE-285: Improper Authorization, and may also relate to CWE-266: Incorrect Privilege Assignment when the operation grants or applies administrative capabilities to an unauthorized account. The insecure pattern is object-level access control based on request parameters rather than on trusted identity and policy evaluation.

Potential impact

  • An attacker may modify subaccount information belonging to another user.
  • Unauthorized account administration actions could occur.
  • Account integrity or user-controlled data could be altered.
  • The flaw could contribute to privilege escalation if the affected operation changes permissions or administrative attributes.
  • An attacker may modify subaccount information belonging to another user.
  • Unauthorized account administration actions could occur.
  • Account integrity or user-controlled data could be altered.
  • The flaw could contribute to privilege escalation if the affected operation changes permissions or administrative attributes.

General mitigation guidance

Mitigation generally focuses on enforcing authorization at the server-side operation boundary and reducing trust in client-supplied identifiers.

Common defensive patterns include:

  • Deriving the target account from the authenticated session or a server-side relationship where possible.
  • Enforcing object-level authorization checks for every account modification.
  • Applying deny-by-default, role-based, and least-privilege policies to administrative functions.
  • Validating that the requested account belongs to, or is administratively manageable by, the authenticated principal.
  • Avoiding client-controlled identifiers for security decisions unless they are independently verified.
  • Logging authorization decisions and anomalous cross-account modification attempts.

Mitigation generally focuses on enforcing authorization at the server-side operation boundary and reducing trust in client-supplied identifiers.

Common defensive patterns include:

  • Deriving the target account from the authenticated session or a server-side relationship where possible.
  • Enforcing object-level authorization checks for every account modification.
  • Applying deny-by-default, role-based, and least-privilege policies to administrative functions.
  • Validating that the requested account belongs to, or is administratively manageable by, the authenticated principal.
  • Avoiding client-controlled identifiers for security decisions unless they are independently verified.
  • Logging authorization decisions and anomalous cross-account modification attempts.

How teams detect issues like this

Organizations commonly detect this class of issue through:

  • Static analysis and code review rules for request parameters used directly in database updates or account-management operations.
  • Review of every controller action for explicit server-side ownership and role checks.
  • Dynamic authorization testing that compares access to the caller's own object with access to another user's object.
  • Web application policy enforcement and monitoring for repeated changes involving unrelated account identifiers.
  • Automated security review tools that identify missing object-level authorization checks.

Organizations commonly detect this class of issue through:

  • Static analysis and code review rules for request parameters used directly in database updates or account-management operations.
  • Review of every controller action for explicit server-side ownership and role checks.
  • Dynamic authorization testing that compares access to the caller's own object with access to another user's object.
  • Web application policy enforcement and monitoring for repeated changes involving unrelated account identifiers.
  • Automated security review tools that identify missing object-level authorization checks.

Sources

SourceLink
github.comgithub.com/onetwothreeneth/HospitalManagementSystem/
github.comgithub.com/onetwothreeneth/HospitalManagementSystem/issues/7
vuldb.comvuldb.com/cve/CVE-2026-105382
vuldb.comvuldb.com/submit/977736
vuldb.comvuldb.com/vuln/413576
vuldb.comvuldb.com/vuln/413576/cti

Frequently asked

questions

Yes. The description indicates that the vulnerable Account Administration function can be reached remotely, although practical exploitability depends on network exposure and application access controls.

The required authentication level is not specified. An attacker must be able to reach the relevant function, and any existing authentication requirement depends on the deployment and endpoint configuration.

Enforce authorization on the server for the authenticated principal and target account before performing the update. Do not treat the submitted user_id as proof that the requester may manage that account.

Use centralized object-level access-control policies, apply least privilege, test cross-account access paths, and monitor administrative operations for unexpected target changes.

Yes. The description indicates that the vulnerable Account Administration function can be reached remotely, although practical exploitability depends on network exposure and application access controls.

The required authentication level is not specified. An attacker must be able to reach the relevant function, and any existing authentication requirement depends on the deployment and endpoint configuration.

Enforce authorization on the server for the authenticated principal and target account before performing the update. Do not treat the submitted user_id as proof that the requester may manage that account.

Use centralized object-level access-control policies, apply least privilege, test cross-account access paths, and monitor administrative operations for unexpected target changes.

Find out what's already
exploitable in your codebase.