Skip to main content

Gitea EUVDEUVD-2026-93921

| CVE-2026-96399 HIGH
Out-of-bounds Read (CWE-125)
2026-10-06 88ee5874-cf24-4952-aea0-31affedb7ff2
7.5
CVSS 3.1 · Vendor: 88ee5874-cf24-4952-aea0-31affedb7ff2
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate and open repository settings
  2. Delivery
    Configure crafted external tracker regex with alternating capture groups
  3. Exploit
    Trigger rendering of matching content (e.g. view README)
  4. Execution
    Invalid slice index causes runtime panic
  5. Impact
    Gitea process crashes, denying service to all users

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK

1 technique across 1 tactic: Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an actor who can edit a repository's external issue tracker settings (a repository administrator; on instances allowing self-service repo creation, effectively any authenticated user via their own repo) and who sets a malicious external-tracker regular expression using alternating capture groups. The crash then fires whenever matching content is rendered for any viewer, such as a README. Limiting factors: the external issue tracker must be configurable by the attacker and populated with the crafted regex (not a default configuration), and privileges over repo settings are needed - so despite the input's PR:N, this is not exploitable against a default install by a fully anonymous attacker unless open registration plus repo creation is permitted.

Impact

Signals here are moderate and partly conflicting. The authoritative CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5) scores this as a remotely reachable, no-privilege, availability-only flaw. However, the description explicitly states the attacker must be 'a user who can edit a repository's external issue tracker settings,' which is a repo-administrator action - so PR:N likely understates the privilege requirement and should be treated as PR:L/PR:H; this conflict should be verified against the GHSA advisory. The exploitation-likelihood signals are low-to-moderate: EPSS is 0.16% (4th percentile), SSVC reports Exploitation:none and Technical Impact:partial, and there is no CISA KEV listing - so there is no evidence of active exploitation (no public exploit identified at time of analysis). The mitigating privilege requirement is offset by a serious scope consideration: a single malicious repo configuration causes a runtime panic that terminates the whole Gitea process, denying service to ALL users of the instance, and SSVC marks it Automatable:yes. Net: this is a credible denial-of-service priority for multi-tenant/open-registration Gitea instances but not an emergency wormable network bug - it is lower real-world risk than the 7.5 'network/unauthenticated' reading alone implies, because an attacker first needs the ability to configure a repo's external tracker.

Exploit ScenarioDerived

