Vulnerability advisory
GHSA-4j89-2c4f-44c6
Gogs has DoS in rendering issue index pattern
Also known as CVE-2026-52796GO-2026-5124
Severity
- CVSS 3.x
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L
Affected versions
| Affected | Fixed in |
|---|---|
| All versions before 0.14.3 | 0.14.3 |
Description
Summary
Special template of issue index pattern may cause panic.
Details
in internal/markup/markup.go
link = fmt.Sprintf(`<a href="%s">%s</a>`, com.Expand(metas["format"], metas), m)
Issue index pattern is rendered to link with com.Expand.
However, com.Expand is not safe.
i = strings.Index(template, "}")
if s, ok := match[template[:i]]; ok {
when { is found but } not found, i comes to 1, template[:-1] will be called, and then panicked
[image: image]
finally, all pages than contains issue index are unavailable.
PoC
- set issue index pattern as follow
[image: image]
- add a commit which point to an issue in its msg
[image: image]
using #1 above
Impact
DoS that cause part of pages of the specify repo unavailable.