GitHub Advisoryadvisory · Go

GHSA-5qhx-gwfj-6jqr Gogs user can update repository content with read-only permission

MEDIUM Published 2026-02-06 Modified 2026-02-06 Official page ↗
Aliases
CVE-2026-23632
Ecosystem
Go
Packages
gogs.io/gogs
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Weaknesses
CWE-862, CWE-863
Reviewed
2026-02-06

Affected packages

• Go gogs.io/gogs: < 0.13.4 → fixed in 0.13.4

Description

Vulnerability Description The endpoint `PUT /repos/:owner/:repo/contents/*` does not require write permissions and allows access with read permission only via `repoAssignment()`. After passing the permission check, `PutContents()` invokes `UpdateRepoFile()`, which results in: • Commit creation • Execution of `git push` As a result, a token with read-only permission can be used to modify repository contents. --- Attack Prerequisites • Possession of a valid access token • Read permission on the target repository (public repository or collaborator with read access) --- Attack Scenario 1. The attacker accesses the target repository with a read-only token 2. The attacker sends a `PUT /contents` request to update an arbitrary file 3. The server creates a commit and performs a git push on behalf of the attacker --- Potential Impact • Source code tampering • Injection of backdoors • Compromise of release artifacts and distributed packages

Related

Alias · CVE (1)

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

Weakness · CWE (2)

  • CWE-862 Missing Authorization weakness
  • CWE-863 Incorrect Authorization weakness

References