Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-60004 — PoC de RCE de diffpatch de Gitea (CVE-2026-60004) - de escritura en repositorio a RCE como cuenta de servicio de Gitea | Kitploit
Herramientas/GitHubGitHub/hackspeak/cve-2026-60004
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónRed TeamingDesarrollo de Payloads
GitHubhackspeak/cve-2026-60004

CVE-2026-60004

PoC de RCE de diffpatch de Gitea (CVE-2026-60004) - de escritura en repositorio a RCE como cuenta de servicio de Gitea

Ver Repositorio
14hace 1 mesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2026-60004 — RCE en diffpatch de Gitea

PoC de ejecución remota de código en el endpoint diffpatch de Gitea. Una cuenta con permisos de escritura en un repositorio (en instancias con registro abierto basta con registrarse de forma anónima) puede ejecutar comandos shell arbitrarios en el servidor como la cuenta de servicio de Gitea.

Resumen de la vulnerabilidad

POST /api/v1/repos/{owner}/{repo}/diffpatch aplica un parche controlado por el atacante en un clon temporal compartido de tipo bare:

root@kitploit:~
git apply --index --recount --cached --binary   # Git ≥ 2.32 时追加 -3 三路合并回退

Cadena de ataque: enviar el mismo parche dos veces → conflicto add/add → el respaldo de fusión a tres bandas hace checkout de la ruta del índice (incluso con --cached) → en un repositorio bare, root = $GIT_DIR, y el hooks/post-index-change extraído (100755) se convierte en un hook de Git activo → Git lo ejecuta automáticamente al escribir el índice → RCE.

  • CVSS: 9.8 (Crítico), AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Afecta: Gitea ≥ 1.17, < 1.27.1
  • Corrección: 1.27.1 (el clon temporal se cambió de bare a no bare, commit 470d34b1)
  • Reportado por: Shai Rod (NightRang3r)

Requisitos de explotación

  • Tener permisos de escritura en algún repositorio; o que la instancia tenga registro abierto (por defecto) → basta con crear una cuenta y un repositorio
  • Git del servidor ≥ 2.32 (habilita el respaldo de fusión a tres bandas con -3)
  • El endpoint diffpatch debe estar disponible

Uso

root@kitploit:~
# 设置账户密码
export GITEA_PASSWORD='account-password'

python3 gitea_diffpatch_rce_poc.py \
  https://<gitea-base-url> \
  <username> \
  'id; uname -srm; pwd'
ParámetroDescripción
urlURL base de Gitea
username

Dependencias: Python 3 + cliente git local.

Flujo del PoC: autenticación → creación de un repositorio privado inicializado → construcción del parche hooks/post-index-change → envío dos veces consecutivas a diffpatch (provoca un conflicto add/add) → Git ejecuta el hook → recuperación de la salida del comando a través de Smart HTTP autenticado. Sin devoluciones de llamada salientes; la salida se devuelve dentro de la respuesta (in-band).

⚠️ Aviso legal

Solo para investigación de seguridad, verificación de vulnerabilidades y pruebas defensivas. Este PoC crea repositorios en la instancia objetivo, envía parches y desencadena la ejecución de comandos en el servidor. Ejecútelo únicamente en instancias de prueba propias; no lo utilice contra entornos no autorizados ni de producción.

Autoría y referencias

  • Aviso oficial y PoC: GHSA-rcr6-4jqh-j84m (reportado por Shai Rod / NightRang3r)
  • Commit de corrección: 470d34b1
  • Cobertura: THN — Una nueva RCE en Gitea permite a los escritores de repositorios ejecutar comandos shell
Descargar herramienta
Nombre de usuario de Gitea existente (disponibilidad: registro abierto por defecto)
commandComando shell que se ejecutará en el objetivo
GITEA_PASSWORDContraseña de la cuenta (variable de entorno o entrada interactiva)