Vulnerability in Gohugoio Hugo
CVE-2026-100690
Hugo versions from v0.161.0 through v0.165.0 run Node.js tools (css.PostCSS, css.TailwindCSS, js.Babel) under the Node.js permission model to restrict file system reads to the project directory and configured mounts. Because the Node.js permission model validates only the lexical path and follows symbolic links that point outside the allowed set, Hugo did not detect symlinks escaping the sandbox. An attacker who can contribute content to a Hugo project (for example via a pull request) can commit a symlink such as assets/css/x.css -> /etc/passwd together with a PostCSS plugin that reads it, allowing any file readable by the Hugo build process to be disclosed and potentially embedded in the published site. This affects builds using the default security configuration; projects that do not invoke Node.js tools are unaffected. Fixed in v0.166.0, which scans allowed paths and fails the build when a symbolic link resolves outside them.
Published .
CVSS v3 metric
CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N.
EPSS exploit prediction
No EPSS score from FIRST.org yet. New CVEs usually get one within a few days; no score means no signal yet, not low risk. How EPSS works.
Affected products
Weakness classification (CWE)
References
- github.com/gohugoio/hugo/security/advisories/GHSA-x3mx-cm49-8m9c (vendor-advisory)
- www.vulncheck.com/advisories/hugo-0.161.0-to-0.165.0-arbitrary-file-read-via-sy… (third-party-advisory)
Frequently asked questions
- What is CVE-2026-100690?
- CVE-2026-100690 is a high-severity vulnerability in Gohugoio Hugo, classified under Improper Link Resolution Before File Access. CVSS score: 7.5/10. Published 2026-09-26.
- How severe is CVE-2026-100690?
- High severity. CVSS v3 base score is 7.5 out of 10.