An attacker with the ability to configure a repository's external issue tracker (a repo admin, or any registered user on an open-registration instance using their own repo) sets a crafted external-tracker regular expression that uses alternating capture groups. When any user subsequently views content that matches the pattern - for example rendering that repository's README - Gitea computes invalid slice indexes and panics, terminating the process and taking the entire instance offline for all users. No public exploit is identified at time of analysis, though the upstream fix diff (PR #39354) reveals the root cause (unvalidated capture-group index in FindRenderizableReferenceRegexp).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 07, 2026

Gitea instances up to and including 1.27.3 can be crashed by a repository administrator who configures an external issue tracker link format whose regular expression uses alternation with separate capture groups; the resulting invalid slice index triggers a Go runtime panic that terminates the Gitea process, and because rendering is triggered on later page views (for example a README containing matching text), the crash hits every user of the instance, not just the configurator. Exploitation requires an actor able to edit a repository's external issue tracker settings - on instances that permit self-service repository creation this effectively means any authenticated user on their own repository - so the practical barrier is configuration privilege rather than anonymity. Independent signals are moderate and partly conflicting: EPSS is only 0.16% (4th percentile), CISA SSVC rates exploitation as 'none' with partial technical impact, no CISA KEV listing or public exploit code has been identified at time of analysis, and a vendor fix ships in Gitea 28.0.0.

RemediationAI

Upgrade to Gitea 28.0.0, which is the vendor-released patch containing the fix from PR 39354 and described in the advisory at https://github.com/go-gitea/gitea/security/advisories/GHSA-mw6q-qj47-9g5q and the release announcement at https://blog.gitea.com/release-of-28.0.0/. If the upgrade cannot be applied immediately, reduce exposure by restricting who can create repositories and edit repository settings (for example disable self-service repository creation or require admin approval), since the attacker needs write access to a repository's external issue tracker configuration; this trade-off limits normal user onboarding and delegated repository management. As a narrower compensating control, administrators can audit existing repositories and remove or disable the external issue tracker unit on any repo whose link format uses a regex with alternation and multiple capture groups - disabling the unit breaks links to the external tracker for those repositories but eliminates the render-time panic path. Note that the patched code renames the render meta key from 'format' to 'externalTrackerLinkFormat' and introduces 'internalTrackerEnabled', so any custom templates or themes that reference the old 'format' meta should be reviewed after upgrading.

Affected VersionsENISA

Gitea 0 ≤1.27.3

Affected Packages

euvd gitea no fix

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

The flaw lives in Gitea's issue-reference markup pipeline, specifically modules/references/references.go and modules/markup/html_issue.go, which convert text such as '#123' or custom external-tracker patterns into links while rendering Markdown and other markup. Gitea stores the external issue tracker's URL/pattern in repository unit config and compiles it as a Go regexp; when a Go regexp contains alternation with multiple capture groups (for example (\d+):|TEST-(\d+)), only the group that actually participated in a given match has valid start/end offsets in the match slice - non-participating groups are reported as -1. The vulnerable code assumed the first capture group (match[2]) always matched and used those offsets directly to slice the content string, so an unmatched group produced a negative slice index and a runtime panic; the upstream fix (PR 39354) instead scans the capture-group pairs from index 2 upward and selects the first group whose start offset is non-negative, returning nil when none participated. This is tracked as CWE-125 (out-of-bounds read) because the panic originates from an out-of-range slice access, and the same commit renames the render meta key 'format' to 'externalTrackerLinkFormat' and adds an 'internalTrackerEnabled' meta so that internal and external tracker link handling are distinguished. Note that the input CVSS vector rates this PR:N, but the authoritative assessment rates PR:L, since the attacker must control repository external-tracker configuration; the scope is changed (S:C) because the panic terminates the shared server process and affects other users' availability.

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

Vendor (88ee5874-cf24-4952-aea0-31affedb7ff2) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.7 HIGH

Configuring a repo's external tracker requires an authenticated low-privilege user (PR:L), and the panic kills the whole process affecting all users beyond the attacker's repo (S:C); availability-only impact (A:H).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H

Primary rating from Vendor (88ee5874-cf24-4952-aea0-31affedb7ff2).

CVSS VectorVendor: 88ee5874-cf24-4952-aea0-31affedb7ff2

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

3
CVSS changed
Oct 07, 2026 - 21:23 NVD
7.5 (None) 7.5 (HIGH)
CVE Published
Oct 06, 2026 - 20:17 cve.org
UNKNOWN (no severity yet)
CVE Published
Oct 06, 2026 - 20:17 cve.org
HIGH 7.5

DescriptionCVE.org

A repository's external issue tracker regular expression containing alternating capture groups could produce invalid slice indexes when Gitea rendered issue references, causing a runtime panic that terminated the Gitea process. A user who can edit a repository's external issue tracker settings could make any later rendering of matching content, such as viewing a README, crash the instance for all users.

Technical POC Analysis

The flaw is an out-of-bounds read (CWE-125) that becomes an uncaught exception (CWE-248, per the advisory's dual weakness listing).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Gitea versions through 1.27.3 contain a high-severity availability flaw that can cause a full instance outage when crafted external issue tracker settings are rendered. Because the crash affects all users of the affected instance, development and collaboration services may become unavailable until the process is restarted. No vendor-released patch identified at time of analysis, and no public exploit identified at time of analysis, so leadership should prioritize inventory and privilege reduction.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict external issue tracker configuration to trusted administrators; disable self-service repository creation where feasible; review and sanitize existing external issue tracker link-format regular expressions; monitor Gitea processes for unexpected termination and configure automatic restart; and apply the vendor patch once released.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Medium
popular self-hosted Git service, widely used but not universal
Data Quality
7 sources
Confidence: High

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

More in Gitea

View all
CVE-2026-60004 CRITICAL POC
9.8

Remote code execution in Gitea (self-hosted Git service) via a code-injection flaw (CWE-94) allows attackers to run arbi

CVE-2026-27771 HIGH POC
8.2 Jul 03

Broken access control in Gitea's Composer package registry (versions up to and including 1.26.1) lets remote attackers r

CVE-2022-30781 HIGH POC
7.5 May 16

Gitea before 1.16.7 does not escape git fetch remote. Rated high severity (CVSS 7.5), this vulnerability is remotely exp

CVE-2020-14144 HIGH POC
7.2 Oct 16

The git hook feature in Gitea 1.1.0 through 1.12.5 might allow for authenticated remote code execution in customer envir

CVE-2024-6886 CRITICAL POC
10.0 Aug 06

Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') vulnerability in Gitea Gitea

CVE-2026-20896 CRITICAL POC
9.8 Jul 03

Reverse-proxy authentication bypass in the official Gitea Docker image (versions up to and including 1.26.2) allows any

CVE-2026-59774 CRITICAL POC
9.8

Path traversal in Gitea's Org-mode (`.org`) markup renderer allows an attacker who can get Org-mode content rendered by

CVE-2026-58053 CRITICAL POC
9.4 Jun 28

Container escape in Gitea act_runner (Docker backend, through act 0.262.0) lets an authenticated user with workflow-exec

CVE-2019-11229 HIGH POC
8.8 Apr 15

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

CVE-2026-57894 HIGH POC
8.5 Jul 21

Server-side request forgery and internal repository exfiltration in Gitea before 1.27.0 lets a low-privileged authentica

CVE-2026-24791 HIGH POC
8.1 Jun 17

Authorization bypass in Gitea versions 1.22.3 through 1.26.1 allows holders of `public-only` access tokens or OAuth gran

CVE-2020-13246 HIGH POC
7.5 May 20

An issue was discovered in Gitea through 1.11.5. Rated high severity (CVSS 7.5), this vulnerability is remotely exploita

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy