Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate and gain mirror-config access
-
DeliveryConfigure LFS mirror to restricted endpoint
-
ExploitLFS client runs without migration transport
-
ExecutionRequest bypasses allowlist/SSRF protections
-
ImpactReach internal or blocked resource
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the ability to configure a repository push mirror or pull/sync mirror in Gitea and to control the associated LFS endpoint, so that the vulnerable code paths (runPushSync in mirror_push.go, runSync in mirror_pull.go) are exercised; the flaw only manifests for Git LFS push and sync-mirror requests, not for the general migration HTTP transport which was already protected. Limiting factors: the target instance must be running a version before 1.25.5, mirroring/migration functionality must be enabled, and the actor must reach the mirror-configuration workflow - which in default deployments is an authenticated, repository-privileged action rather than fully anonymous access, tempering the published PR:N assumption. |
| Impact | The signals conflict and warrant caution. The published CVSS 3.1 vector is 9.8 (AV:N/AC:L/PR:N/UI:N, C:H/I:H/A:H), but the vulnerability is an access-control/transport-restriction bypass affecting LFS traffic during mirror operations - configuring a push or sync mirror in Gitea normally requires an authenticated user with repository admin rights, so PR:N appears optimistic and the C:H/I:H/A:H 'total' impact likely reflects SSRF-style reachability of internal resources rather than direct remote code execution. SSVC aligns partially: Exploitation=none (no observed activity), Automatable=yes, Technical Impact=total, and EPSS is low at 0.17% (7th percentile), indicating no evidence of widespread exploitation. This is a real defense-in-depth regression worth patching - especially for instances that rely on migration allowlists to prevent SSRF into internal networks - but the 9.8 rating probably overstates real-world unauthenticated risk; the practical prerequisite of mirror-configuration access should be verified against your deployment. |
| Exploit ScenarioDerived | An authenticated user with rights to set up a repository push or sync mirror points the LFS endpoint at an internal address that the migration transport allowlist would normally block. Because the LFS client ran without the migration transport, Gitea issues the LFS request to that internal target on the attacker's behalf, enabling SSRF-style reach into the server's internal network. No public exploit code has been identified, and the network attack complexity is low. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 22, 2026
Migration transport protections in Gitea are bypassed for Git LFS operations, affecting all self-hosted instances before version 1.25.5. Because LFS push and sync-mirror requests instantiated their client with a nil HTTP transport (lfs.NewClient(endpoint, nil)) instead of the hardened migration transport, LFS traffic escaped the allowlist/SSRF restrictions the migration transport enforces, letting a user who can configure a repository mirror direct LFS requests to otherwise-blocked destinations. There is no public exploit identified at time of analysis and EPSS is low (0.17%), but SSVC rates technical impact as total and automatable, and a vendor patch is available.
RemediationAI
Vendor-released patch: upgrade to Gitea 1.25.5 or later (https://github.com/go-gitea/gitea/releases/tag/v1.25.5), which routes LFS push and sync-mirror requests through the migration HTTP transport via PRs https://github.com/go-gitea/gitea/pull/36665 and https://github.com/go-gitea/gitea/pull/36691. If immediate upgrade is not possible, reduce exposure by restricting who can create or configure repository mirrors (limit mirror/migration privileges to trusted admins) and, at the network layer, place the Gitea server behind egress firewall rules that deny outbound connections to internal/private ranges and cloud metadata endpoints (e.g. 169.254.169.254, RFC1918 ranges) so bypassed LFS requests cannot reach sensitive internal targets; the trade-off is that legitimate mirrors to internal Git/LFS hosts on those ranges will also be blocked. Review the ALLOWED_HOST_LIST / BLOCKED_HOST_LIST migration settings, but be aware that pre-patch these do not fully cover the LFS path, so network egress control is the more reliable stopgap.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Gitea is a self-hosted, lightweight Git service written in Go (cpe:2.3:a:gitea:gitea_open_source_git_server). It ships a dedicated 'migration HTTP transport' (services/migrations.NewMigrationHTTPTransport) whose purpose is to constrain outbound requests made on behalf of user-configured migrations/mirrors - for example enforcing allowed/blocked host and private-address restrictions that mitigate server-side request forgery. The root cause is CWE-284 (Improper Access Control): in services/mirror/mirror_pull.go (runSync) and services/mirror/mirror_push.go (runPushSync), the Git LFS client was created with a nil transport rather than the migration transport, so LFS object push and sync-mirror fetches did not inherit those protections. The fix (PRs #36665 and #36691) simply passes migrations.NewMigrationHTTPTransport() into lfs.NewClient for both code paths.
Know when Gitea gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Configuring a mirror requires an authenticated repo-privileged user (PR:L); the bypass primarily enables SSRF-style reach to blocked hosts (C:H), with limited integrity and no clear availability impact.
Primary rating from Vendor (Gitea).
CVSS VectorVendor: Gitea
Lifecycle Timeline
2DescriptionCVE.org
Gitea versions before 1.25.5 do not use the migration HTTP transport for LFS push and sync mirror operations, bypassing the configured migration transport protections for those LFS requests.
Executive ViewAI
Gitea self-hosted deployments before version 1.25.5 are vulnerable to a bypass of repository migration security controls, enabling Git LFS operations to reach network destinations that would normally be blocked by allowlist policies. Organizations running Gitea with users who manage repository mirrors face direct risk of data exfiltration or unauthorized access to internal systems. A vendor patch is available and requires immediate prioritization.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Remote code execution in Gitea (self-hosted Git service) via a code-injection flaw (CWE-94) allows attackers to run arbi
Broken access control in Gitea's Composer package registry (versions up to and including 1.26.1) lets remote attackers r
Gitea before 1.16.7 does not escape git fetch remote. Rated high severity (CVSS 7.5), this vulnerability is remotely exp
The git hook feature in Gitea 1.1.0 through 1.12.5 might allow for authenticated remote code execution in customer envir
Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') vulnerability in Gitea Gitea
Reverse-proxy authentication bypass in the official Gitea Docker image (versions up to and including 1.26.2) allows any
Path traversal in Gitea's Org-mode (`.org`) markup renderer allows an attacker who can get Org-mode content rendered by
Container escape in Gitea act_runner (Docker backend, through act 0.262.0) lets an authenticated user with workflow-exec
models/repo_mirror.go in Gitea before 1.7.6 and 1.8.x before 1.8-RC3 mishandles mirror repo URL settings, leading to rem
Server-side request forgery and internal repository exfiltration in Gitea before 1.27.0 lets a low-privileged authentica
Authorization bypass in Gitea versions 1.22.3 through 1.26.1 allows holders of `public-only` access tokens or OAuth gran
An issue was discovered in Gitea through 1.11.5. Rated high severity (CVSS 7.5), this vulnerability is remotely exploita
Same weakness CWE-284 – Improper Access Control
View allSame technique Authentication Bypass
View allVendor StatusVendor
SUSE
Severity: Critical| Product | Status |
|---|---|
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-41630
GHSA-rc56-rj3f-xggf
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB