Description
Gitea allows a token with write:user scope to register an attacker-controlled SSH public key on the token owner's account. API requests signed with the corresponding private key authenticate as that account through HTTP Signature without API token scope information, causing route-level token scope checks to be skipped. This converts a user-scoped token into an unscoped API authentication method while retaining the account's normal role and repository permissions.
Published: 2026-10-14
Score: 8.1 High
EPSS: < 1% Very Low
KEV: No
Impact: Token scope escalation leading to unauthorized API access
Action: Immediate Patch
AI Analysis

Impact

Gitea allows an attacker who possesses a token with the write:user scope to register a malicious SSH account. Subsequent API requests signed with the corresponding private key authenticate as that account through HTTP Signature, bypassing the token scope checks normally performed on each route. This effectively converts a user‑scoped token into an unscoped authentication method while preserving the account’s normal role and repository permissions.

Affected Systems

Gitea deployments running any version prior to 1.27.2 are vulnerable. The advisory indicates that the fix is included in release 1.27.2, so updating to this or a later version protects against the flaw.

Risk and Exploitability

The CVSS base score of 8.1 reflects high severity. EPSS indicates a very low exploitation probability (<1%) and the vulnerability is not listed in KEV. However, the missing scope enforcement can still lead to severe privilege escalation if an attacker obtains a write:user token, enabling them to perform any API action authorized for that account.

Generated by OpenCVE AI on October 18, 2026 at 15:24 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Gitea to version 1.27.2 or later, which includes the patch for the HTTP Signature scope bypass.
  • Revoke any write:user tokens that were issued before the patch and regenerate them with restricted scopes.
  • Enforce strict scope validation on all API routes and consider disabling HTTP Signature authentication for accounts lacking elevated privileges.
  • Monitor API usage for signed requests that originate from unexpected or newly added SSH keys and investigate any anomalies promptly.

Generated by OpenCVE AI on October 18, 2026 at 15:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 18 Oct 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Sun, 18 Oct 2026 09:45:00 +0000

Type Values Removed Values Added
First Time appeared Gitea
Gitea gitea
Vendors & Products Gitea
Gitea gitea

Wed, 14 Oct 2026 15:00:00 +0000

Type Values Removed Values Added
Description Gitea allows a token with write:user scope to register an attacker-controlled SSH public key on the token owner's account. API requests signed with the corresponding private key authenticate as that account through HTTP Signature without API token scope information, causing route-level token scope checks to be skipped. This converts a user-scoped token into an unscoped API authentication method while retaining the account's normal role and repository permissions.
Title Gitea API token scope escalation through HTTP signatures
Weaknesses CWE-266
CWE-863
References

cve-icon MITRE

Status: PUBLISHED

Assigner: Gitea

Published:

Updated: 2026-10-18T13:40:55.669Z

Reserved: 2026-08-13T16:50:59.187Z

Link: CVE-2026-73804

cve-icon Vulnrichment

Updated: 2026-10-18T13:40:37.311Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T15:17:24.777

Modified: 2026-10-18T14:16:55.970

Link: CVE-2026-73804

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-18T15:30:17Z

Weaknesses
  • CWE-266

    Incorrect Privilege Assignment

  • CWE-863

    Incorrect Authorization