projectworlds Expense Management System
CVE-2025-12230
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with admin credentials
-
DeliveryAccess currency creation page
-
ExploitInject XSS payload in form field
-
ExecutionSubmit malicious currency record
-
PersistOther admin views currency page
-
ImpactPayload executes in victim browser
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 the attacker to possess high-privilege administrative credentials or account access to projectworlds Expense Management System version 1.0. The attacker must have direct access to the /public/admin/currencies/create endpoint, which is restricted to authenticated administrative users. Additionally, user interaction is required - a second user must visit or interact with the page containing the injected payload for the XSS to execute. The vulnerability does NOT affect unauthenticated users or low-privilege accounts. Non-default or special configuration is not required; the vulnerability exists in the default installation's administrative currency creation feature. |
| Impact | This vulnerability presents low real-world risk despite public exploit availability. The EPSS score of 0.03% (9th percentile) indicates minimal probability of exploitation in the wild, reflecting the significant privilege and interaction barriers. The CVSS score of 1.9 is extremely low, primarily because PR:H (high privilege requirement) and UI:P (user interaction required) substantially reduce exploitability against most deployments. While the confidentiality, integrity, and availability impacts are minimal (VC:N/VI:L/VA:N), the required administrative access means only internal threats or compromised admin accounts pose practical risk. The public exploit exists (E:P) but no CISA KEV listing indicates no confirmed active exploitation campaign. This is a classic high-privilege XSS where the attacker profile (admin) and interaction requirement significantly limit practical attack surface compared to network-unauthenticated vulnerabilities. Organizations with robust access controls and session monitoring should deprioritize this relative to unauthenticated remote code execution flaws. |
| Exploit ScenarioDerived | An authenticated administrative user with high-level privileges navigates to the Currency Page creation form (/public/admin/currencies/create) and injects a malicious JavaScript payload into a currency field without proper sanitization. When another user (typically another admin) visits the currency management page to view or edit existing currencies, the stored payload executes in their browser context, potentially stealing session cookies, performing actions on their behalf, or redirecting them to a phishing site. Public exploit code exists on GitHub demonstrating the injection technique. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 29, 2026
Stored cross-site scripting (XSS) in projectworlds Expense Management System 1.0 allows authenticated users with high privileges to inject malicious scripts via the Currency Page create function (/public/admin/currencies/create), which are then reflected to other users who interact with that page. The vulnerability requires user interaction and high-level administrative privileges to exploit, resulting in limited real-world risk despite public exploit availability and low EPSS score.
RemediationAI
Upgrade to a patched version of projectworlds Expense Management System if available from the vendor. If an upgrade path does not exist, implement input validation and output encoding on the /public/admin/currencies/create endpoint to sanitize all user-supplied data before rendering in HTML context; use context-aware encoding (HTML entity encoding for HTML content, JavaScript escaping for script contexts) rather than blacklist-based filtering. Additionally, enforce Content Security Policy (CSP) headers with strict-dynamic and nonce-based script execution to prevent inline script execution even if XSS payloads are injected. Restrict access to the currency management functionality to the minimum set of administrators, implement session timeout for administrative accounts, and enable comprehensive audit logging of changes to currency configurations. No vendor-released patch version is independently confirmed at time of analysis; consult projectworlds support directly for availability.
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 reflected or stored XSS flaw (CWE-79) in the Currency Page component of the Expense Management System's administrative interface. The affected endpoint /public/admin/currencies/create fails to properly sanitize or encode user input before rendering it in HTML responses. The CVSSv4.0 vector indicates network-accessible attack surface (AV:N) with low complexity (AC:L), but exploitation is gated by high privilege requirements (PR:H), meaning only administrative or highly privileged users can initiate the attack, and user interaction (UI:P) is required for payload execution. The CPE string cpe:2.3:a:projectworlds:expense_management_system:1.0:*:*:*:*:*:*:* confirms the specific product and version affected.
Know when Expense Management System 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:H/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
Primary rating from Vendor (vuldb) · only source for this CVE.
CVSS VectorVendor: vuldb
DescriptionCVE.org
A weakness has been identified in projectworlds Expense Management System 1.0. This impacts an unknown function of the file /public/admin/currencies/create of the component Currency Page. This manipulation causes cross site scripting. It is possible to initiate the attack remotely. The exploit has been made available to the public and could be used for attacks.
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.
Affected Products (CPE)CVE.org
More in Expense Management System
View allAn issue in Expense Management System v.1.0 allows a local attacker to execute arbitrary code via a crafted file uploade
Expense Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /Home/deb
XSS in the Add Expense Component of EGavilan Media Expense Management System 1.0 allows an attacker to permanently store
A vulnerability was found in SourceCodester Expense Management System. Rated critical severity (CVSS 9.8), this vulnerab
A vulnerability was found in CodeAstro Expense Management System 1.0. Rated medium severity (CVSS 6.1), this vulnerabili
Stored cross-site scripting in projectworlds Expense Management System 1.0 allows high-privileged authenticated users to
Stored cross-site scripting (XSS) in projectworlds Expense Management System 1.0 allows authenticated high-privilege use
Stored cross-site scripting (XSS) in projectworlds Expense Management System 1.0 allows high-privileged authenticated us
Cross-site request forgery in CodeAstro Expense Management System 1.0 allows an attacker to perform unauthorized actions
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB