Gitea push mirror SSRF and forced writes to internal Git hosts
Gitea validated a push mirror's remote address against the `[migrations]` allow and block lists only when the mirror was created. Each synchronization passed the stored address directly to `git push`, so a name that later resolved to a blocked or internal address was still reached. A user with administrator access to a repository, which includes repositories they create themselves, could aim push mirror synchronization at internal Git services and force-push the repository's contents to them.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-89430US | — | — | ||
Gitea validated a push mirror's remote address against the `[migrations]` allow and block lists only when the mirror was created. Each synchronization passed the stored address dir… | ||||
references
External citations — patches, advisories, analysis.
- https://blog.gitea.com/release-of-28.0.0/ARTICLE
- https://github.com/go-gitea/gitea/pull/39010FIX
- https://github.com/go-gitea/gitea/pull/39426FIX
- https://github.com/go-gitea/gitea/releases/tag/v28.0.0ARTICLE
- https://github.com/go-gitea/gitea/security/advisories/GHSA-hcgw-r9gf-8mphADVISORY
- https://nvd.nist.gov/vuln/detail/CVE-2026-89430WEB
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan