CVE-2024-32468 Improper neutralization of input during web page generation ("Cross-site Scripting") in deno_doc HTML generator

Medium 5.4 Published Updated

Cross-site scripting in deno_doc allows code execution when generating HTML documentation from malicious input.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2024-32468?

CVE-2024-32468 is a medium-severity cross-site scripting vulnerability in denoland deno, published on 25 Nov 2024. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

Deno is a runtime for JavaScript and TypeScript written in rust. Several cross-site scripting vulnerabilities existed in the `deno_doc` crate which lead to Self-XSS with deno doc --html. 1.) XSS in generated `search_index.js`, `deno_doc` outputs a JavaScript file for searching. However, the generated file used `innerHTML` on unsanitzed HTML input. 2.) XSS via property, method and enum names, `deno_doc` did not sanitize property names, method names and enum names. The first XSS most likely didn't have an impact since `deno doc --html` is expected to be used locally with own packages.

Weakness: CWE-79

Which versions are affected by CVE-2024-32468?

2 open source packages ship an affected version, including deno_doc.

PackageAffectedFixed in
deno_doc crates.ioAll versions0.119.0
deno_doc crates.ioAll versions0.119.0

How do I fix CVE-2024-32468?

Upgrade deno_doc to 0.119.0 or later.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2024-32468 being exploited?

There is no known exploitation of CVE-2024-32468 in the wild and no public exploit code.

Sources

Also known as GHSA-qqwr-j9mm-fhw6.

Is CVE-2024-32468 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free