Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege Invoice Ninja account
-
DeliveryNavigate to invoices endpoint
-
ExploitInject crafted internal URL into notes field
-
ExecutionTrigger PDF generation for the invoice
-
PersistServer executes SSRF request via isHostSafe bypass
-
ImpactAttacker infers internal topology or harvests metadata credentials
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid authenticated session with at minimum low-privilege access to the Invoice Ninja application, as confirmed by the CVSS 4.0 vector metric PR:L. The attacker must have permission to create or edit invoices on the affected invoices endpoint and trigger PDF generation. The specific vulnerable surface is the |
| Impact | The CVSS 4.0 score of 2.1 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L) accurately reflects a constrained, authenticated SSRF with limited confidentiality impact and no integrity or availability effect. EPSS data is absent from the provided intelligence, and the vulnerability is not listed in CISA KEV, indicating no confirmed widespread or nation-state exploitation at time of analysis. However, the existence of a public proof-of-concept on the researcher's blog meaningfully raises the likelihood of opportunistic exploitation compared to an undisclosed finding. The practical risk is highly deployment-dependent: in environments where the Invoice Ninja server has unrestricted outbound access to cloud metadata endpoints such as AWS IMDSv1 at 169.254.169.254, the SSRF can be escalated into credential theft and lateral movement well beyond what the raw CVSS score implies. Egress-filtered or network-isolated deployments face substantially lower risk. The vendor's complete non-response to coordinated disclosure is an aggravating factor, as it removes any expectation of a near-term patch and leaves operators without official guidance. |
| Exploit ScenarioDerived | An authenticated user with low-privilege access - such as a client portal user or a staff account without administrative rights - navigates to the invoices endpoint and injects a crafted URL (e.g., |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 01, 2026
Server-side request forgery in Invoice Ninja up to version 5.13.26 allows authenticated remote attackers to coerce the application server into issuing arbitrary outbound HTTP requests by injecting malicious URLs into invoice note fields. The flaw lies in the Purify::isHostSafe() method within app/Services/Pdf/Purify.php, which inadequately validates the notes parameter before the PDF rendering pipeline processes it. A public proof-of-concept has been disclosed by the researcher; no vendor patch or acknowledgment has been issued, leaving all installations at or below 5.13.26 without an official remediation path.
RemediationAI
No vendor-released patch has been identified at time of analysis; the vendor did not respond to the researcher's disclosure. As the primary compensating control, operators should implement strict egress firewall rules on the host running Invoice Ninja, blocking outbound connections to RFC-1918 address ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), the link-local cloud metadata range (169.254.169.254/32), and loopback (127.0.0.0/8). This prevents SSRF payloads from reaching internal services but does not eliminate the vulnerability itself. Trade-off: overly broad egress restriction may break legitimate PDF rendering if the renderer fetches external assets. Operators should also review invoice note fields for unexpected URL patterns in application logs. If PDF generation is not a required feature for a given deployment, disabling it entirely is the most effective risk reduction. The researcher's disclosure at https://ashutosh-jena.in/blog/server-side-request-forgery-ssrf-in-invoice-ninja-pdf-rendering-v51326 should be monitored for updated exploitation details.
Affected VersionsENISA
Affected Packages
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
Invoice Ninja is an open-source PHP-based invoicing and billing platform commonly self-hosted by freelancers and SMBs. The vulnerability resides in its PDF generation subsystem, specifically the Purify service class responsible for sanitizing content before passing it to the PDF renderer. The isHostSafe() function is designed to act as a URL allow/block guard, but it fails to adequately validate attacker-controlled input arriving via the invoices endpoint notes argument. CWE-918 (Server-Side Request Forgery) identifies the root cause: the application fetches a resource on behalf of the user without sufficiently verifying that the target URL is authorized, enabling the server to be used as a proxy to reach internal network destinations. The affected CPE is cpe:2.3:a:invoiceninja:invoice_ninja:*:*:*:*:*:*:*:*, covering the entire version lineage through 5.13.26.
Know when Invoiceninja 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:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
Network-reachable SSRF requiring low-privilege authentication; scope unchanged and confidentiality impact limited to internal host probing with no integrity or availability consequence.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A security vulnerability has been detected in invoiceninja Invoice Ninja up to 5.13.26. This vulnerability affects the function Purify::isHostSafe of the file app/Services/Pdf/Purify.php of the component invoices Endpoint. The manipulation of the argument notes leads to server-side request forgery. It is possible to initiate the attack remotely. The exploit has been disclosed publicly and may be used. The vendor was contacted early about this disclosure but did not respond in any way.
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
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
More in Invoiceninja
View allinvoiceninja is vulnerable to Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting'). Rate
Open redirect in Invoice Ninja's client portal login (through version 5.13.26) enables unauthenticated attackers to craf
In Invoice Ninja before 4.4.0, there is an unsafe call to unserialize() in app/Ninja/Repositories/AccountRepository.php
Invoice Ninja's Vendor Portal Profile Update endpoint (versions up to 5.13.26) contains an IDOR flaw in VendorContactCon
Stored cross-site scripting (XSS) in Invoice Ninja v5.13.0 through v5.13.3 allows authenticated attackers with product n
EUVD-2026-68982
GHSA-wgqw-w7f3-xcj4
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB