Read the docs
TI-2026-83610 Aliases CVE-2026-120263

Gitea OAuth2 auto-linking lets attackers take over accounts

Priority MEDIUM 49CWE-287Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Security bypass
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-287.

Summary

Gitea from 0 before 28.3.0 is affected when ACCOUNT_LINKING is set to auto and registration is enabled. The link-account sign-up form selects the account to link by a user name or email typed into the form instead of the identity the OAuth2 provider asserts (CWE-639). An attacker with an account on a configured OAuth2 provider can submit another user's name, link their identity, and sign in as that user without its password, including as an administrator.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

When `[oauth2_client].ACCOUNT_LINKING` is set to `auto` (not the default) and registration is enabled, the link-account sign-up form looked up the existing account to link by the user name or email submitted in the form instead of the identity asserted by the OAuth2 provider. An attacker with an account on a configured OAuth2 provider could submit another user's name, link their external identity to that Gitea account and be signed in as it without its password, including as an administrator. The link persisted for later sign-ins. Automatic linking now only happens when the existing account matches the provider's email or provider-derived user name; otherwise the account password is required.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00343 28th percentileScored 2026-11-07
Fix Fixed Gitea (Gitea): 28.3.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
GiteaGiteabefore 28.3.028.3.0Patch availableCNA
  • Gitea VendorGitea Affected before 28.3.0 Fixed in 28.3.0 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:*——Gitea
  • cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:* Versions — — ·Gitea

Remediation

Upgrade Gitea to 28.3.0, the fixed version. The fix allows automatic linking only when the existing account matches the provider's email or provider-derived user name, and otherwise requires the account password.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

  • Fix · CNA Gitea (Gitea) Fixed in 28.3.0

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    Gitea 28.3.0

    20 records Highest priority Priority MEDIUM 3 MEDIUM, 17 LOW

    Other records, highest priority first

    • TI-2026-83601 Gitea public-only token can expose private OCI blobs through package mountsPriority MEDIUM 47
    • TI-2026-83594 Gitea public-only token bypass exposes private repository jobsPriority MEDIUM 47
    • TI-2026-83607 Gitea leaks private pull request details on project boardsPriority LOW 39

Timeline

  1. 2026-11-01 Threatist record created from CVE-2026-120263
  2. 2026-11-06 CVSS score added · CISA ADP
  3. 2026-11-06 CISA SSVC decision points changed
  4. 2026-11-06 Priority changed: LOW → MEDIUM

References

  • TI-2026-42785 Gitea before 1.27.1 allows remote code execution via the diffpatch API through Git hook installation. KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-42033 Improper authorization on OAuth sign-in callback silently re-enables administrator-disabled accounts CVSS 3.1CRITICAL 9.8
  • TI-2026-40842 Privilege Escalation via Access Token Scope Escalation in API CVSS 3.1CRITICAL 9.8
  • TI-2026-16922 Gitea Docker image trusts spoofable reverse-proxy headers by default CVSS 3.1CRITICAL 9.8
  • TI-2026-42043 Team-repository linking endpoint bypasses the RepoAdminChangeTeamAccess organization setting CVSS 3.1CRITICAL 9.1
  • TI-2026-40381 OIDC userinfo Endpoint Returns Identity Claims Without Enforcing API Token Scopes CVSS 3.1CRITICAL 9.1
See all 240 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences