Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privileged OpenBoxes account
-
DeliverySend crafted POST with injected role parameters to /user/edit or /user/create
-
ExploitGORM binds unsanitized role params to User object without authorization check
-
ExecutionRole escalated to manager or administrator level
-
ImpactAccess restricted inventory, procurement, or user management functions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
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 a valid authenticated session with a low-privileged OpenBoxes user account, consistent with PR:L in the CVSS 4.0 vector. The attack targets the /user/show, /user/edit, /user/create, and /user/list HTTP endpoints in UserController, which accepted and GORM-bound arbitrary role parameters without authorization checks. No non-default configuration is required - the flaw exists in the standard role enforcement logic of any affected OpenBoxes 0.9.7 or earlier deployment. Unauthenticated attackers cannot exploit this directly; a valid account is the minimum prerequisite. Exploitation is further limited to instances accessible from the attacker's network position, which for many deployments may be intranet-only, reducing internet-facing exposure. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N with E:P) indicates a network-exploitable flaw requiring only a valid low-privileged account, no attack complexity, and no special preconditions, with a public exploit modifier confirmed. The 5.3 Medium score reflects limited per-component CIA impact values (L/L/L on the vulnerable system) rather than low exploitability. Real-world risk should be assessed above what the numeric score implies: the public PoC on GitHub Gist substantially lowers the barrier to exploitation, and OpenBoxes deployments in humanitarian and healthcare supply chains handle sensitive inventory, procurement, and personnel data where unauthorized role elevation could allow an attacker to approve stock movements, access patient-linked records, or manipulate user accounts. CISA KEV status is absent, indicating no confirmed mass exploitation campaign at time of analysis, but the combination of public exploit code and low-complexity network access makes opportunistic exploitation realistic for any internet-exposed instance. EPSS data was not provided in the input; defenders should not rely on a low EPSS estimate to defer patching given the confirmed public PoC. No conflicting signals between CVSS and description were identified. |
| Exploit ScenarioDerived | A public proof-of-concept exploit is available at https://gist.github.com/nedlir/2bc3a6e5bd4d67b863223e1bfc2e4390. An attacker with a standard warehouse staff account sends a crafted HTTP POST to the OpenBoxes /user/edit or /user/create endpoint, including injected role-assignment parameters (e.g., roles[0].id referencing a manager or administrator role); because the pre-patch controller passed these directly to GORM binding without authorization validation, the role is silently persisted to the database. The attacker's account - or a newly created account - then holds elevated privileges granting access to restricted procurement, inventory approval, and administrative functions. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 16, 2026
Improper privilege management in OpenBoxes up to 0.9.7 allows authenticated low-privileged users to escalate their roles by injecting unsanitized role parameters into the UserController's GORM data binding layer. The RoleInterceptor's needManager function additionally failed to enforce manager-level access on the user/show and user/edit endpoints, compounding the access control gap. A public proof-of-concept exploit is available; patched releases 0.9.8-hotfix1 and 0.9.8 are confirmed available from the vendor.
RemediationAI
Upgrade OpenBoxes to version 0.9.8 or 0.9.8-hotfix1, which contain the complete fix via commit 788cace0af816aa972a713a4631c57f16f895e6b (PR #5948). Release artifacts are available at https://github.com/openboxes/openboxes/releases/tag/v0.9.8. If an immediate upgrade is not feasible, restrict access to the /user/show, /user/edit, /user/list, /user/create, and related user management endpoints at the reverse proxy or firewall layer to IP ranges exclusively used by verified administrators - this reduces external attack surface but does not eliminate the underlying authorization flaw for insider-threat scenarios. Following remediation or as a parallel investigative step, audit all user accounts for unexpected role assignments made since the instance was deployed, as prior exploitation would leave elevated accounts in place.
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
OpenBoxes is a Grails-based open-source supply chain management platform used in humanitarian and healthcare logistics. The vulnerability spans two components. First, RoleInterceptor.groovy maintains an allow-list of controller actions that require manager-level privileges; in affected versions, the 'user/show' and 'user/edit' actions were absent from this list, meaning authenticated users of any role could access them. Second, UserController.groovy passed raw HTTP request parameters (including role-assignment keys like 'roles' and 'roles[0].id') directly into GORM's data binding when creating or updating users, without first extracting and separately validating those parameters through an authorization check. The fix (commit 788cace0af816aa972a713a4631c57f16f895e6b) adds 'user/show' and 'user/edit' to the manager-required list and introduces a popRoleParamsBeforeBinding helper that strips role params from the binding map and passes them separately to userService for authorization validation, with the session user's ID used to verify that the requesting user is permitted to assign those roles. CWE-269 (Improper Privilege Management) precisely describes this root cause: the system lacked enforcement of privilege constraints at the parameter binding boundary. CPE: cpe:2.3:a:n/a:openboxes:*:*:*:*:*:*:*:*.
Know when Openboxes 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:L/VA:L/SC:N/SI:N/SA:N/E:P
Network-reachable web endpoint requires a low-privileged authenticated account (PR:L); role escalation is scoped within the same application (S:U); no availability impact described.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A vulnerability was determined in OpenBoxes up to 0.9.7. This affects the function needManager of the file grails-app/controllers/org/pih/warehouse/RoleInterceptor.groovy of the component Role Interceptor. Executing a manipulation can lead to improper privilege management. The attack may be performed from remote. The exploit has been publicly disclosed and may be utilized. Upgrading to version 0.9.8-hotfix1 and 0.9.8 mitigates this issue. This patch is called 788cace0af816aa972a713a4631c57f16f895e6b. Upgrading the affected component is recommended.
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
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
EUVD-2026-59844
GHSA-22xp-gmqf-mrv3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB