Every CVE Search/ Get API key

CVE-2026-58402

Hugo default code block renderer XSS via unescaped code-fence language

5.1 MediumFix available

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
Passive

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
None

Exploit likelihood

0.30%Unchanged since Jul 7, 2026
90%50%10%1%

What each source reports

CVE List Score used 5.1

Hugo default code block renderer XSS via unescaped code-fence language

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
CVE-2026-58402
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Weakness
CWE-79
Updated
2026-11-02
EUVDEUVD-2026-41904 5.1

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
EUVD-2026-41904
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-q76j-gcg9-vxc6 5.1

Hugo: XSS via unescaped code-fence language in default code block renderer

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.

This is not an issue if you fully trust every file under /content and every content adapter you load.

Record
GHSA-q76j-gcg9-vxc6
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Weakness
CWE-79
Updated
2026-11-02
NVD 5.1

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
CVE-2026-58402
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSV 5.1

Hugo default code block renderer XSS via unescaped code-fence language

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
CVE-2026-58402
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Weakness
CWE-79
Updated
2026-11-02
OSVDEBIAN-CVE-2026-58402 5.4

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
DEBIAN-CVE-2026-58402
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
Show 5 moreShow less
OSVGHSA-q76j-gcg9-vxc6 5.1

Hugo: XSS via unescaped code-fence language in default code block renderer

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.

This is not an issue if you fully trust every file under /content and every content adapter you load.

Record
GHSA-q76j-gcg9-vxc6
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Weakness
CWE-79
Updated
2026-11-02
OSVJLSEC-2026-796 5.1

XSS via unescaped code-fence language in default code block renderer

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
JLSEC-2026-796
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVRHSA-2026:36862 6.8

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:36862
CVSS 3.1
6.8 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:N/A:N
Updated
2026-11-02
OSVUBUNTU-CVE-2026-58402 5.1

Hugo is a static site generator. From 0.60.0 until 0.163.3, Hugo's default code-block renderer wrote the Markdown code-fence language or 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. This issue is fixed in 0.163.3.

Record
UBUNTU-CVE-2026-58402
CVSS 4.0
5.1 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVGO-2026-5569 No score

Hugo: XSS via unescaped code-fence language in default code block renderer in github.com/gohugoio/hugo

Hugo: XSS via unescaped code-fence language in default code block renderer in github.com/gohugoio/hugo

Record
GO-2026-5569
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
github.com/gohugoio/hugo
Go
0.60.0 up to 0.163.3
0.163.3
hugo
Debian:12
All versions, plus listed versions
0.111.3-10.112.7-10.113.0-10.113.0-20.113.0-3
Show 45 moreShow less
0.114.1-10.114.1-20.115.4-10.116.1-10.117.0-10.118.2-10.119.0-10.119.0-20.120.3-10.120.4-10.121.1-10.121.2-10.122.0-10.123.3-10.123.7-10.123.8-10.123.8-20.124.1-10.125.4-10.125.5-10.125.6-10.125.7-10.126.1-10.126.2-10.126.3-10.127.0-10.128.2-10.128.2-20.129.0-10.129.0-20.130.0-10.130.0-20.131.0-10.131.0-20.150.0-10.150.1-10.151.0-10.151.1-10.151.2-10.152.1-10.152.2-10.153.0-10.153.1-10.153.1-20.153.1-3
None known
hugo
Debian:13
All versions, plus listed versions
0.131.0-10.131.0-20.150.0-10.150.1-10.151.0-1
Show 45 moreShow less
0.151.1-10.151.2-10.152.1-10.152.2-10.153.0-10.153.1-10.153.1-20.153.1-30.153.2-10.154.1-10.154.2-10.154.2-20.154.3-10.154.5-10.155.1-10.155.2-10.155.3-10.157.0-10.157.0-20.157.0-30.158.0-10.158.0-20.158.0-30.159.0-10.159.1-10.159.2-10.160.0-10.160.0-20.160.1-10.161.0-10.161.1-10.162.1-10.162.1-20.162.1-30.162.1-40.162.1-50.162.1-60.162.1-70.165.0-10.165.0-20.165.0-30.166.0-10.166.0-20.167.0-10.167.0-2
None known
hugo
Debian:14
before 0.165.0-1, plus listed versions
0.131.0-10.131.0-20.150.0-10.150.1-10.151.0-1
Show 38 moreShow less
0.151.1-10.151.2-10.152.1-10.152.2-10.153.0-10.153.1-10.153.1-20.153.1-30.153.2-10.154.1-10.154.2-10.154.2-20.154.3-10.154.5-10.155.1-10.155.2-10.155.3-10.157.0-10.157.0-20.157.0-30.158.0-10.158.0-20.158.0-30.159.0-10.159.1-10.159.2-10.160.0-10.160.0-20.160.1-10.161.0-10.161.1-10.162.1-10.162.1-20.162.1-30.162.1-40.162.1-50.162.1-60.162.1-7
0.165.0-1
Hugo_jll
Julia
before 0.163.3+0
0.163.3+0
hugo
Red Hat:hummingbird:1
From an advisory covering 4 CVEs
before 0:0.163.3-0.1.hum1
0:0.163.3-0.1.hum1
hugo
Ubuntu:16.04:LTS
All versions, plus listed versions
0.15+git20160109.147.dd1d655-10.15+git20160109.147.dd1d655-20.15+git20160128.179.5def6d9-10.15+git20160206.203.ed23711-1
None known
hugo
Ubuntu:18.04:LTS
All versions, plus listed versions
0.25.1-20.26-10.35-10.37.1-10.38-10.39-10.40-10.40.1-1
None known
hugo
Ubuntu:20.04:LTS
All versions, plus listed versions
0.57.2-10.58.3-10.59.1-1.10.68.3-1
None known
hugo
Ubuntu:22.04:LTS
All versions, plus listed versions
0.80.0-60.89.4-20.90.0-10.90.1-10.91.0-1
Show 5 moreShow less
0.91.2-10.92.0-10.92.1-1build10.92.2-10.92.2-1ubuntu0.1
None known
Show 4 moreShow less
Affected packages
PackageAffectedFixed
hugo
Ubuntu:Pro:24.04:LTS
All versions, plus listed versions
0.113.0-30.119.0-20.120.3-10.120.4-10.121.2-1
Show 8 moreShow less
0.122.0-10.123.7-1build10.123.7-1ubuntu0.10.123.7-1ubuntu0.20.123.7-1ubuntu0.2+esm10.123.7-1ubuntu0.30.123.7-1ubuntu0.3+esm10.123.7-1ubuntu0.3+esm2
None known
hugo
Ubuntu:25.10
All versions, plus listed versions
0.131.0-1
None known
hugo
Ubuntu:26.10
All versions, plus listed versions
0.154.5-10.162.1-50.162.1-7
None known
hugo
Ubuntu:26.04:LTS
All versions, plus listed versions
0.131.0-10.152.2-10.153.1-30.153.2-10.154.2-20.154.3-10.154.5-1
None known

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-58402 is a medium vulnerability (CVSS 5.1) in Gohugo Hugo, published June 19, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.30%, the 22nd percentile. Fixed in github.com/gohugoio/hugo 0.163.3.

References

Show 32 moreShow less
This page doesn't list everything

Left out here: 47 versions. The JSON record has them.

MoveEnter Open