Gitea did not reject personal access tokens restricted to public resources (`public-only`) on the organization Actions runner registration-token endpoint, and the runner registered with the resulting token was not limited to public repositories. Holding only such a token with `write:organization` that belongs to an owner of a public organization, an attacker could register an organization-level runner and receive jobs of the organization's private repositories that have Actions enabled, including the workflow content, Actions secrets and variables, and a task token with access to the private repository. The issue widens what the restricted token can reach; it gives nothing beyond what the owner's full account can already do.
https://github.com/go-gitea/gitea/security/advisories/GHSA-qcgm-ggp8-22qc
https://github.com/go-gitea/gitea/releases/tag/v28.3.0
https://github.com/go-gitea/gitea/pull/39853