CVE-2026-26307: Gitea Git Grep Denial-of-Service (Timeout Bypass)
Gitea, a self-hosted Git service, has a vulnerability in versions before 1.25.5 where git grep searches do not have a timeout limit. An attacker can submit expensive or deliberately complex search queries that cause the server to consume excessive CPU and memory, degrading performance or causing service outages without needing authentication.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Weaknesses (CWE)
- CWE-400
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-03 / 2026-07-09
NVD description (verbatim)
Gitea versions before 1.25.5 do not enforce a timeout on git grep searches, allowing expensive searches to consume server resources.
4 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-26307 is a denial-of-service vulnerability rooted in missing timeout enforcement on git grep operations within Gitea. The grep functionality allows unauthenticated users to initiate resource-intensive searches over repository contents. Without a server-side timeout, these searches can run indefinitely or for extremely long periods, exhausting CPU cycles, memory, and I/O capacity. The issue is classified under CWE-400 (Uncontrolled Resource Consumption), a pattern common in search and query features that lack rate-limiting or execution time constraints.
Business impact
Organizations running self-hosted Gitea instances become vulnerable to availability attacks. An attacker can repeatedly submit expensive grep queries, starving legitimate developers of service access, disrupting CI/CD pipelines, code reviews, and repository operations. For teams relying on Gitea as their primary collaboration platform, extended downtime directly impacts productivity and may delay security patches or critical fixes if developers cannot access code or submit changes.
Affected systems
Gitea versions prior to 1.25.5 are affected. This includes all stable and development releases up to 1.25.4. Administrators should verify their running version via the Gitea web interface (Administration > System) or by checking the binary/container tag used in deployment. Self-hosted instances are at direct risk; Gitea.com and other commercial hosting may have already applied mitigations.
Exploitability
This vulnerability is trivially exploitable. No authentication is required, no special tools are needed beyond standard HTTP requests, and the attack surface is the public grep endpoint available to all unauthenticated users. An attacker can craft a malicious search query using regex or large dataset patterns to trigger expensive operations. The low attack complexity and network accessibility mean this can be exploited at scale, making it an attractive target for disruptive attacks.
Remediation
Upgrade Gitea to version 1.25.5 or later. The patch introduces server-side timeout controls on grep operations, preventing unbounded resource consumption. Organizations should plan upgrades promptly given the trivial exploitability. For interim risk reduction, consider network-level rate-limiting on the Gitea API endpoint or implementing authentication requirements on search functions if your workflow permits.
Patch guidance
1. Review your current Gitea version in the administrative panel or container manifest. 2. Test Gitea 1.25.5 or later in a staging environment to ensure compatibility with existing repositories, plugins, and workflows. 3. Plan a maintenance window for upgrade; most upgrades are backward-compatible but verify any custom hooks or integrations. 4. After upgrade, confirm timeout parameters are in effect by reviewing Gitea's configuration file or logs. 5. Monitor server resource usage patterns post-upgrade to validate that grep operations no longer spike CPU/memory unexpectedly.
Detection guidance
Monitor Gitea access logs for unusual patterns: multiple grep requests from a single IP, rapid successive searches with complex regex, or searches targeting very large repositories. Elevated CPU and memory usage without corresponding legitimate user activity (confirmed via access logs or user interaction patterns) may indicate active exploitation. Enable slow-query logging in Gitea if available, or instrument the operating system to track git grep process execution times. Alert on processes running longer than your normal search baseline (typically seconds, rarely minutes).
Why prioritize this
This vulnerability merits urgent patching despite moderate severity metrics because it requires zero authentication, affects availability directly, and is trivially exploitable by any network-adjacent attacker. Gitea administrators should prioritize this above vulnerabilities with lower exploitability or those requiring authentication or user interaction. The short upgrade path (single patch version) and lack of complex compatibility concerns make it practical to prioritize.
Risk score, explained
The CVSS 3.1 score of 7.5 (HIGH) reflects high availability impact (A:H), no authentication required (PR:N), and network accessibility (AV:N). The score does not account for ease of discovery or attack prevalence; in practice, this vulnerability's lack of prerequisites and straightforward exploitation may warrant consideration of a higher operational priority than the base score alone suggests, particularly for public-facing or externally accessible Gitea instances.
Frequently asked questions
Do I need to authenticate to exploit this vulnerability?
No. Git grep searches are accessible without authentication in default Gitea configurations, meaning any network user can trigger expensive searches and cause denial of service.
Will upgrading to 1.25.5 break my existing workflows or repositories?
No. Version 1.25.5 introduces timeout enforcement on grep operations but does not change the grep functionality itself or repository formats. Existing searches will work as before, except expensive ones will now terminate after the timeout period rather than running indefinitely.
If I cannot upgrade immediately, what controls can I implement?
Network-level rate-limiting on grep API endpoints, IP whitelisting if Gitea access is restricted to internal users, or enforcing authentication on search features are interim measures. However, these are workarounds; upgrading to 1.25.5 remains the proper fix.
How can I tell if I have been exploited?
Review Gitea access logs for frequent grep requests from single IPs, check system resource utilization (CPU/memory) for unexpected spikes correlating with search activity, and enable detailed logging in Gitea to identify long-running grep operations. Contact forensics if you observe repeated outages without clear cause.
This analysis is based on CVE-2026-26307 as published in the National Vulnerability Database and Gitea security advisories. Readers should verify all patch versions, vendor advisories, and compatibility notes against official Gitea documentation and releases. SEC.co provides this intelligence for informational and remediation planning purposes; no liability is assumed for organizations' implementation decisions or outcomes. Test patches in non-production environments before deployment. Source: NVD (public-domain), retrieved 2026-08-12. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2023-54365HIGHTraefik HTTP/2 Denial of Service Vulnerability – Rapid Reset Attack
- CVE-2024-14036HIGHDräger Core Denial of Service via Malformed SDC Messages
- CVE-2025-52293HIGHGPAC MP4Box HEVC Parser Denial of Service (CVSS 7.5)
- CVE-2025-53114HIGHCometD Denial-of-Service via Unacknowledged Message Queue Overflow
- CVE-2025-61025HIGHOpenLink Virtuoso 7.2.11 Remote DoS via SQL Query Parsing
- CVE-2026-10069HIGHShibby Tomato miniupnpd Resource Exhaustion Vulnerability
- CVE-2026-10143HIGHkafka-python SCRAM DoS – Event Loop Freeze Vulnerability
- CVE-2026-12151HIGHundici WebSocket Memory Exhaustion DoS Vulnerability