Multiple Vulnerabilities in Fortinet Products Could Allow for Remote Code Execution – PATCH: NOW

Multiple vulnerabilities have been discovered Fortinet Products, the most severe of which could allow for remote code execution. FortiManager is a network and security management tool that provides centralized management of Fortinet devices from a single console. FortiOS is the Fortinet’s proprietary Operation System which is utilized across multiple product lines. FortiProxy is a secure web gateway that attempts to protects users against internet-borne attacks, and provides protection and visibility to the network against unauthorized access and threats. Successful exploitation of this vulnerability could allow for remote code execution in the context of the affected service account. Depending on the privileges associated with the service account an attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Service accounts that are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.

THREAT INTELLIGENCE:
Fortinet is aware that CVE-2024-55591 has been exploited in the wild. 
 

SYSTEMS AFFECTED:

  • FortiManager 7.4.0
  • FortiManager 7.2.3
  • FortiManager 7.0.7 through 7.0.8
  • FortiManager 6.4.12
  • FortiAnalyzer 7.4.0 through 7.4.2
  • FortiAnalyzer 7.2.0 through 7.2.5
  • FortiAnalyzer 7.0 all versions
  • FortiAnalyzer 6.4 all versions
  • FortiAnalyzer 6.2 all versions
  • FortiAnalyzer 6.0 all versions
  • FortiManager 7.4.0 through 7.4.2
  • FortiManager 7.2.0 through 7.2.5
  • FortiManager 7.0 all versions
  • FortiManager 6.4 all versions
  • FortiManager 6.2 all versions
  • FortiManager 6.0 all versions
  • FortiAnalyzer 7.4.0 through 7.4.3
  • FortiAnalyzer 7.0.2 through 7.0.12
  • FortiAnalyzer 6.2.10 through 6.2.13
  • FortiManager 7.4.0 through 7.4.3
  • FortiManager 7.0.2 through 7.0.12
  • FortiManager 6.2.10 through 6.2.13
  • FortiOS 7.0.0 through 7.0.16
  • FortiProxy 7.2.0 through 7.2.12
  • FortiProxy 7.0.0 through 7.0.19
  • FortiManager Cloud 7.4 7.4.1 through 7.4.3
  • FortiManager 7.4.1 through 7.4.3
  • FortiOS 7.6.0
  • FortiOS 7.4.0 through 7.4.4
  • FortiOS 7.2.0 through 7.2.8
  • FortiProxy 7.4.0 through 7.4.5
  • FortiProxy 7.2.0 through 7.2.11
  • FortiAP 7.4.0 through 7.4.2
  • FortiAP 7.2.0 through 7.2.3
  • FortiAP 7.0 all versions
  • FortiAP 6.4 all versions
  • FortiAP-S 6.4 6.4.0 through 6.4.9
  • FortiAP-S 6.2 all versions
  • FortiAP-W2 7.4 7.4.0 through 7.4.2
  • FortiAP-W2 7.2 7.2.0 through 7.2.3
  • FortiAP-W2 7.0 all versions
  • FortiAP-W2 6.4 all versions
  • FortiSwitch 7.4.0
  • FortiSwitch 7.2.0 through 7.2.5
  • FortiSwitch 7.0.0 through 7.0.7
  • FortiSwitch 6.4.0 through 6.4.13
  • FortiSwitch 6.2.0 through 6.2.7
  • FortiSwitch 6.0.0 through 6.0.7
  • FortiOS 7.4.0 through 7.4.1
  • FortiOS 7.2 all versions
  • FortiOS 7.0 all versions
  • FortiOS 6.4 all versions
  • FortiOS 6.2 all versions
  • FortiManager Cloud 7.4 7.4.1 through 7.4.2
  • FortiManager Cloud 7.2 7.2.1 through 7.2.5
  • FortiManager Cloud 7.0 7.0.1 through 7.0.12
  • FortiManager 7.0.0 through 7.0.12
  • FortiManager 6.4.0 through 6.4.14
  • FortiOS 7.0.0 through 7.0.15
  • FortiOS 6.4.0 through 6.4.15
  • FortiAnalyzer Cloud 7.4 7.4.1 through 7.4.2
  • FortiAnalyzer Cloud 7.2 7.2.1 through 7.2.6
  • FortiAnalyzer Cloud 7.0 all versions
  • FortiAnalyzer Cloud 6.4 all versions
  • FortiManager Cloud 7.0 all versions
  • FortiOS 7.2.0 through 7.2.5
  • FortiManager Cloud 7.6 7.6.0 through 7.6.1
  • FortiManager Cloud 7.4 7.4.0 through 7.4.4
  • FortiManager Cloud 7.2 7.2.2 through 7.2.7
  • FortiManager 7.6.0 through 7.6.1
  • FortiManager 7.4.0 through 7.4.5
  • FortiManager 7.2.1 through 7.2.8
  • FortiSandbox 4.4.0 through 4.4.4
  • FortiSandbox 4.2.0 through 4.2.6
  • FortiSandbox 4.0.0 through 4.0.4
  • FortiSandbox 3.2 all versions
  • FortiSandbox 3.1 all versions
  • FortiSandbox 3.0.5 through 3.0.7
  • FortiOS 7.2.0 through 7.2.9
  • FortiOS 7.4 all versions
  • FortiProxy 7.0.0 through 7.0.18
  • FortiProxy 2.0 all versions
  • FortiProxy 1.2 all versions
  • FortiProxy 1.1 all versions
  • FortiProxy 1.0 all versions
  • FortiRecorder 7.2.0 through 7.2.1
  • FortiRecorder 7.0.0 through 7.0.4
  • FortiVoice 7.0.0 through 7.0.4
  • FortiVoice 6.4.0 through 6.4.9
  • FortiVoice 6.0 all versions
  • FortiWeb 7.6.0
  • FortiWeb 7.4.0 through 7.4.4
  • FortiWeb 7.2 all versions
  • FortiWeb 7.0 all versions
  • FortiWeb 6.4 all versions
  • FortiAnalyzer 7.0.0 through 7.0.12
  • FortiAnalyzer 6.4.0 through 6.4.14
  • FortiAnalyzer Cloud 7.4 7.4.1 through 7.4.3
  • FortiAnalyzer Cloud 7.2 7.2.1 through 7.2.5
  • FortiAnalyzer Cloud 7.0 7.0.1 through 7.0.11
  • FortiManager Cloud 7.0 7.0.1 through 7.0.11
  • FortiManager Cloud 6.4 all versions
  • FortiAnalyzer 7.6.0 through 7.6.1
  • FortiAnalyzer 7.4.1 through 7.4.3
  • FortiProxy 7.4.0 through 7.4.4
  • FortiProxy 7.2.0 through 7.2.10
  • FortiProxy 7.0.0 through 7.0.17
  • FortiProxy 2.0.0 through 2.0.14
  • FortiOS version 7.2.0
  • FortiOS version 7.0.0 through 7.0.5
  • FortiOS version s 7.2.0 through 7.2.4
  • FortiOS version 7.2.0 through 7.2.4
  • FortiOS version 7.0.0 through 7.0.11
  • FortiOS version 6.4.0 through 6.4.12

