CVE-2026-104626: Gitea fork workflow job revival through later approval

Published Oct 6, 2026
·
Updated

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 Software

1 affected component
Gitea Gitea

Event History

Oct 6, 2026
CVE Published
via MITRE·07:23 PM
Data Sourced
via MITRE·07:23 PM
DescriptionWeakness
Data Sourced
via NVD·08:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who is exposed to this issue?

Repositories using Gitea Actions are exposed if users can open fork pull requests, maintainers can approve pending fork workflow runs, and a runner is configured to accept jobs for the repository. The attacker-controlled code executes only after the affected run is later approved.

2

What does an attacker need to exploit it?

An attacker needs the ability to open a fork pull request and supply workflow content using a shared run-level concurrency group. They also need a later run in that group to cancel the blocked job, followed by a maintainer approving the original run.

3

Are installations without Gitea Actions enabled affected?

No. Exploitation requires Gitea Actions to be enabled.

4

What is the immediate mitigation if patching cannot be performed?

Avoid approving pending workflow runs originating from fork pull requests, particularly where fork-controlled workflows can use shared run-level concurrency groups. Restricting or disabling Actions runners that accept jobs for affected repositories also prevents the revived job from being executed.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203