# CVE-2026-94039: vas3k TaxHacker server-side request forgery in invoice PDF generation

Source: https://junglewise.ai/threats/cve-2026-94039-a-vulnerability-was-detected-in-vas3k-taxhacker-up-to-0-8-5  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-20. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2026-94039 · Severity: high · CVSS 7.3 · Published 2026-09-20

TaxHacker is a self-hosted accounting application that generates PDF invoices. An unauthenticated attacker can remotely trigger PDF generation with a malicious business logo parameter, allowing them to read arbitrary files from the server or probe internal network services. In multi-tenant deployments, this could expose other users' invoices and internal infrastructure.

Technologies: [Vas3k TaxHacker](https://junglewise.ai/threats/technologies/taxhacker). Vendors: [Vas3k](https://junglewise.ai/threats/vendors/vas3k).

## Quick answers

**Is CVE-2026-94039 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-94039 being exploited in the wild.

**How severe is CVE-2026-94039?** High severity, with a CVSS score of 7.3, published 20 September 2026.

**Which products and versions are affected?** Vas3k TaxHacker up to 0.8.5.

**Is there a fix for CVE-2026-94039?** No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2026-94039 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-94039?** Check whether you run Vas3k TaxHacker at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

The generateInvoicePDF server action in /apps/invoices/actions.ts lacks authentication checks and passes the businessLogo parameter unsanitized to the @react-pdf/renderer image resolver. The resolver treats absolute filesystem paths as local files (calling fs.readFile) and http/https URLs as remote resources (making fetch requests), enabling both local file read and server-side request forgery. The action is reachable without authentication via POST with a Next-Action header.

## Affected products

- vas3k TaxHacker up to 0.8.5

## Timeline

- 2026-08-26: disclosed: Security issue #186 reported on GitHub
- 2026-09-20: advisory: CVE-2026-94039 published

## References

- [https://github.com/vas3k/TaxHacker/](https://github.com/vas3k/TaxHacker/)
- [https://github.com/vas3k/TaxHacker/issues/186](https://github.com/vas3k/TaxHacker/issues/186)

## Related threats

- [TaxHacker insecure direct object reference in settings](https://junglewise.ai/threats/cve-2026-125749-taxhacker-through-0-8-5-contains-an-insecure-direct-object)
- [vas3k TaxHacker server-side request forgery in LLM provider test](https://junglewise.ai/threats/cve-2026-94040-a-flaw-has-been-found-in-vas3k-taxhacker-up-to-0-8-5-affected-by)
- [vas3k TaxHacker hardcoded JWT secret authentication bypass](https://junglewise.ai/threats/cve-2026-78062-vas3k-taxhacker-hardcoded-jwt-secret-authentication-bypass)
- [vas3k TaxHacker server-side request forgery in IMAP configuration](https://junglewise.ai/threats/cve-2026-78061-vas3k-taxhacker-server-side-request-forgery-in-imap-configuration)
