MEDIUM 5.3

CVE-2026-25782: Gitea Authorization Bypass in Time-Tracking Deletion

Gitea, a popular self-hosted Git service, has a flaw in how it validates permissions when users attempt to delete time-tracking entries. The vulnerability allows an attacker to delete time entries that belong to a different issue than the one being accessed, bypassing the expected scope restriction. This occurs in versions before 1.25.5 and requires no special privileges or user interaction to exploit.

Source data · NVD / CISA · public domain

CVSS
3.1 · 5.3 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weaknesses (CWE)
CWE-639
Affected products
0 configuration(s)
Published / Modified
2026-07-03 / 2026-07-07

NVD description (verbatim)

Gitea versions before 1.25.5 look up tracked-time entries by time ID without scoping the lookup to the issue in the request URL, allowing deletion attempts to target entries from another issue.

4 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-25782 is an authorization bypass vulnerability in Gitea's time-tracking feature. The root cause is insufficient scope validation during time-entry deletion operations. When a DELETE request targets a tracked-time entry by ID, the application fails to verify that the entry belongs to the issue specified in the request URL. An attacker can craft requests to delete time entries from arbitrary issues by manipulating the time ID parameter, regardless of which issue context the request appears to come from. The vulnerability affects all versions prior to 1.25.5 and is classified as CWE-639 (Authorization Bypass Through User-Controlled Key).

Business impact

This vulnerability primarily impacts teams using Gitea for project management and time tracking. While the integrity impact is limited to time-tracking data rather than code or credentials, unauthorized deletion of time entries can disrupt billing workflows, project forecasting, and audit trails. For organizations that integrate time-tracking data with payroll or client billing systems, this poses a moderate risk. The lack of authentication requirements means external attackers can exploit it without insider access, making it relevant to any publicly exposed or network-accessible Gitea instance.

Affected systems

Gitea versions before 1.25.5 are vulnerable. This includes all 1.24.x, 1.23.x, and earlier releases. Self-hosted Gitea deployments are the primary attack surface; the severity depends on whether the instance is exposed to untrusted networks. Organizations running Gitea behind firewalls with restricted network access face lower risk than those with public-facing instances. Verify your current Gitea version in the administration panel under System Settings.

Exploitability

The vulnerability is straightforward to exploit. It requires only network access to the Gitea API endpoint (no authentication needed), knowledge of a valid time entry ID, and the ability to send a DELETE request. An attacker can enumerate time-entry IDs or obtain them through prior reconnaissance. No special tools, user interaction, or complex prerequisites are required. The CVSS 3.1 score of 5.3 (MEDIUM) reflects the low attack complexity and lack of authentication, balanced against the limited scope of impact (time-tracking data only).

Remediation

Upgrade Gitea to version 1.25.5 or later. The patch implements proper scope validation to ensure time-entry deletion requests are restricted to entries belonging to the issue in the request context. After upgrading, review access logs and audit trails for any suspicious deletion activity targeting time entries across multiple issues. If you operate a Gitea instance, prioritize this update within your standard patching cycle.

Patch guidance

1. Back up your Gitea database and configuration before upgrading. 2. Download Gitea 1.25.5 or later from the official Gitea release page (gitea.io/downloads). 3. Follow the Gitea upgrade documentation for your deployment method (binary, Docker, etc.). 4. Verify the upgrade by checking the version in the Gitea web interface (Administration > System Settings > Version). 5. After upgrade, restart any associated services and validate that time-tracking functionality works as expected. 6. Test deletion of time entries to confirm the fix prevents cross-issue deletion attempts.

Detection guidance

Monitor Gitea API logs for DELETE requests to time-tracking endpoints (typically /api/v1/repos/{owner}/{repo}/issues/{index}/times/{id}). Flag requests where the time ID does not logically belong to the issue being accessed. Review deletion patterns for unusual volume or cross-issue targeting. Inspect audit logs for time-entry deletions by users who do not have legitimate access to the affected issues. If you have security monitoring in place, create alerts for failed or anomalous time-tracking modifications.

Why prioritize this

Although the CVSS score is MEDIUM and the vulnerability is not yet tracked on the KEV catalog, this issue warrants prompt attention for organizations relying on Gitea time-tracking for billing or compliance. The lack of authentication requirement and ease of exploitation make it suitable for early patching. Prioritize this above lower-impact vulnerabilities, but schedule it within your normal patching cadence rather than as an emergency out-of-band release (unless your time-tracking data feeds critical business processes).

Risk score, explained

The CVSS 3.1 score of 5.3 reflects a network-accessible vulnerability with low attack complexity and no authentication barrier, resulting in a moderate severity rating. The score accounts for integrity impact on time-tracking data but acknowledges the absence of confidentiality or availability impact. The vulnerability is not currently included in CISA's Known Exploited Vulnerabilities catalog, suggesting active exploitation in the wild has not been documented at the time of publication. Organizations should still treat this as a credible risk given the simplicity of exploitation.

Frequently asked questions

Do I need to authenticate to exploit this vulnerability?

No. The vulnerability can be exploited without any authentication. An attacker needs only network access to your Gitea instance and knowledge of a valid time-entry ID to attempt deletion.

Can an attacker delete issues or pull requests, or only time-tracking entries?

Only time-tracking entries are affected by this vulnerability. The scope of deletion is limited to the tracked-time data; issues, pull requests, and other repository content remain protected by proper authorization controls.

How can I determine if my Gitea instance has been exploited?

Check your Gitea audit logs and API request logs for DELETE operations against time-tracking endpoints. Look for deletions of time entries that span multiple issues or were initiated by users without access to those issues. Cross-reference with your actual time-entry management history to identify suspicious patterns.

What if I cannot upgrade immediately?

If an upgrade is not immediately feasible, consider restricting network access to your Gitea instance to trusted networks only, or disable public API access to time-tracking endpoints via firewall or reverse-proxy rules until you can deploy the patch.

This analysis is based on the CVE-2026-25782 advisory as published on 2026-07-03 and modified 2026-07-07. The information provided is for informational purposes and should be verified against official Gitea security advisories and release notes before taking action. SEC.co makes no warranties regarding the completeness or accuracy of this analysis. Organizations should conduct their own risk assessment and consult with their security teams before implementing any changes. Exploit code, weaponized proof-of-concepts, or detailed attack methodology have not been included in this advisory. Source: NVD (public-domain), retrieved 2026-08-12. Analysis generated by SEC.co (claude-haiku-4-5).