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.
Fix
Patch, vendor advisory and mitigation references on NVD 3
- https://github.com/go-gitea/gitea/pull/39501 Patch
- https://github.com/go-gitea/gitea/pull/39507 Patch
- https://github.com/go-gitea/gitea/security/advisories/GHSA-469m-x4mw-38r3 Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 9.1 · giteaNVD modified 2026-10-13 14:39
Affected (CPE criteria) 1
cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:*
References 5
- https://blog.gitea.com/release-of-28.1.0/ Release Notes
- https://github.com/go-gitea/gitea/pull/39501 Patch
- https://github.com/go-gitea/gitea/pull/39507 Patch
- https://github.com/go-gitea/gitea/releases/tag/v28.1.0 Release Notes
- https://github.com/go-gitea/gitea/security/advisories/GHSA-469m-x4mw-38r3 Vendor Advisory