RISK:
Government:

  • Large and medium government entities: High
  • Small government entities: Medium

Businesses:

  • Large and medium business entities: High
  • Small business entities: Medium

Home users: Low
 

TECHNICAL SUMMARY:
Multiple vulnerabilities have been discovered in Fortinet products, the most severe of which could allow for remote code execution. Details of the vulnerabilities are as follows:

Tactic: Initial Access (TA0001):
TechniqueExploit Public-Facing Application (T1190):

  • An Authentication Bypass Using an Alternate Path or Channel vulnerability [CWE-288] affecting FortiOS and FortiProxy may allow a remote attacker to gain super-admin privileges via crafted requests to Node. (CVE-2024-55591)
  • A use of hard-coded cryptographic key vulnerability [CWE-321] in FortiSwitch may allow a remote unauthenticated attacker in possession of the key to execute unauthorized code via crafted cryptographic requests. (CVE-2023-37936)
  • A missing authentication for critical function vulnerability [CWE-306] in FortiManager and FortiPortal may allow a remote unauthenticated attacker to extract the configuration of all managed devices. (CVE-2024-35277)


Details of lower severity vulnerabilities:

  • An operation on a resource after expiration or release vulnerability [CWE-672] in FortiManager may allow a Fortigate admin account that is deleted through FortiManager to still be able to login to the FortiGate via valid credentials. (CVE-2024-47571)
  • A relative path traversal vulnerability [CWE-23] in FortiManager administrative interface may allow a privileged attacker to delete files from the underlying filesystem via crafted HTTP or HTTPs requests. (CVE-2024-33502)
  • A relative path traversal vulnerability [CWE-23] in FortiManager administrative interface may allow a privileged attacker to delete files from the underlying filesystem via crafted HTTP or HTTPs requests. (CVE-2024-32115)
  • A relative path traversal vulnerability [CWE-23] in FortiManager & FortiAnalyzer may allow a privileged attacker with super-admin profile and CLI access to write files on the underlying system via crafted HTTP or HTTPS requests. (CVE-2024-36512)
  • An improper neutralization of special elements used in an OS command vulnerability [CWE-78] in FortiManager csfd daemon may allow an authenticated attacker to execute unauthorized commands via specifically crafted packets. (CVE-2024-46662)
  • An insertion of sensitive information into sent data vulnerability [CWE-201] in FortiOS may allow an attacker in a man-in-the-middle position to retrieve the RADIUS accounting server shared secret via intercepting accounting-requests. (CVE-2024-46665)
  • An Improper Neutralization of CRLF Sequences in HTTP Headers (‘http response splitting’) vulnerability [CWE-113] in FortiOS, FortiProxy and FortiSASE may allow a remote unauthenticated attacker to bypass the file filter via crafted HTTP header. (CVE-2024-54021)
  • An improper neutralization of special elements used in an OS command [CWE-78] in FortiAP may allow a local authenticated attacker to execute unauthorized code via the FortiAP CLI. (CVE-2024-26012)
  • An origin validation error [CWE-346] vulnerability in FortiOS IPSec VPN may allow an authenticated IPSec VPN user with dynamic IP addressing to send (but not receive) packets spoofing the IP of another user via crafted network packets. (CVE-2023-46715)
  • An Integer Overflow or Wraparound vulnerability [CWE-190] in FortiOS and FortiSASE FortiOS tenant IPsec IKE service may allow an authenticated attacker to crash the IPsec tunnel via crafted requests, resulting in potential denial of service. (CVE-2024-46669)
  • An allocation of resources without limits or throttling vulnerability [CWE-770] in some FortiOS API endpoints may allow an unauthenticated remote user to consume all system memory via multiple large file uploads. (CVE-2024-46668)
  • An improper privilege management vulnerability [CWE 269] in FortiManager and FortiAnalyzer may allow a local attacker to escalate their privileges by abusing incorrect filesystem permissions. (CVE-2024-33503, CVE-2024-45331)
  • Two null pointer dereference [CWE-476] vulnerabilities in FortiOS may allow a remote attacker with low privileges to crash vpn service via a crafted http request. (CVE-2023-42785, CVE-2023-42786)
  • An Improper Neutralization of Special Elements used in an OS Command (‘OS Command Injection’) vulnerability [CWE-78] in FortiManager may allow an authenticated remote attacker to execute unauthorized code via FGFM crafted requests. (CVE-2024-50566)
  • An improper neutralization of special elements used in an OS Command vulnerability [CWE-78] in FortiSandbox may allow an authenticated attacker with at least read-only permission to execute unauthorized commands via crafted requests. (CVE-2024-27778)
  • An Out-of-bounds Read vulnerability [CWE-125] in FortiOS and FortiSASE FortiOS tenant IPsec IKE service may allow an unauthenticated remote attacker to trigger memory consumption leading to Denial of Service via crafted requests. (CVE-2024-46670)
  • An Out-of-bounds Write in FortiOS IPSEC daemon may allow an unauthenticated attacker to perform a denial of service under certains conditions that are outside the control of the attacker. (CVE-2024-52963)
  • An out-of-bounds write vulnerability [CWE-787] in FortiManager and FortiAnalyzer sndproxy daemon may allow an authenticated attacker to execute arbitrary code or commands via specially crafted HTTP requests. (CVE-2024-35273)
  • An improper limitation of a pathname to a restricted directory vulnerability (‘path traversal’) [CWE-22] in FortiManager, FortiOS, FortiProxy, FortiRecorder, FortiVoice and FortiWeb may allow a remote authenticated attacker with access to the security fabric interface and port to write arbitrary files and a remote unauthenticated attacker with the same network access to delete an arbitrary folder. (CVE-2024-48884, CVE-2024-48885)
  • An improper neutralization of special elements used in an OS Command [CWE-78] in FortiSwitch may allow a local authenticated attacker to execute unauthorized code via FortiSwitch CLI. (CVE-2023-37937)
  • An improper neutralization of special elements used in an SQL Command (‘SQL Injection’) vulnerability [CWE-89] in FortiManager and FortiAnalyzer may allow an authenticated attacker to execute unauthorized code or commands via specifically crafted requests. (CVE-2024-35275)
  • A NULL Pointer Dereference vulnerability [CWE-476] in FortiOS SSLVPN web portal may allow an authenticated attacker to perform a denial of service on the SSLVPN web portal via a specially crafted URL. (CVE-2024-36504)
  • A stack-based overflow vulnerability [CWE-124] in FortiManager & FortiAnalyzer may allow a remote attacker to execute arbitrary code or command as a low privileged user via specially crafted packets. (CVE-2024-35276)
  • An allocation of resources without limits or throttling [CWE-770] vulnerability in FortiOS may allow a remote unauthenticated attacker to prevent access to the GUI via specially crafted requests directed at specific endpoints. (CVE-2024-46666)
  • A Weak Authentication vulnerability [CWE 1390] in FortiOS, FortiPAM and FortiProxy csfd daemon may allow an unauthenticated attacker with access to the Security Fabric interface and port to bruteforce the authentication process in the Security Fabric protocol and take control of the devices of the Fabric. (CVE-2024-48886, CVE-2024-50563)
  • An externally controlled reference to a resource in another sphere vulnerability [CWE-610] in multiple products may allow an unauthenticated attacker to poison web caches between the device and the attacker via crafted HTTP requests, where the Host header points to an arbitrary webserver. (CVE-2022-23439)

