What’s Vulnerable › Vulnerabilities
CVE-2026-73254: Mongoose: Stored XSS via unescaped filenames in directory listing
- Severity: medium (CVSS 5.4 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2026-08-20 · updated 2026-10-18
- Weakness: CWE-79
Description
Mongoose is an embedded web server and network library. Prior to 7.22, an attacker who can create a file with an HTML payload in its name can trigger stored cross-site scripting when a user browses a directory served with MG_ENABLE_DIRLIST. The printdirentry() path called by listdir() in src/http.c URL-encodes the href but inserts the raw filesystem filename into the HTML link text. The browser executes the injected markup in the Mongoose origin, which can expose session data or permit actions as the victim. This issue is fixed in version 7.22.
Affected products
- Cesanta Mongoose: before 7.22 — fixed in 7.22
How to fix
Upgrade to a fixed version: Cesanta Mongoose 7.22. Check the vendor advisory for mitigations.
References
- https://github.com/cesanta/mongoose/commit/a9df523f76f43a38bd53b4232b9cfd4c16869e71
- https://github.com/cesanta/mongoose/pull/3611
- https://github.com/cesanta/mongoose/releases/tag/7.22
- https://github.com/cesanta/mongoose/security/advisories/GHSA-5g6j-m3pv-4f7g
- https://github.com/cesanta/mongoose/security/advisories/GHSA-5g6j-m3pv-4f7g
Get alerted when CVE-2026-73254 or the next vulnerability affects your stack