Gitea OAuth2 token endpoint accepts access tokens as refresh tokens
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-287.
Summary
Gitea up to and including 28.0.0 accepts the wrong token type at its OAuth2 token endpoint (CWE-287). The endpoint checks the signature and grant of a token sent with the refresh_token grant type but does not check that the token is a refresh token. Anyone who holds an unexpired access token for the same OAuth2 application and grant can exchange it for a new access token and refresh token, keeping access beyond the token's original lifetime.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Gitea's OAuth2 token endpoint verified the signature and grant of a token submitted with the `refresh_token` grant type, but not that the token was a refresh token. An unexpired access token for the same OAuth2 application and grant could be exchanged for a new access token and refresh token. Whoever holds such an access token could keep access beyond the token's original lifetime.
Why it matters now
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
Remediation
The sources list no fixed version for Gitea.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Vendor assessments
Timeline
- 2026-10-07 Threatist record created from CVE-2026-101023
- 2026-10-07 Affected versions changed · Red Hat
- 2026-10-07 CVSS score added · Red Hat
- 2026-10-07 CVSS score added · CISA ADP
- 2026-10-07 Weakness changed · CISA ADP
- 2026-10-07 CISA SSVC decision points changed
- 2026-10-07 Priority changed: LOW → MEDIUM
References
More Gitea vulnerabilities
- 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-2020-11072 The git hook feature in Gitea 1.1.0 through 1.12.5 might allow for authenticated remote… CVSS 3.1HIGH 7.2
- TI-2022-12910 Gitea before 1.16.7 does not escape git fetch remote. CVSS 3.1HIGH 7.5
- TI-2019-08404 models/repo_mirror.go in Gitea before 1.7.6 and 1.8.x before 1.8-RC3 mishandles mirror… CVSS 3.1HIGH 8.8
- TI-2022-00955 Open Redirect on login in go-gitea/gitea CVSS 3.1MEDIUM 6.1
- TI-2026-68968 Push-to-create bypass of FORCE_PRIVATE policy in Gitea CVSS 3.1MEDIUM 5.4
Sources
- CVE-2026-101023 · CVE Program
- CVE-2026-101023 · NVD
- FIRST EPSS
- CVE-2026-101023 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences