GitHub Advisoryadvisory · Go

GHSA-vgvf-m4fw-938j Gogs: Stored XSS in branch and wiki views through author and committer names

MEDIUM Published 2026-03-05 Modified 2026-03-05 Official page ↗
Aliases
CVE-2026-26195
Ecosystem
Go
Packages
gogs.io/gogs
Severity
Moderate
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Weaknesses
CWE-79
Reviewed
2026-03-05

Affected packages

• Go gogs.io/gogs: <= 0.13.3 (no fix yet)

Description

Summary Stored XSS is still possible through unsafe template rendering that mixes user input with `safe()` plus permissive sanitizer handling of data URLs. Details `safe()` still turns off escaping: • internal/template/template.go • `func safe(raw string) template.HTML { return template.HTML(raw) }` Branch pages still render committer names using `safe()`: • templates/repo/branches/overview.tmpl • templates/repo/branches/all.tmpl • templates/repo/wiki/view.tmpl The locale still injects a raw second argument: conf/locale/locale_en-US.ini (`branches.updated_by = updated %[1]s by %[2]s`) Impact An attacker who can inject commit metadata such as author/committer name can trigger script execution on affected pages, leading to session abuse, CSRF token theft, or unauthorized actions. Recommended Fix • Untrusted arguments should be escaped before being used in translations. • Data URLs should be limited or blocked in the sanitizer. Remediation A fix is available at https://github.com/gogs/gogs/releases/tag/v0.14.2.

Related

Alias · CVE (1)

  • CVE-2026-26195 Gogs is an open source self-hosted Git service. vulnerability

Weakness · CWE (1)

  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References