CVE-2026-33742
Stored XSS in Invoice Ninja v5.13.0 Markdown Rendering
Publication date: 2026-03-26
Last updated on: 2026-03-30
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| invoiceninja | invoice_ninja | to 5.13.4 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-79 | The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. |
Attack-Flow Graph
AI Powered Q&A
What immediate steps should I take to mitigate this vulnerability?
The immediate step to mitigate this vulnerability is to upgrade Invoice Ninja to version 5.13.4 or later, where the issue is fixed by sanitizing Markdown output with purify::clean().
Until the upgrade can be applied, restrict or monitor authenticated users' ability to add or edit product notes fields to prevent injection of malicious HTML or scripts.
Additionally, review and sanitize existing product notes fields in the database to remove any potentially malicious HTML or JavaScript content.
Can you explain this vulnerability to me?
CVE-2026-33742 is a stored Cross-Site Scripting (XSS) vulnerability in Invoice Ninja versions prior to 5.13.4, specifically affecting the product notes fields.
The vulnerability occurs because the Markdown parser used to render product notes allows raw HTML input, and its output is not sanitized with the purify::clean() function before being embedded in invoice templates.
This improper neutralization of input enables attackers to inject malicious HTML or JavaScript code.
An authenticated user can exploit this by entering a payload such as `<img src=x onerror=alert(document.cookie)>` into the product notes field when creating or editing a product.
When this product is added to an invoice and the invoice is viewed or previewed, the malicious script executes.
How can this vulnerability impact me? :
The exploitation of this vulnerability can lead to session hijacking, account takeover, or data exfiltration for any user viewing the affected invoice.
Because the malicious script executes in the context of the user's browser, attackers can steal sensitive information or perform unauthorized actions on behalf of the user.
The vulnerability has a moderate severity with a CVSS v3.1 base score of 5.4, indicating a significant risk especially in environments where multiple users access invoices.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability allows stored Cross-Site Scripting (XSS) attacks via unsanitized product notes fields, which can lead to session hijacking, account takeover, or data exfiltration for users viewing the invoice.
Such security issues could potentially impact compliance with standards and regulations like GDPR or HIPAA, which require protection of personal and sensitive data against unauthorized access or disclosure.
However, the provided information does not explicitly discuss or analyze the direct effects of this vulnerability on compliance with these or other common standards and regulations.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by checking if the Invoice Ninja instance is running a version prior to 5.13.4 and by inspecting product notes fields for the presence of raw HTML or suspicious scripts.
Specifically, an authenticated user could have inserted malicious HTML or JavaScript payloads such as `<img src=x onerror=alert(document.cookie)>` into product notes fields.
To detect exploitation, you can search the database or application data for product notes containing HTML tags or JavaScript event handlers.
- Run a database query to find product notes containing suspicious HTML tags or JavaScript, for example using SQL: `SELECT * FROM products WHERE notes LIKE '%<img%onerror=%';`
- Check the version of Invoice Ninja by accessing the application or its version endpoint to confirm if it is older than 5.13.4.