Description
Gogs is an open source self-hosted Git service. In version 0.13.3 and prior, 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 and the execution of git push. As a result, a token with read-only permission can be used to modify repository contents. This issue has been patched in versions 0.13.4 and 0.14.0+dev.
Published: 2026-02-06
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized repository modification via read‑only token
Action: Patch immediately
AI Analysis

Impact

The vulnerability allows a user possessing only read‑only permissions to modify the contents of a repository by sending a "PUT /repos/:owner/:repo/contents/*" request. After passing a lax permission check, the backend commits and pushes the changes, thereby granting an attacker the ability to alter, add or delete files in the target repository. This grants the attacker significant impact on confidentiality and integrity of the repository content without requiring elevated privileges.

Affected Systems

The issue afflicts Gogs versions 0.13.3 and earlier. The fix is included in versions 0.13.4 and 0.14.0+, and later developments. Users running any older version should review their deployment and confirm the vulnerability applies.

Risk and Exploitability

The CVSS score of 6.5 indicates medium severity, while the EPSS score of less than 1% points to a very low exploitation probability at the time of analysis. The vulnerability is not listed in the CISA KEV catalog, suggesting no confirmed widespread exploitation yet. The likely attack vector is a compromised read‑only token, a credential that an attacker may obtain through phishing or credential reuse. If such a token is used by an attacker to call the vulnerable endpoint, they can modify repository contents, potentially injecting malicious code or disrupting service.

Generated by OpenCVE AI on April 17, 2026 at 22:39 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Gogs to version 0.13.4 or any later 0.14.0+dev release where the permission check is corrected
  • Revoke or tightly scope any existing read‑only access tokens that have repository access and verify that only tokens with explicit write permissions can call the update content endpoint
  • As an interim measure, audit and restrict API access for read‑only tokens by disabling the vulnerable endpoint or adding an authorization filter to enforce write‑level checks

Generated by OpenCVE AI on April 17, 2026 at 22:39 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-5qhx-gwfj-6jqr Gogs user can update repository content with read-only permission
History

Tue, 17 Feb 2026 22:00:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:gogs:gogs:*:*:*:*:*:*:*:*

Mon, 09 Feb 2026 11:00:00 +0000

Type Values Removed Values Added
First Time appeared Gogs
Gogs gogs
Vendors & Products Gogs
Gogs gogs

Fri, 06 Feb 2026 19:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 06 Feb 2026 18:00:00 +0000

Type Values Removed Values Added
Description Gogs is an open source self-hosted Git service. In version 0.13.3 and prior, 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 and the execution of git push. As a result, a token with read-only permission can be used to modify repository contents. This issue has been patched in versions 0.13.4 and 0.14.0+dev.
Title Gogs user can update repository content with read-only permission
Weaknesses CWE-862
CWE-863
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-02-06T18:54:15.180Z

Reserved: 2026-01-14T16:08:37.482Z

Link: CVE-2026-23632

cve-icon Vulnrichment

Updated: 2026-02-06T18:54:11.066Z

cve-icon NVD

Status : Analyzed

Published: 2026-02-06T18:15:56.553

Modified: 2026-02-17T21:53:45.123

Link: CVE-2026-23632

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-17T22:45:29Z

Weaknesses