The OAuth2 userinfo endpoint (`/login/oauth/userinfo`) decided whether to limit the `groups` claim to public organizations by re-parsing the `Authorization` header as an OAuth2 access token instead of using the scope of the credential that authenticated the request. When a public-only OAuth2 token was sent as a query parameter or form field, or a public-only personal access token was used, that scope came back empty and the claim listed the token owner's private organizations, teams and concealed memberships. The disclosure is limited to the owner's organization and team names and memberships; no repository content is exposed. The endpoint now uses the scope of the authenticating token.
Metrics
Affected Vendors & Products
References
History
Sun, 01 Nov 2026 10:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | The OAuth2 userinfo endpoint (`/login/oauth/userinfo`) decided whether to limit the `groups` claim to public organizations by re-parsing the `Authorization` header as an OAuth2 access token instead of using the scope of the credential that authenticated the request. When a public-only OAuth2 token was sent as a query parameter or form field, or a public-only personal access token was used, that scope came back empty and the claim listed the token owner's private organizations, teams and concealed memberships. The disclosure is limited to the owner's organization and team names and memberships; no repository content is exposed. The endpoint now uses the scope of the authenticating token. | |
| Title | Gitea OAuth2 userinfo private group disclosure to public-only tokens | |
| Weaknesses | CWE-200 CWE-863 |
|
| References |
|
Status: PUBLISHED
Assigner: Gitea
Published: 2026-11-01T09:48:49.431Z
Updated: 2026-11-01T09:48:49.431Z
Reserved: 2026-11-01T08:48:41.165Z
Link: CVE-2026-118394
No data.
Status : Deferred
Published: 2026-11-01T10:18:36.227
Modified: 2026-11-01T10:18:36.330
Link: CVE-2026-118394
No data.
ReportizFlow