Successful exploitation of these vulnerabilities could allow an attacker to execute remote code in the context of the system. Depending on the privileges associated with the system, an attacker could then install programs; view, change, or delete data.

RECOMMENDATIONS:
We recommend the following actions be taken:

  • Apply appropriate updates provided by Fortinet to vulnerable systems immediately after appropriate testing. (M1051: Update Software)
    • Safeguard 7.1 : Establish and Maintain a Vulnerability Management Process: Establish and maintain a documented vulnerability management process for enterprise assets. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
    • Safeguard 7.2: Establish and Maintain a Remediation Process: Establish and maintain a risk-based remediation strategy documented in a remediation process, with monthly, or more frequent, reviews.
    • Safeguard 7.4: Perform Automated Application Patch Management: Perform application updates on enterprise assets through automated patch management on a monthly, or more frequent, basis.
    • Safeguard 7.5 : Perform Automated Vulnerability Scans of Internal Enterprise Assets: Perform automated vulnerability scans of internal enterprise assets on a quarterly, or more frequent, basis. Conduct both authenticated and unauthenticated scans, using a SCAP-compliant vulnerability scanning tool.
    • Safeguard 7.7: Remediate Detected Vulnerabilities: Remediate detected vulnerabilities in software through processes and tooling on a monthly, or more frequent, basis, based on the remediation process.
    • Safeguard 12.1: Ensure Network Infrastructure is Up-to-Date: Ensure network infrastructure is kept up-to-date. Example implementations include running the latest stable release of software and/or using currently supported network-as-a-service (NaaS) offerings. Review software versions monthly, or more frequently, to verify software support.
    • Safeguard 18.1: Establish and Maintain a Penetration Testing Program: Establish and maintain a penetration testing program appropriate to the size, complexity, and maturity of the enterprise. Penetration testing program characteristics include scope, such as network, web application, Application Programming Interface (API), hosted services, and physical premise controls; frequency; limitations, such as acceptable hours, and excluded attack types; point of contact information; remediation, such as how findings will be routed internally; and retrospective requirements.
    • Safeguard 18.2: Perform Periodic External Penetration Tests: Perform periodic external penetration tests based on program requirements, no less than annually. External penetration testing must include enterprise and environmental reconnaissance to detect exploitable information. Penetration testing requires specialized skills and experience and must be conducted through a qualified party. The testing may be clear box or opaque box.
    • Safeguard 18.3: Remediate Penetration Test Findings: Remediate penetration test findings based on the enterprise’s policy for remediation scope and prioritization.
       
  • Apply the Principle of Least Privilege to all systems and services. Run all software as a non-privileged user (one without administrative privileges) to diminish the effects of a successful attack. (M1026: Privileged Account Management)
    • Safeguard 4.7: Manage Default Accounts on Enterprise Assets and Software: Manage default accounts on enterprise assets and software, such as root, administrator, and other pre-configured vendor accounts. Example implementations can include: disabling default accounts or making them unusable.
    • Safeguard 5.5: Establish and Maintain an Inventory of Service Accounts: Establish and maintain an inventory of service accounts. The inventory, at a minimum, must contain department owner, review date, and purpose. Perform service account reviews to validate that all active accounts are authorized, on a recurring schedule at a minimum quarterly, or more frequently.
       
  • Vulnerability scanning is used to find potentially exploitable software vulnerabilities to remediate them. (M1016: Vulnerability Scanning)
    • Safeguard 16.13: Conduct Application Penetration Testing: Conduct application penetration testing. For critical applications, authenticated penetration testing is better suited to finding business logic vulnerabilities than code scanning and automated security testing. Penetration testing relies on the skill of the tester to manually manipulate an application as an authenticated and unauthenticated user.
       
  • Architect sections of the network to isolate critical systems, functions, or resources. Use physical and logical segmentation to prevent access to potentially sensitive systems and information. Use a DMZ to contain any internet-facing services that should not be exposed from the internal network. Configure separate virtual private cloud (VPC) instances to isolate critical cloud systems. (M1030: Network Segmentation)
    • Safeguard 12.2: Establish and Maintain a Secure Network Architecture: Establish and maintain a secure network architecture. A secure network architecture must address segmentation, least privilege, and availability, at a minimum.
  • Use capabilities to detect and block conditions that may lead to or be indicative of a software exploit occurring. (M1050: Exploit Protection)
    • Safeguard 10.5:  Enable Anti-Exploitation Features: Enable anti-exploitation features on enterprise assets and software, where possible, such as Microsoft® Data Execution Prevention (DEP), Windows® Defender Exploit Guard (WDEG), or Apple® System Integrity Protection (SIP) and Gatekeeper™.



