High severity · published Jun 2, 2022
CVE-2021-32546
Missing input validation in internal/db/repo_editor.go in Gogs before 0.12.8 allows an attacker to execute code remotely
8.8
CVSS
2.2%
EPSS
No
On KEV
Description
Missing input validation in internal/db/repo_editor.go in Gogs before 0.12.8 allows an attacker to execute code remotely. An unprivileged attacker (registered user) can overwrite the Git configuration in his repository. This leads to Remote Command Execution, because that configuration can contain an option such as sshCommand, which is executed when a master branch is a remote branch (using an ssh:// URI). The remote branch can also be configured by editing the Git configuration file. One can create a new file in a new repository, using the GUI, with "\" as its name, and then rename this file to .git/config with the custom configuration content (and then save it).
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)2.2% · higher than 82% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
GO
Gogs · Gogs
before 0.12.8 · source: NVD
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2021-32546
CVE.org
https://www.cve.org/CVERecord?id=CVE-2021-32546
Release Notes
https://github.com/gogs/gogs/releases
Issue Tracking
https://github.com/gogs/gogs/security/advisories/GHSA-56j7-2pm8-rgmx
More from Gogs
8.8
CVE-2025-8110
File overwrite in file update API in Gogs
10.0
CVE-2026-52813
Gogs: Path Traversal in organization name results in RCE through Git hooks
9.9
CVE-2026-52806
Gogs: RCE via git rebase --exec argument injection in pull request merge
9.9
CVE-2024-39932
Gogs through 0.13.0 allows argument injection during the previewing of changes
9.9
CVE-2024-39931
Gogs through 0.13.0 allows deletion of internal files
