Description
A user who can open a fork pull request can place workflow content with a shared run-level concurrency group into a Gitea Actions run that is awaiting approval. When a later run in that group cancels the blocked job, the run becomes terminal while still marked as needing approval. If a maintainer later approves the run, Gitea passed the already-cancelled job back through concurrency preparation, set it to waiting, and made it claimable by a matching runner, executing fork-controlled workflow code. Exploitation requires the maintainer's later approval action, Actions to be enabled, and a runner that accepts the repository's jobs.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Gitea | Gitea | ≤ 1.27.3 | — |
Advisories 1
- WID-SEC-2026-3792 Gitea: Mehrere Schwachstellen BSI CERT-Bund (WID) · Oct 6, 2026
References
- GitHub Security Advisory GHSA-93pj-3x56-5gc2 vendor-advisory
- Fix: go-gitea/gitea pull request #39399 patch
- Gitea 28.0.0 release announcement release-notes
- go-gitea/gitea v28.0.0 release release-notes