CSIRTS // UNIFIED SECURITY ADVISORY FEEDSYS ● ONLINE · POWERED BY INTELFUSIONS.COM

GHSA-h56g-4qw7-2mxg: Gitea: Public-only API token restriction is not enforced on team API routes

mediumCVSS 4.3CVE-2026-58431
Summary Gitea's /api/v1/teams/{id} API routes do not correctly enforce the public-only access token restriction. A public-only token is intended to limit API access to public repositories and public organizations. However, several team API routes continue to return private team repository metadata and private team activity feed entries when called with a public-only token. Details The /api/v1/teams/{teamid} route group uses: orgAssignment(false, true) This loads ctx.Org.Team, but does not load ctx.Org.Organization. The checkTokenPublicOnly middleware checks organization visibility through ctx.Org.Organization. When ctx.Org.Organization is nil, the organization visibility check silently passes. In addition, the team repository handlers return repositories without applying repository-level public-only filtering: repo_model.GetTeamRepositories(...) convert.ToRepo(...) They do not call: ctx.TokenCanAccessRepo(repo) The team activity feed handler also sets: IncludePrivate: true but does not apply: opts.ApplyPublicOnly(ctx.PublicOnly) PoC Vulnerability is verified on latest gitea release (1.26.2) and nightly build. Frist, create a public-only organization-scoped token for a user who is a member of a team in a private org with private repositories: <img width="1075" height="577" alt="image" src="https://github.com/user-attachments/assets/4a01d0ab-f67c-47c9-94b1-e74ddd77d7bc" /> <img width="649" height="375" alt="image" src="https://github.com/user-attachments/assets/b5d91962-088e-40f4-bc51-88a17946e6d8" /> Use the returned token to request team repositories: <img width="1728" height="190" alt="image" src="https://github.com/user-attachments/assets/0f15878f-5806-431d-958c-ffb39bf7c1e9" /> Expected result: Private repositories should be hidden or rejected for a public-only token. Actual result: Private team repository metadata is returned. The team activity feed endpoint can be tested similarly: <img width="1728" height="237" alt="image" src="https://

Details

Source
GitHub Security Advisories (INTL · database · site)
Severity
medium — CVSS 4.3
Published
2026-07-21
Last updated
2026-07-21
Exploitation
Not in CISA KEV at last sync

Original advisory: https://github.com/advisories/GHSA-h56g-4qw7-2mxg

Referenced CVEs

CVECSIRTS overviewExternal
CVE-2026-58431coverage & exploitation statusNVD · CVE.org

Same CVEs, other sources

How other CERTs, PSIRTs and databases cover the vulnerabilities in this advisory.

More from GitHub Security Advisories