Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify exposed signup endpoint
-
DeliveryCraft POST with role=admin field
-
ExploitServer persists privileged account
-
ExecutionAuthenticate as new admin
-
PersistAccess patient and inventory data
-
ImpactModify or exfiltrate records
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 | No special conditions - remote unauthenticated exploitation against default configurations of LalanaChami Pharmacy Management System (commit 5c3d028) is sufficient, with the only prerequisites being network reachability to the application's HTTP listener and that the /api/user/signup endpoint be enabled (it is enabled by default in the referenced commit). The only realistic limiting factor is exposure: the application is a small open-source project, so attack surface is bounded by how many organizations have deployed this specific codebase and exposed it to untrusted networks; no specific platform, OS, browser, or client-side interaction is required. |
| Impact | The CVSS 3.1 base score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) is consistent with the description: an unauthenticated network attacker can achieve complete confidentiality, integrity, and availability impact with no user interaction and low complexity. However, EPSS reports only 0.04% (11th percentile) and the CVE is not in CISA KEV, which together indicate the flaw is not yet seeing broad opportunistic exploitation - unsurprising because the affected project is a small open-source application rather than a widely deployed commercial product. The realistic risk is therefore high for any organization that has actually deployed this codebase (instant admin takeover via one curl command), but the population of exposed instances is likely small. The CPE entry is generic (cpe:2.3:a:n/a:n/a:*) and EUVD lists affected versions as 'n/a n/a', meaning authoritative version-pinning data is missing - defenders must identify by source commit rather than a tagged release. |
| Exploit ScenarioDerived | An attacker discovers an internet-exposed Pharmacy Management System instance, sends a single HTTP POST to /api/user/signup containing standard registration fields plus a 'role' attribute set to admin (or equivalent privileged value), and immediately logs in with the newly created administrator account. From there the attacker can read patient and prescription data, alter inventory or dispensing records, and pivot to any further functionality exposed by the admin UI. The published gist already walks through the request shape, lowering the bar to exploitation to essentially zero scripting skill. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 20, 2026
Privilege escalation in LalanaChami Pharmacy Management System (commit 5c3d028) allows any remote unauthenticated attacker to register a new account with administrator privileges by simply including a role parameter in the signup request body. The /api/user/signup endpoint trusts client-supplied role values without server-side validation, granting full administrative access in a single HTTP call. No public exploit identified at time of analysis, and EPSS is very low (0.04%), but the trivial nature of the flaw means weaponization is straightforward once anyone notices the gist already documenting the issue.
RemediationAI
No vendor-released patch identified at time of analysis - the project does not appear to have published a tagged fix release. Operators should immediately modify backend/routes/user.js to strip or ignore any client-supplied role field on the /api/user/signup endpoint and force newly created accounts to a hardcoded non-privileged default role, with administrative role assignment handled only by an authenticated admin via a separate endpoint with proper authorization checks. As compensating controls until code is patched: place the signup endpoint behind an authenticated reverse-proxy ACL or remove the endpoint entirely if self-registration is not required (side effect: blocks all new user onboarding), or add a WAF/middleware rule that rejects POSTs to /api/user/signup containing a 'role' key in the JSON body (side effect: may break legitimate clients if they ever needed to send role data, though they should not). Audit the user table for any accounts created with administrative roles since deployment and revoke or delete unauthorized admins. Reference advisories: https://nvd.nist.gov/vuln/detail/CVE-2026-31070 and the disclosure gist https://gist.github.com/nedlir/22bf6d1a3a07209be3e343744bc81d51.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The affected software is a Node.js/Express-based pharmacy application maintained on GitHub under LalanaChami/Pharmacy-Mangment-System. The vulnerability falls under CWE-269 (Improper Privilege Management): the signup route handler in backend/routes/user.js accepts the request body verbatim and persists whatever role string the client supplies, rather than forcing newly registered users to a default low-privilege role and gating administrative roles behind an authenticated, authorized provisioning flow. This is a classic mass-assignment / parameter tampering issue where the server-side data model exposes a privileged attribute to an untrusted input boundary.
Know when N A 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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Primary rating from Vendor (mitre) · only source for this CVE.
CVSS VectorVendor: mitre
Lifecycle Timeline
2DescriptionCVE.org
The LalanaChami Pharmacy Management System (commit 5c3d028) allows unauthenticated remote attackers to escalate privileges by self-assigning an administrative role during registration. The /api/user/signup endpoint fails to validate the role parameter in the request body
Executive ViewAI
LalanaChami Pharmacy Management System contains a critical unauthenticated privilege escalation vulnerability (CVE-2026-31070) allowing any remote attacker to create administrator accounts with a single HTTP request by manipulating a role parameter. Complete system compromise is trivial to execute, exposing patient records, medication data, and operational control to unauthorized access and modification.
No vendor-released patch identified at time of analysis. Immediate interim mitigations: disable network access to /api/user/signup endpoint or restrict to authenticated users only; implement server-side role parameter validation (strip or reject client-supplied role values); add API authentication requirement for all signup requests; deploy account creation rate limiting and monitoring; conduct full audit of existing accounts for unauthorized administrative access created after commit 5c3d028.
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.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
EUVD-2026-30945
GHSA-qg5w-7c3j-rfjc
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB