Skip to main content

Newbee Mall CVE-2026-94045

| EUVDEUVD-2026-83771 LOW
Cross-site Scripting (XSS) (CWE-79)
2026-09-20 VulDB GHSA-92hr-qfch-w4h7
2.0
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privileged seller
  2. Delivery
    Submit crafted goodsName / upload polyglot PNG payload
  3. Exploit
    Bypass ImageIO image-only guard, persist under /upload/**
  4. Execution
    Admin or user views poisoned goods page
  5. Impact
    Stored XSS executes in victim browser session

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

Requires an authenticated low-privileged user (PR:L) able to reach the Goods Save endpoint (controller/common/UploadController.java) to set goodsName or upload a file. Persistence depends on the deployment serving user uploads via the /upload/** static resource mapping and the ImageIO.read()-based 'image-only' validation being present (which is bypassable with a polyglot PNG carrying an <img onerror> HTML payload). Exploitation is limited by: required authentication, required victim interaction (UI:P - an admin/user must view the poisoned goods listing or uploaded resource for the payload to fire), and the niche demo-project deployment base. No unauthenticated path is indicated.

Impact

This is a low-to-moderate real-world risk that should not be over-prioritized despite public exploit availability. The vendor CVSS 4.0 score of 5.1 (PR:L/UI:P/VI:L, integrity-only) correctly frames it as a bounded stored-XSS issue: exploitation requires an authenticated actor with access to the Goods Save endpoint (PR:L) and a victim who subsequently loads the poisoned goods/upload content (UI:P). SSVC signals are mixed - exploitation is 'Proof of Concept' (E:P, a public POC exists via the vendor issue tracker) but there is NO CISA KEV listing and NO EPSS score in the provided data, so there is no evidence of active or automatable exploitation; this indicates opportunistic-at-best rather than widespread attack pressure. The description's technical note (ImageIO.read() being format-agnostic, allowing a polyglot PNG|<img onerror> payload past the 'image-only' guard, combined with attacker-controlled suffix and the /upload/** static mapping) meaningfully raises the practical impact from ephemeral reflected XSS to persisted XSS, but the confidentiality/integrity ceiling remains that of script execution in a browser session, not RCE. No signals conflict materially; the main caveat is that the affected product (newbee-mall) is a learning/demo project, which caps real-world exposure.

Exploit ScenarioDerived

An attacker with a low-privileged authenticated account (e.g., a seller/merchant able to reach the Goods Save endpoint) submits a crafted goodsName value or uploads a polyglot image (a valid PNG that also contains an <img onerror> HTML payload) that passes the ImageIO.read() 'image-only' validation and is stored under the /upload/** static path with an attacker-influenced suffix. When an administrator or another user later views the goods listing or the uploaded resource, the payload executes in their browser context. A public POC exists (referenced in the vendor's GitHub issue #126), lowering the barrier to reproduction.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 20, 2026

Stored cross-site scripting (XSS) in Newbee Mall (newbee-ltd newbee-mall) up to version 1.0.0 allows an authenticated low-privileged user to inject arbitrary JavaScript via the goodsName parameter on the Goods Save endpoint (controller/common/UploadController.java), which can be persisted and executed when a victim views the poisoned content if user uploads are served through the /upload/** static mapping. Exploitation requires authentication (PR:L) and victim interaction (UI:P), and publicly available exploit code exists; the independent assessment rates this as low-to-moderate real-world risk given the required privileges, user interaction, and the niche demo-project deployment base.

RemediationAI

No vendor-released patch has been identified at time of analysis; the vendor was notified via GitHub issue #126 but has not responded. Until a fix is available, implement the following compensating controls. Apply context-aware output encoding to goodsName and any other user-supplied strings rendered in the web UI, which breaks the XSS payload but requires code changes and thorough review of all output paths. Replace the ImageIO.read()-based image-only check with strict server-side image processing that re-encodes uploaded images to a canonical format (for example, using explicit format forcing or a dedicated sanitizer), which strips polyglot HTML payloads at the cost of potentially losing image metadata. Restrict or remove the /upload/** static resource mapping so uploaded files are never served as HTML; serve them with a forced Content-Type (such as image/png) and Content-Disposition: attachment, or store them outside the web root, which may break legitimate inline image display. Enforce a strict allowlist of image extensions and reject filenames containing HTML-significant characters or double extensions. Add a Content-Security-Policy header that disallows inline script execution to mitigate residual XSS risk, though CSP compatibility must be tested. Restrict the Goods Save upload functionality to trusted high-privileged administrators only, reducing the attack surface but not eliminating the need for output encoding. Monitor the vendor repository and issue #126 for an official patch.

Affected VersionsENISA

newbee-mall 1.0

Affected Packages

euvd newbee_mall no fix

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

The flaw is a CWE-79 (Improper Neutralization of Input During Web Page Generation) cross-site scripting issue in the Java-based Newbee Mall e-commerce demo application. The Goods Save endpoint in controller/common/UploadController.java accepts an attacker-controlled goodsName argument and embeds it into page output without adequate output encoding, so script payloads survive and execute in the victim's browser. Additionally, the file upload validation relies on Java's ImageIO.read(), which is format-agnostic and returns a non-null image for a polyglot PNG that also contains an HTML payload such as <img onerror=...>; combined with a user-controlled filename suffix and the /upload/** static resource mapping, this allows the upload to be served back as HTML, turning a one-shot reflection into persisted XSS when the deployment serves uploaded files from that path. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P) and the independent CVSS 3.1 assessment (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) both indicate network-exploitable XSS requiring authenticated low-privileged access (PR:L) and victim interaction (UI:P), with a changed scope (S:C) meaning impact can extend beyond the vulnerable component. The CPE string cpe:2.3:a:newbee-ltd:newbee-mall:*:*:*:*:*:*:*:* confirms all versions up to 1.0.0 are in scope.

Know when Java 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

Vendor (VulDB) PRIMARY 2.0 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 5.4 MEDIUM

Network-reachable stored XSS needing a low-privileged authenticated poster (PR:L) and a victim view (UI:R); script runs in the victim's browser context (S:C) with limited C/I impact and no availability effect.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

3
Severity Changed
Sep 20, 2026 - 19:22 NVD
MEDIUM LOW
CVSS changed
Sep 20, 2026 - 19:22 NVD
5.1 (MEDIUM) 2.0 (LOW)
CVE Published
Sep 20, 2026 - 18:30 cve.org
MEDIUM 5.1

DescriptionCVE.org

A security flaw has been discovered in newbee-ltd newbee-mall up to 1.0.0. Impacted is an unknown function of the file controller/common/UploadController.java of the component Goods Save Endpoint. Performing a manipulation of the argument goodsName results in cross site scripting. The attack may be initiated remotely. The exploit has been released to the public and may be used for attacks. ImageIO.read() is a format-agnostic read - it returns non-null for a polyglot PNG|<img onerror> payload, which is exactly why the "image-only" guard is bypassable; the attacker-controlled suffix + /upload/** static mapping is what turns the upload into persisted XSS rather than a one-shot. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.4%
Top 67% exploitable
Prevalence
Low
popular open-source Java demo/learning e-commerce project, minimal production footprint
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity LOW
CISA KEV No
Public POC Yes
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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 Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy