Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-5qhx-gwfj-6jqr

Опубликовано: 06 фев. 2026
Источник: github
Github: Прошло ревью
CVSS3: 6.5

Описание

Gogs user can update repository content with read-only permission

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

Пакеты

Наименование

gogs.io/gogs

go
Затронутые версииВерсия исправления

<= 0.13.3

0.13.4

EPSS

Процентиль: 11%
0.00037
Низкий

6.5 Medium

CVSS3

Дефекты

CWE-862
CWE-863

Связанные уязвимости

CVSS3: 6.5
nvd
2 дня назад

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.

EPSS

Процентиль: 11%
0.00037
Низкий

6.5 Medium

CVSS3

Дефекты

CWE-862
CWE-863