Skip to main content
← Vulnerabilities

Gitea Actions task token private repository enumeration

Gitea versions before 28.3.0 are affected when Gitea Actions is enabled and at least one runner is registered. A task token can list private repositories across the instance. Fixed in 28.3.0.

Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.

Published
Last modified
Published
Not listed in CISA KEV
8/100 · provisional
Specific setups only
Fix
Fixed in 28.3.0
None on Exploit-DB, Metasploit or GitHub

Summary

Gitea, the self-hosted Git service, is affected through its Actions feature, where workflow job tokens could be used to list metadata for every repository on an instance, including private ones belonging to other users and organizations. The impact is exposure of repository names and metadata to anyone able to run a workflow, though the repository contents themselves stayed protected.

Read the original description

Gitea Actions task tokens authenticate to the REST API as a shared system user with a negative ID, which repository, organization, project and key filters treated as having no owner restriction, and the token carried no API scope to restrict user-scoped routes. A user who can run a workflow could use the job's token with `GET /api/v1/user/repos` to list every repository on the instance, including private repositories of other users and organizations, with their metadata. Repository contents remained protected by per-repository permission checks. System users now own nothing, and `/api/v1/user` routes other than `GET /api/v1/user` accept only individual and bot accounts.

What to do

  • Check whether your setup matches what the bug needs.

    Gitea Actions is enabled and at least one runner is registered The attacker can run a workflow, which yields a task token
  • Upgrade to a fixed version: 28.3.0.

Timeline

  1. CVE published
  2. First seen by cve.now

Affected versions

  • gitea.dev

    fixed in 28.3.0

Evidence 5

  1. Advisory
  2. Patch
  3. Patch
  4. Repository
  5. Link

Corrections

None so far.

Something wrong on this page? Report an error. Every fix is listed here.

FAQ

Questions about CVE-2026-112887

What does this mean?

A Gitea Actions task token returns the complete list of repositories on the instance, including every private repository of every user and organization, along with their metadata. Repository contents remain protected. Any account that can run a workflow can obtain such a token.Source: github.com

Am I affected, and how do I check?

Gitea versions before 28.3.0 are affected on instances with Actions enabled, which is the default, and at least one runner registered. The version can be read with the gitea --version command or on the instance's version page, and whether Actions is enabled and whether a runner is registered can be checked in the instance's Actions settings and runner list.Source: github.com

What should I do about it?

Upgrade to Gitea 28.3.0 or later.Source: github.com

Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data