CVE-2026-45088 Dalfox Server Mode has an Unauthenticated Arbitrary File Read with Out-of-Band Exfiltration via `custom-payload-file`
Unauthenticated attackers can read arbitrary files on the host via path traversal in Dalfox server mode, exfiltrating data through scan traffic.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-45088?
CVE-2026-45088 is a high-severity path traversal vulnerability in hahwul dalfox, published on 27 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Dalfox is a powerful open-source XSS scanner and utility focused on automation. Prior to 2.13.0, when dalfox is run in REST API server mode, the custom-payload-file field in model.Options is JSON-tagged and deserialized directly from the attacker's request body, then propagated unchanged through dalfox.Initialize into the scan engine. The engine passes the value to voltFile.ReadLinesOrLiteral, which reads lines from any file path accessible to the dalfox process and embeds each line as an XSS payload in outbound HTTP requests directed at the attacker-controlled target URL. Because the server has no API key by default, an unauthenticated network attacker can exfiltrate the contents of arbitrary files on the dalfox host by reading them line-by-line through scan traffic. This vulnerability is fixed in 2.13.0.
Which versions are affected by CVE-2026-45088?
4 open source packages ship an affected version, including github.com/hahwul/dalfox/v2 and github.com/hahwul/dalfox.
| Package | Affected | Fixed in |
|---|---|---|
github.com/hahwul/dalfox/v2 Go | All versions | 2.13.0 |
github.com/hahwul/dalfox/v2 Go | All versions | 2.13.0 |
github.com/hahwul/dalfox/v2 Go | All versions | 2.13.0 |
github.com/hahwul/dalfox Go | All versions | None |
How do I fix CVE-2026-45088?
Upgrade github.com/hahwul/dalfox/v2 to 2.13.0 or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-45088 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-45088 exists.
Sources
Also known as GHSA-35wr-x7v6-9fv2, GO-2026-5070.