CVE-2026-104626 json
Gitea fork workflow job revival through later approval
published last mo. modified last mo. also BIT-gitea-2026-104626 , EUVD-2026-93907 , GHSA-93pj-3x56-5gc2
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 26%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- bitnami gitea 28.0.0
- gitea gitea 28.0.0
- github.com/go-gitea/gitea#39399 pull request
- github.com/go-gitea/gitea/releases/tag/v28.0.0 release
Is CVE-2026-104626 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-104626 updated cvss 8.0
code.gitea.io/gitea: Gitea: Arbitrary code execution via improper handling of canceled workflow runs
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- last mo.
Exploit prediction
0.33% chance of exploitation in the next 30 days, higher than 26% of all scored CVEs (FIRST EPSS, 2026-11-13).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| bitnami | gitea | <28.0.0 |
28.0.0 |
Affected products
- Gitea Gitea
Classification
- Weakness
-
- CWE-841 Improper Enforcement of Behavioral Workflow
References
-
github.com
/go-gitea/gitea/pull/39399
patch
-
github.com
/go-gitea/gitea/security/advisories/GHSA-93pj-3x56-5gc2
vendor-advisory, mitigation, advisory
-
blog.gitea.com
/release-of-28.0.0/
release-notes, article
-
github.com
/go-gitea/gitea/releases/tag/v28.0.0
release-notes, article
-
nvd.nist.gov
/vuln/detail/CVE-2026-104626
web
Sources
- CVE List CVE-2026-104626
- NVD CVE-2026-104626
- OSV BIT-gitea-2026-104626
- Maintainer advisory GHSA-93pj-3x56-5gc2
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of go-gitea/gitea published their own advisory on GitHub. Reviewed sources take precedence over it.