Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to StockAgile panel
-
DeliveryPOST payload to /inventory/configuration/serial-number-types
-
ExploitStore unsanitized script in code/name field
-
ExecutionVictim user opens configuration panel
-
PersistScript executes in victim browser session
-
ImpactSession/token theft or privileged actions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires: (1) a valid authenticated account on the StockAgile management panel with permission to write to the REST endpoint '/inventory/configuration/serial-number-types' (PR:L); and (2) a second authenticated user subsequently viewing the panel page that renders the stored 'code', 'name', or other text-field values, satisfying the UI:P/passive-interaction requirement. The injection point is server-side input validation/output-encoding failure on those text parameters. Limiting factors: the attacker cannot exploit this unauthenticated, the payload only fires when an authenticated victim loads the affected panel view, and impact is confined to the victim's browser context (no direct server compromise, VA:N/no availability impact). |
| Impact | This is a genuine but modest-severity issue best treated as routine-priority patching rather than an emergency. The vendor-provided CVSS 4.0 vector (5.1, Medium) is internally consistent with the description: AV:N (the REST endpoint '/inventory/configuration/serial-number-types' is network-reachable), AC:L, PR:L (attacker must already be an authenticated panel user), and UI:P (a victim user must later view the affected panel page for the stored payload to fire). Impact is limited to VC:L/VI:L with VA:N and no subsequent-system impact (SC/SI/SA:N), which is appropriate for a script-context stored XSS confined to the browser session of authenticated users. No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The main real-world limiter is the PR:L requirement - an attacker needs valid credentials to inject, making this most relevant as a privilege-escalation/lateral-movement primitive among authenticated users (e.g., a low-privileged operator attacking an admin) rather than an internet-wide unauthenticated threat. No signals conflict; all point to a real-but-contained, authentication-gated flaw. |
| Exploit ScenarioDerived | A low-privileged but authenticated StockAgile user submits a serial-number-type record via the REST API with a malicious JavaScript payload in a text field such as 'code' or 'name'. The unsanitized value is persisted server-side and later rendered in the management panel, so when a higher-privileged authenticated user (e.g., an administrator) views that configuration screen, the script executes in their browser session. No public exploit code was provided in the intelligence sources. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Stored cross-site scripting in the StockAgile API and management panel lets a remote authenticated user persist malicious JavaScript into the REST endpoint '/inventory/configuration/serial-number-types' through text parameters such as 'code' and 'name', which the server fails to validate or encode before rendering them back in the web panel. The payload executes in the browser of any authenticated operator who subsequently opens the affected panel view, in the context of that user's session, but it does not compromise the server itself. Exploitation is not unauthenticated: the CVSS 4.0 vector reports PR:L, so the attacker must already hold a valid account with write access to that endpoint, and the impact stays within the victim's browser context (VC:L/VI:L/VA:N). No public exploit code or confirmed active exploitation was identified at time of analysis, and while a vendor patch is available, the issue is best handled as routine-priority patching rather than an emergency given its low severity and privilege prerequisites.
RemediationAI
Vendor-released fixes are available: the patch reference points to the INCIBE-CERT advisory at https://www.incibe.es/en/incibe-cert/notices/aviso/stored-cross-site-scripting-stockagile-novadigits-technologies, which documents the vendor's corrective release - retrieve the exact patched StockAgile version from that advisory and upgrade all panel and API instances accordingly, since no version number is enumerated in the CPE data. Until the upgrade is applied, the most effective compensating control is to restrict write access to '/inventory/configuration/serial-number-types' to the smallest possible set of trusted administrative roles, because the injection vector is an authenticated write and the population of users who can poison stored configuration values shrinks accordingly (trade-off: serial-number type administration becomes a gated, possibly ticket-driven task). Additionally, sanitize or reject HTML metacharacters in the 'code', 'name', and other free-text fields at the API layer, or neutralize stored values with context-aware HTML entity encoding at render time in the panel - both are development-side changes and cannot be applied as a pure configuration workaround. Deploying a strict Content-Security-Policy on the management panel that disallows inline and third-party script execution limits payload detonation even if malicious values remain stored (trade-off: legitimate inline scripts and third-party widgets in the panel may break and need allowlisting). Operators should also audit existing serial-number-type records for injected markup and purge any poisoned entries, since patching the code does not remove already-persisted payloads.
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 vulnerability is a classic CWE-79 improper neutralization of input during web page generation (cross-site scripting), here in its stored/persistent variant. StockAgile is a NovaDigits Technologies inventory and warehouse management product exposing a REST API alongside an administrative web panel; the affected resource, '/inventory/configuration/serial-number-types', is a configuration endpoint whose records (serial number type definitions) are persisted server-side and later rendered in the panel's UI. Because the server performs neither input validation on write nor output encoding on render for fields like 'code' and 'name', an attacker can save JavaScript-bearing values that are stored in the application database and re-emitted into HTML whenever a user views the configuration screen. The CPE cpe:2.3:a:novadigits_technologies:stockagile:*:*:*:*:*:*:*:* uses a wildcard version, indicating the vendor has not published per-version CPE boundaries and that all currently enumerated StockAgile versions should be treated as potentially affected until the advisory's fixed release is applied. The assessed CVSS:3.1 vector (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) confirms the network-reachable, low-complexity nature of the flaw while underscoring that it requires a valid authenticated account to inject and passive interaction from a second authenticated user to trigger; the scope change reflects that the injected script executes with the privileges of the victim's session rather than the attacker's origin.
Know when Stockagile 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:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Network-reachable authenticated API (PR:L) with stored payload firing only when a victim loads the panel (UI:R); script escaping into another user's browser context is a scope change (S:C) with low C/I and no availability impact.
Primary rating from Vendor (INCIBE).
CVSS VectorVendor: INCIBE
DescriptionCVE.org
Stored Cross-Site Scripting (XSS) vulnerability in StockAgile API and management panel. The vulnerability is present on the server side in REST endpoint '/inventory/configuration/serial-number-types' that allow the injection and persistence of malicious JavaScript code through parameters such as ‘code’, ‘name’, and other text fields. The scripts that are entered are not filtered or validated correctly before being displayed on the web panel that authenticated users can access. Exploiting this vulnerability could allow a remote, previously authenticated attacker to execute arbitrary JavaScript code.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
More in Stockagile
View allStored cross-site scripting in the StockAgile management panel and REST API lets an authenticated user persist arbitrary
Stored cross-site scripting in the StockAgile inventory management platform allows an authenticated user with permission
Stored cross-site scripting in the StockAgile management panel lets an authenticated user who can write to the REST endp
Stored cross-site scripting in the StockAgile inventory management platform allows an authenticated user to persist mali
Stored cross-site scripting in StockAgile allows an authenticated low-privileged attacker to inject persistent JavaScrip
Stored cross-site scripting in the StockAgile API and management panel allows an authenticated remote attacker to persis
EUVD-2026-86623
GHSA-rhw3-2pp5-p7xw
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB