Skip to main content
CVE-2026-22256VulnerabilityPublished

CVE-2026-22256: salvo · Cross-site Scripting

Affects salvoSource CVE Database V5

0

Not known to be exploited · CVSS 8.8 High : upgrade to 0.88.1 soon.

Data as of 26 Oct 2026, 06:26 UTC

CVSS 3.1 base score
8.8High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.3% chance of exploitation in 30 days – higher than 26% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 0.88.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:L

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 8 Jan 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 2026-10-26.

What to do

Upgrade salvo and salvo-rs/salvo to 0.88.1.

Affected software

ProductAffectedFixed in
salvo-rssalvoAffected
  • <0.88.1
Fixed in
  • 0.88.1
crates.iosalvo-rs/salvopkg:cargo/salvo-rs/salvoOther threatsAffected
  • <0.88.1
Fixed in
  • 0.88.1

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

The primary mitigation is to upgrade all Salvo framework instances to version 0.88.1 or later, where the vulnerability is patched. Additionally, organizations should audit any custom HTML rendering code that inserts user-controlled input, ensuring proper output encoding and sanitization to prevent XSS. Implement Content Security Policy (CSP) headers to reduce the impact of potential XSS attacks. Web Application Firewalls (WAFs) can be configured to detect and block suspicious request patterns targeting path parameters. Regular security testing, including automated scanning and manual code reviews focusing on input handling, should be integrated into the development lifecycle. Finally, educate developers about secure coding practices related to input validation and output encoding in web applications.

Description

Salvo is a Rust web backend framework. Prior to version 0.88.1, the function list_html generate an file view of a folder which include a render of the current path, in which its inserted in the HTML without proper sanitation, this leads to reflected XSS using the fact that request path is decoded and normalized in the matching stage but not is inserted raw in the html view (current.path), the only constraint here is for the root path (eg. /files in the PoC example) to have a sub directory (e.g common ones styles/scripts/etc…) so that the matching return the list HTML page instead of the Not Found page. This issue has been patched in version 0.88.1.

References

Community reviews

Loading reviews…