CVE-2026-116474 Suplantación de commits firmados por la instancia con tokens de jobs de Gitea Actions
El GITEA_TOKEN de un job de Gitea Actions se autentica como el usuario de sistema gitea-actions, y los endpoints de email y clave GPG de /api/v1/user aceptaban a ese usuario, por lo que un job podía registrar un email y una clave GPG; sin confirmación de email requerida (predeterminado), la dirección queda activada. La verificación de commits trata una clave sin dueño real como la clave de firma de la instancia, así que cualquier usuario que pudiera ejecutar un job podía hacer que sus commits firmados con su…
CVSS 3.1
- Probabilidad de explotación · EPSS del 09/110,2 % · percentil 5
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
Gitea
desde 1.19.0 hasta antes de 28.3.0
Qué hacer
- Verificá si usás Gitea y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 6.5 MEDIA
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Privilegios requeridosBajos
- Interacción del usuarioNinguna
- AlcanceSin cambio
- ConfidencialidadNinguna
- IntegridadAlta
- DisponibilidadNinguna
Descripción original
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.
Referencias (5)
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.