Skip to main content

vas3k TaxHacker CVE-2026-94039

| EUVDEUVD-2026-83758 MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2026-09-20 VulDB GHSA-gc9f-gc68-qrg3
5.5
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to TaxHacker instance
  2. Delivery
    Set businessLogo to internal/metadata URL
  3. Exploit
    Trigger generateInvoicePDF rendering
  4. Execution
    Server fetches attacker URL (SSRF)
  5. Impact
    Reach internal services / read limited responses

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 reaching the invoice PDF generation path where the businessLogo argument is attacker-controllable - i.e., an account/session on the self-hosted TaxHacker instance able to configure business branding and generate an invoice. The server-side PDF renderer must fetch the supplied logo URL for the SSRF to fire. Limiting factors: the app is a self-hosted, single-tenant OSS tool with a small footprint, impact is limited (only Low confidentiality/integrity/availability per the vector - no code execution), and realistic exploitation presumes an authenticated user rather than a fully anonymous internet attacker despite the vendor's PR:N rating.

Impact

This is a moderate-severity SSRF (CWE-918) in TaxHacker, a niche self-hosted open-source accounting/invoicing app. The vendor CVSS 4.0 score of 6.9 (AV:N/AC:L/PR:N/UI:N/VC:L/VI:L/VA:L, E:P) is inflated by the PR:N assumption and network reach; the actual damage metrics are all 'Low', reflecting limited-impact SSRF rather than RCE or full data disclosure. I dispute PR:N - manipulating the businessLogo argument that feeds generateInvoicePDF realistically requires an authenticated account able to configure business/invoice settings, so PR:L is more honest (my CVSS 3.1 ~4.3). POC exploit code is publicly available (GitHub issue #186), so exploitability is confirmed, but there is no EPSS score and no CISA KEV listing in the provided data, and the exploitation status is 'publicly available exploit code exists' - NOT active exploitation. Net: this is a real but low-priority issue given the obscure product, low technical impact, and the fact that the project has not yet responded to or patched the report.

Exploit ScenarioDerived

An attacker with access to the invoice/business-settings feature sets the businessLogo value to an internal URL (e.g., a cloud metadata endpoint or an internal service). When the PDF renderer generates an invoice, the server fetches that attacker-controlled URL, letting the attacker probe or reach internal network resources. Public exploit code exists in the project's GitHub issue #186, lowering the barrier to reproduction.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 20, 2026

Server-side request forgery in vas3k TaxHacker up to 0.8.5 lets an attacker control the businessLogo argument passed to the generateInvoicePDF function in /apps/invoices/actions.ts and force the server-side invoice PDF renderer to fetch an arbitrary URL. The independent assessment rates this as moderate severity (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N), with exploitation requiring an account on the self-hosted instance that can configure business branding and trigger invoice generation, rather than an anonymous internet attacker. Publicly available exploit code exists, the issue was reported to the project early via GitHub issue #186 without a vendor response, and no CISA KEV listing was identified - impact is limited to low confidentiality, integrity, and availability with no code execution.

RemediationAI

No vendor-released patch identified at time of analysis - the project was notified early via GitHub issue #186 (https://github.com/vas3k/TaxHacker/issues/186) and has not responded, so the only durable fix is to track the repository (https://github.com/vas3k/TaxHacker/) and the VulDB record (https://vuldb.com/vuln/407968) for a commit or release above 0.8.5 that validates or allowlists the businessLogo URL, and to treat any such commit as the interim patch. Until then, apply compensating controls with their trade-offs: restrict who can configure business branding and generate invoices to trusted administrators only, since the SSRF requires control of the businessLogo argument (this removes the attack path but narrows normal workflow for multi-user instances); enforce egress filtering from the TaxHacker host or container so it cannot reach RFC1918 ranges, loopback, and the cloud metadata address 169.254.169.254 - ideally via a default-deny egress policy with an allowlist of legitimate logo/asset CDNs (this may break invoice generation when logos are hosted on internal or unlisted hosts, and will not stop SSRF to hosts already on the allowlist); if using a cloud deployment, enforce IMDSv2 with a low hop limit and restrict the instance role's permissions so a successful metadata fetch yields nothing useful; and run the application in an isolated network segment with no reachability to internal admin planes or databases. Given that publicly available exploit code exists, prioritize these mitigations on any instance where untrusted or semi-trusted users can configure branding, and monitor outbound HTTP from the TaxHacker process for requests to internal IP literals as a detection signal.

Affected VersionsENISA

TaxHacker 0.8.4
TaxHacker 0.8.3
TaxHacker 0.8.1
TaxHacker 0.8.0
TaxHacker 0.8.2
TaxHacker 0.8.5

Affected Packages

euvd taxhacker no fix

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

This is a classic server-side request forgery (CWE-918) in which user-controllable input is used as a URL that the server itself dereferences. In TaxHacker, the invoice PDF rendering path (generateInvoicePDF in /apps/invoices/actions.ts) accepts a businessLogo value that the application passes to the PDF renderer, which then performs an outbound HTTP fetch to retrieve the image for embedding in the generated invoice. Because the URL is not validated against an allowlist or blocked against internal address ranges, an attacker who can set the business logo can direct that fetch at arbitrary hosts - internal network services, localhost-bound admin interfaces, or cloud instance metadata endpoints. The component is described as an Invoice PDF Renderer and the affected artifact is the vas3k/taxhacker open-source project (CPE cpe:2.3:a:vas3k:taxhacker:*), a self-hosted, single-tenant accounting/invoicing application; the assessed vector indicates no scope change and only low-level C/I/A impact, consistent with an information-disclosure/request-oracle style SSRF rather than a pivot to code execution.

Know when Taxhacker 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

Vendor (VulDB) PRIMARY 5.5 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 4.3 MEDIUM

Setting businessLogo requires an authenticated user (PR:L); SSRF yields limited internal-response disclosure (C:L) with no meaningful integrity/availability impact and no scope change.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
CVSS changed
Sep 20, 2026 - 17:22 NVD
6.9 (MEDIUM) 5.5 (MEDIUM)
CVE Published
Sep 20, 2026 - 16:45 cve.org
MEDIUM 6.9

DescriptionCVE.org

A vulnerability was detected in vas3k TaxHacker up to 0.8.5. Affected is the function generateInvoicePDF of the file /apps/invoices/actions.ts of the component Invoice PDF Renderer. Performing a manipulation of the argument businessLogo results in server-side request forgery. The attack is possible to be carried out remotely. The exploit is now public and may be used. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Rare
obscure self-hosted OSS accounting tool by an individual developer
Exploit
POC
Public exploit code exists
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

48
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy