Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend GET /{username}/-/repositories with a user name
-
ExploitHandler dereferences nil organization and panics
-
ImpactServer returns HTTP 500 and logs panic trace
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
|
| Exploitation Conditions | No special conditions - remote unauthenticated exploitation against default configurations of Gitea (≤28.1.0): the description explicitly states the request needs no authentication and no special configuration. The specific prerequisite is simply requesting the organization home route /{username}/-/repositories with a path segment that resolves to an individual user account rather than an organization, which drives the handler into a nil-organization dereference. The limiting factor is impact scope: each request only yields a recovered HTTP 500 plus a logged panic rather than a full server crash, so availability degradation is confined to error responses and log growth. |
| Impact | This is a genuine but low-to-moderate priority issue. The CVSS vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L, base 5.3) correctly reflects an unauthenticated, network-reachable, low-complexity flaw whose only impact is partial availability - no confidentiality or integrity loss. All exploitation signals point away from urgency: EPSS is 0.19% (8th percentile), not in CISA KEV, and no public exploit identified at time of analysis. SSVC aligns with this (Exploitation: none, Technical Impact: partial) though it rates Automatable: yes, which is consistent with a trivially scriptable single-request trigger. The impact is self-limiting: per the description the server recovers with an HTTP 500 and merely logs a panic per request rather than crashing, so this is request-level error generation and log noise, not a persistent outage - the A:L (not A:H) rating is appropriate. Note the input Tags label this 'Information Disclosure', which contradicts the CVSS vector (C:N) and CWE-248 (uncaught exception); this is an availability/denial-of-service bug, not disclosure. |
| Exploit ScenarioDerived | An unauthenticated attacker sends an HTTP GET to /{username}/-/repositories using an individual user's name rather than an organization. The organization home handler dereferences a nil organization and panics, returning HTTP 500 and writing a panic stack trace to the server log. Repeated automated requests generate continuous log noise and wasted error handling, but no code execution or data exposure occurs; no public PoC is identified. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Unauthenticated requests to Gitea's organization home route can trigger a nil-pointer panic and HTTP 500 when the path segment resolves to an individual user instead of an organization. The issue affects Gitea through 28.1.0 and is fixed in 28.2.0; it requires no authentication or special configuration, but each request causes only per-request availability degradation (error response and logged panic), not a full service crash. EPSS is 0.19% (8th percentile) and no public exploit has been identified at time of analysis.
RemediationAI
Upgrade to Gitea 28.2.0 or later, the vendor-released fixed version; see GHSA-c3cr-qq9g-666c (https://github.com/go-gitea/gitea/security/advisories/GHSA-c3cr-qq9g-666c) and the 28.2.0 release notes (https://blog.gitea.com/release-of-28.2.0/ and https://github.com/go-gitea/gitea/releases/tag/v28.2.0). The fix makes the route return 404 for individual users. No vendor configuration toggle or workaround is identified, so if upgrading is delayed, place a reverse-proxy/WAF rule in front of Gitea to rate-limit or reject unauthenticated requests to /{username}/-/repositories where {username} maps to an individual account; this is imperfect because the same route serves legitimate organization pages and account mapping must be maintained. Also alert on HTTP 500 and panic log entries for this route, understanding that monitoring detects but does not prevent the per-request availability impact.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in 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 Go-based self-hosted Git service. CWE-248 (Uncaught Exception) describes the root cause: the organization home handler for /{username}/-/repositories assumes the named account is an organization and dereferences the organization object without first checking that it exists or has the expected type. When {username} is an individual user, that object is nil, causing a runtime panic in the Go handler; the HTTP stack recovers the panic per request and returns 500 while logging it. The CPE cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:* and EUVD range 0 ≤28.1.0 identify Gitea through 28.1.0 as affected. The feed tag 'Information Disclosure' should not be read as data exposure: the assessed vector is C:N/I:N/A:L, so the confirmed impact is availability-only and limited to failed requests and log growth.
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:N/I:N/A:L
Remote unauthenticated single request with no user interaction triggers the panic (AV:N/AC:L/PR:N/UI:N); only availability is partially affected as the server returns 500 and recovers (A:L, C:N/I:N).
Primary rating from Vendor (Gitea).
CVSS VectorVendor: Gitea
Lifecycle Timeline
2DescriptionCVE.org
Requesting /{username}/-/repositories for an individual user instead of an organization made the organization home handler dereference a nil organization and panic. The request needs no authentication and no special configuration. The server answered with an HTTP 500 error and logged a panic for each request; the fix returns 404 for individual users.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
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
Authenticated command injection in Dokploy (self-hostable PaaS) versions 0.29.3 through 0.29.12 lets a low-privileged us
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
EUVD-2026-103984
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB