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-3854-PoC — RCE en GitHub vía inyección de la opción push X-Stat | Kitploit
Herramientas/GitHubGitHub/lysophavin18/cve-2026-3854-poc
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y Educación
GitHublysophavin18/cve-2026-3854-poc

CVE-2026-3854-PoC

RCE en GitHub vía inyección de la opción push X-Stat

Ver Repositorio
22hace 4 mesesAú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-3854 PoC — GitHub RCE mediante inyección de opciones de push en X-Stat

Solo con fines educativos y de investigación de seguridad autorizada.
No lo utilices contra ningún sistema sin permiso explícito por escrito.


Descripción general

CVE-2026-3854 es una vulnerabilidad de ejecución remota de código en el pipeline de git push de GitHub Enterprise Server (y de GitHub.com).

Cuando un cliente proporciona opciones de push (git push -o), el código Ruby interno de GitHub construye una cabecera X-Stat concatenando cada valor de opción con punto y coma como delimitadores de campo. Dado que los valores se insertaban tal cual (sin saneamiento), un atacante podía incrustar punto y coma en una opción de push para inyectar campos arbitrarios clave-valor en la cabecera y sobrescribir ajustes críticos de seguridad — logrando finalmente RCE sin sandbox como el usuario git.

Causa raíz de la vulnerabilidad

root@kitploit:~
X-Stat: repo_id=12345;user_id=alice;rails_env=production;...;push_option_0=<USER INPUT>

Al inyectar normal_value;rails_env=staging como valor de la opción de push, se convierte en:

root@kitploit:~
...;push_option_0=normal_value;rails_env=staging

El analizador toma la última aparición de cada clave, por lo que rails_env ahora es staging (sin sandbox), sobrescribiendo el valor legítimo production establecido anteriormente.


Requisitos

  • Python 3.10 o posterior (utiliza anotaciones de tipo integradas list[str] / dict[str, str])
  • No se requieren paquetes de terceros

Uso

root@kitploit:~
python3 exploi-git.py

El script ejecuta tres demostraciones consecutivas enteramente en memoria — sin conexiones de red, sin comandos de shell, sin escrituras de archivos:

DemoQué muestra
1Inyección básica de punto y coma que sobrescribe rails_env
2Cadena conceptual completa de RCE en 3 pasos
3Comportamiento parcheado — el punto y coma se codifica con porcentaje y la inyección queda neutralizada

Parche

GitHub corrigió la vulnerabilidad codificando con porcentaje los punto y coma en los valores de las opciones de push antes de insertarlos en la cabecera X-Stat:

root@kitploit:~
normal_value;rails_env=staging  →  normal_value%3Brails_env=staging

Esto convierte el punto y coma en una parte literal del valor y neutraliza la inyección.


Referencias

  • Artículo del blog de Wiz Research
  • Blog de seguridad de GitHub
  • NVD — CVE-2026-3854

Descargo de responsabilidad

Este repositorio se proporciona únicamente con fines educativos y para apoyar la investigación de seguridad autorizada. El/los autor(es) no asume(n) ninguna responsabilidad por el mal uso. Obtén siempre permiso explícito por escrito antes de realizar pruebas contra cualquier sistema que no poseas.

Descargar herramienta