REFERENCES:

Bleeping Computer:
https://www.bleepingcomputer.com/news/security/fortinet-warns-of-auth-bypass-zero-day-exploited-to-hijack-firewalls/

Fortinet:
https://www.fortiguard.com/psirt/FG-IR-24-239
https://www.fortiguard.com/psirt/FG-IR-24-143
https://www.fortiguard.com/psirt/FG-IR-24-097
https://www.fortiguard.com/psirt/FG-IR-24-152
https://www.fortiguard.com/psirt/FG-IR-24-535
https://www.fortiguard.com/psirt/FG-IR-24-222
https://www.fortiguard.com/psirt/FG-IR-24-326
https://www.fortiguard.com/psirt/FG-IR-24-282
https://www.fortiguard.com/psirt/FG-IR-23-405
https://www.fortiguard.com/psirt/FG-IR-23-260
https://www.fortiguard.com/psirt/FG-IR-23-407
https://www.fortiguard.com/psirt/FG-IR-24-267
https://www.fortiguard.com/psirt/FG-IR-24-135
https://www.fortiguard.com/psirt/FG-IR-24-219
https://www.fortiguard.com/psirt/FG-IR-24-127
https://www.fortiguard.com/psirt/FG-IR-23-293
https://www.fortiguard.com/psirt/FG-IR-24-463
https://www.fortiguard.com/psirt/FG-IR-24-061
https://www.fortiguard.com/psirt/FG-IR-24-266
https://www.fortiguard.com/psirt/FG-IR-24-373
https://www.fortiguard.com/psirt/FG-IR-24-106
https://www.fortiguard.com/psirt/FG-IR-24-259
https://www.fortiguard.com/psirt/FG-IR-23-258
https://www.fortiguard.com/psirt/FG-IR-24-091
https://www.fortiguard.com/psirt/FG-IR-23-473
https://www.fortiguard.com/psirt/FG-IR-24-165
https://www.fortiguard.com/psirt/FG-IR-24-250
https://www.fortiguard.com/psirt/FG-IR-24-221
https://www.fortiguard.com/psirt/FG-IR-23-494

CVE:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-23439
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-37936
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-37937
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-42785
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-42786
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-46715
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-26012
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27778
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-32115
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-33502
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-33503
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-35273
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-35275
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-35276
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-35277
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-36504
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-36512
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-45331
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46662
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46665
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46666
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46668
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46669
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46670
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-47571
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-48884
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-48885
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-48886
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-50563
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-50566
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-52963
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-54021
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-55591