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-2025-8110-gogs-poc — PoC para CVE-2025-8110 - Escritura arbitraria de archivos de Gogs mediante enlace simbólico | Kitploit
Herramientas/GitHubGitHub/shirouuu/cve-2025-8110-gogs-poc
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y Educación
GitHubshirouuu/cve-2025-8110-gogs-poc

CVE-2025-8110-gogs-poc

PoC para CVE-2025-8110 - Escritura arbitraria de archivos de Gogs mediante enlace simbólico

Ver Repositorio
512hace 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-2025-8110 — Escritura Arbitraria de Archivos en Gogs (PoC)

Prueba de concepto para una escritura arbitraria de archivos autenticada en Gogs. Al enviar un repositorio que contiene un enlace simbólico que apunta fuera del repositorio y luego actualizar el contenido de ese enlace a través de la API, un usuario autenticado puede sobrescribir archivos en el host con los privilegios de la cuenta que ejecuta Gogs.

Solo pruebas autorizadas y educación. Ejecute esto solo contra sistemas que posea o para los que tenga permiso explícito por escrito para probar. Usted es responsable de cómo lo use.

Cómo funciona

  1. Autentíquese en Gogs con una cuenta existente.
  2. Genere un token de aplicación (API) desde la configuración de usuario.
  3. Cree un repositorio.
  4. Agregue un enlace simbólico (malicious_link -> /ruta/en/host) y envíelo (push).
  5. Envíe un PUT a la API de Contenido para actualizar malicious_link. Gogs sigue el enlace simbólico y escribe el contenido proporcionado en la ruta de destino, con sus propios privilegios. Si Gogs se ejecuta como root, esto es una primitiva directa de escalada de privilegios (por ejemplo, colocar una regla en /etc/sudoers.d/).

La API PUT es lo que realmente desencadena la escritura; el push solo coloca el enlace simbólico.

Requisitos

  • Python 3.8+
  • git disponible en PATH
  • Una cuenta Gogs existente (el registro puede estar deshabilitado en el destino)
root@kitploit:~
pip install -r requirements.txt

Uso

root@kitploit:~
python3 exploit.py \
    -u http://127.0.0.1:3000 \
    --user <username> \
    --password '<password>' \
    --target /etc/sudoers.d/pwned \
    --payload '<username> ALL=(ALL) NOPASSWD: ALL'

Omita --password para que se le solicite de forma segura en lugar de pasarlo en la línea de comandos.

Acceder a una instancia interna de Gogs

Gogs a menudo está vinculado a localhost en el destino. Use el reenvío de puertos local SSH para exponerlo a su máquina (ajuste los puertos para que coincidan con el destino):

root@kitploit:~
ssh -L 3000:127.0.0.1:3000 user@target
# then point the exploit at http://127.0.0.1:3000

Verificar la escritura

Después de una ejecución exitosa, verifique en el host (como el usuario correspondiente):

root@kitploit:~
cat /etc/sudoers.d/pwned
sudo -l

Si escribió una regla de sudoers, tenga en cuenta que los archivos en /etc/sudoers.d/ deben ser válidos y tener los permisos adecuados para que sudo los reconozca.

Notas / solución de problemas

  • auto_init devuelve HTTP 500 — el script recurre a crear un repositorio vacío y poblarlo con un git init local + push.
  • Push rechazado (non-fast-forward) — el script se reconcilia con el remoto y reintenta; también maneja master vs main.
  • Token CSRF no encontrado — generalmente significa que el destino/puerto es incorrecto (está golpeando un servicio diferente) o la sesión no está autenticada.

Mitigación

Actualice a una versión de Gogs que valide los enlaces simbólicos en la API de Contenido. Como defensa en profundidad, evite ejecutar Gogs como root y aísle el almacenamiento del repositorio.

Licencia

MIT — consulte LICENSE.

Descargar herramienta