XSS in Gohugo Hugo
CVE-2026-100691
Hugo versions 0.75.0 through 0.165.x contain a stored cross-site scripting vulnerability: the syntax highlighter does not escape the `lineAnchors` option before passing it to Chroma, which writes the value verbatim into the `id` and `href` attributes of the generated line-number markup. A crafted `lineAnchors` value supplied as a Markdown code fence attribute (or passed to the `highlight` template function) results in unescaped HTML in the rendered page, allowing arbitrary JavaScript to execute in the browsers of visitors to the generated site. This affects sites that build and publish Markdown from untrusted contributors; Hugo's security model otherwise considers content trusted input. Fixed in 0.166.0, where the `lineAnchors` value is HTML-escaped before being passed to Chroma.
Vulnerability class: XSS (Cross-Site Scripting)
Published · last modified .
CVSS v3 metric
CVSS v3 base score 5.4 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N.
EPSS exploit prediction
EPSS: 0.002 (6.6th percentile), scored .
Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 7th percentile — 6.6% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.002 · newest: 0.002 · change: 0.000
Affected products
Weakness classification (CWE)
References
- GitHub Security Advisory (GHSA-q4xf-287f-98r8) (vendor-advisory, Vendor Advisory)
- VulnCheck Advisory: Hugo before 0.166.0 Stored XSS via lineAnchors code block option (Third Party Advisory, third-party-advisory)
Frequently asked questions
- What is CVE-2026-100691?
- CVE-2026-100691 is a medium-severity vulnerability in Gohugo Hugo, classified under Cross-site Scripting. CVSS score: 5.4/10. Published 2026-09-26.
- How severe is CVE-2026-100691?
- Medium severity. CVSS v3 base score is 5.4 out of 10.