{"schema_version":"1.9.0","id":"GHSA-q76j-gcg9-vxc6","published":"2026-06-19T17:45:27Z","modified":"2026-07-24T19:11:31.045540965Z","aliases":["CVE-2026-58402","GO-2026-5569"],"summary":"Hugo: XSS via unescaped code-fence language in default code block renderer","details":"Hugo's default code-block renderer wrote the Markdown code-fence language / info-string into the `<code class=\"language-…\" data-lang=\"…\">` wrapper without HTML escaping. A fence info-string containing a quote and a `<script>` payload breaks out of the attribute and injects a live script element.\n\nThis is not an issue if you fully trust every file under /content and every content adapter you load.","affected":[{"package":{"name":"github.com/gohugoio/hugo","ecosystem":"Go","purl":"pkg:golang/github.com/gohugoio/hugo"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.60.0"},{"fixed":"0.163.3"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-q76j-gcg9-vxc6/GHSA-q76j-gcg9-vxc6.json"}}],"references":[{"type":"WEB","url":"https://github.com/gohugoio/hugo/security/advisories/GHSA-q76j-gcg9-vxc6"},{"type":"PACKAGE","url":"https://github.com/gohugoio/hugo"}],"database_specific":{"cwe_ids":["CWE-79"],"github_reviewed":true,"github_reviewed_at":"2026-06-19T17:45:27Z","nvd_published_at":null,"severity":"MODERATE"},"severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N"}]}