Imagen ilustrativa generada con IA
Gitea bajo ataque: la RCE crítica CVE-2026-60004 está en el catálogo KEV, más de 8.300 servidores expuestos
La vulnerabilidad CVE-2026-60004 afecta a Gitea anterior a la versión 1.27.1 y permite la ejecución remota de código a través de la API diffpatch , con la
Texto generado por inteligencia artificial, publicado sin revisión humana. Transparencia IA
Una falla crítica en el diffpatch de Gitea
La vulnerabilidad CVE-2026-60004 afecta a Gitea anterior a la versión 1.27.1 y permite la ejecución remota de código a través de la API diffpatch, con la instalación de un hook de Git controlado por el atacante. El error fue reportado por el investigador de Salesforce Shai Rod, según informó BleepingComputer.
Gitea publicó la versión correctiva 1.27.1 el 27 de julio. Aunque el parche está disponible desde hace varias semanas, la situación sigue siendo crítica: Shadowserver identificó 8.393 direcciones IP vulnerables al 27 de agosto de 2026. El titular de BleepingComputer menciona más de 8.300 servidores expuestos; en el cuerpo del artículo el número asciende a casi 8.400. El dato puntual de Shadowserver, 8.393 IP, es el de referencia.
La CISA añadió la CVE al Catálogo de Vulnerabilidades Explotadas Conocidas (KEV) el 25 de agosto de 2026, con fecha límite para las agencias federales civiles de EE. UU. (FCEB) fijada para el 28 de agosto de 2026, de acuerdo con la Directiva Operativa Vinculante BOD 26-04.
Cómo funciona técnicamente el ataque
La CVE-2026-60004 tiene una puntuación CVSS 3.1 de 9.8, considerada crítica, con vector AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H y clasificación CWE-94 (inyección de código). El aviso de GitHub GHSA-rcr6-4jqh-j84m describe el mecanismo en detalle.
El archivo services/repository/files/patch.go aplica parches controlados por el atacante en un clon temporal bare compartido. Al enviar dos veces el mismo parche se genera una colisión add/add. En ese punto, el fallback three-way de Git extrae la ruta indexada incluso si la operación se realiza con --cached.
En un clon bare, la raíz del repositorio coincide con $GIT_DIR. Una entrada ejecutable denominada hooks/post-index-change se convierte así en un hook de Git activo. Git invoca el hook mientras escribe el índice: el contenido controlado por el repositorio ejecuta comandos arbitrarios como usuario del sistema Gitea, normalmente git. En el aviso se muestra una salida con uid=1000(git) gid=1000(git) y una ruta temporal bajo /data/gitea/tmp/.
Un detalle relevante: el valor de retorno del hook no se propaga a la respuesta de diffpatch. El proof of concept adjunto guarda la salida del comando en objetos Git y crea una rama con el resultado, de modo que no se necesita ninguna conexión saliente. El resultado se recupera mediante HTTP inteligente autenticado.
El registro abierto solo es necesario para la vía de ataque sin credenciales previas. Con el registro abierto predeterminado, un visitante no autenticado puede registrarse, crear un repositorio y obtener el acceso de escritura necesario. Deshabilitar el registro abierto bloquea esa vía, pero el riesgo permanece para usuarios con acceso de escritura a los repositorios. El script proporcionado con el aviso, gitea_diffpatch_rce_poc.py, utiliza una cuenta de Gitea ya existente y debe ejecutarse contra instancias de prueba donde la cuenta pueda crear repositorios.
Explotación activa e indicaciones de la CISA
La inclusión en el catálogo KEV indica que la falla no es teórica: está siendo explotada en la naturaleza. La CISA aún no ha proporcionado detalles sobre los ataques, pero según BleepingComputer, la decisión probablemente estuvo motivada por informes de explotación con distribución de malware de criptominería en servidores Gitea no actualizados.
Para las agencias federales de EE. UU., la fecha límite para aplicar las mitigaciones era el 28 de agosto de 2026. La acción requerida por la CISA es aplicar las mitigaciones según las instrucciones del proveedor, de conformidad con la BOD 26-04 “Prioritizing Security Updates Based on Risk” y los “Forensics Triage Requirements”. Para los servicios en la nube, se debe seguir la guía BOD 26-04 aplicable o descontinuar el producto si las mitigaciones no están disponibles. Los responsables deben evaluar la exposición a Internet de cada activo y garantizar el cumplimiento de las directrices de la BOD 26-04.
Un segundo problema crítico: CVE-2026-20896
No es la primera falla crítica reciente para Gitea. En julio, también según BleepingComputer, actores maliciosos abusaron de CVE-2026-20896, otra vulnerabilidad con CVSS 9.8, esta vez en la imagen Docker oficial de Gitea.
La CVE-2026-20896 está clasificada como CWE-284 (control de acceso inadecuado). Las versiones de la imagen Docker hasta la 1.26.2 inclusive usan REVERSE_PROXY_TRUSTED_PROXIES=* como configuración predeterminada. Esto permite que cualquier IP de origen suplante a un usuario cuando están habilitados encabezados de autenticación de proxy inverso como X-WEBAUTH-USER. BleepingComputer la describe como una omisión de autenticación que afecta a las instancias de Gitea con encabezados de autenticación mediante proxy inverso habilitados.
La ficha NVD no indica una versión corregida explícita para CVE-2026-20896. Se sabe que las versiones hasta la 1.26.2 están afectadas. A falta de más indicaciones, es necesario verificar las actualizaciones del proveedor para la imagen Docker.
Qué hacer
Para CVE-2026-60004, la única corrección indicada es actualizar Gitea a la versión 1.27.1 o posterior. No se conocen soluciones alternativas oficiales en las fuentes consultadas. Deshabilitar el registro abierto reduce la exposición a la vía sin credenciales previas, pero no elimina el riesgo para quienes tienen acceso de escritura a los repositorios.
Quien gestione una instancia de Gitea expuesta a Internet debería verificar de inmediato la versión instalada. El dato de Shadowserver de 8.393 IP vulnerables al 27 de agosto indica que miles de servidores aún no han aplicado el parche.
Para CVE-2026-20896, es necesario comprobar las actualizaciones de la imagen Docker oficial y, mientras tanto, verificar la configuración de REVERSE_PROXY_TRUSTED_PROXIES y de los encabezados de autenticación de proxy inverso. La presencia de dos vulnerabilidades críticas en pocas semanas convierte a Gitea en un objetivo concreto para quienes buscan servidores de alojamiento de código expuestos.
Fuentes
Este artículo es una reelaboración original basada en las siguientes fuentes.
CVE tratadas en este artículo
- CVE-2026-20896CRITICAL9.8Gitea Docker image versions up to and including 1.26.2 use REVERSE_PROXY_TRUSTED_PROXIES=* by default, allowing any source IP to impersonate a user when reverse-proxy authentication headers such as X-WEBAUTH-USER are enabled.
- CVE-2026-60004CRITICAL9.8Gitea before 1.27.1 allows remote code execution via the diffpatch API through Git hook installation.
