CVE-2025-64471 Overview
CVE-2025-64471 is a use of password hash instead of password for authentication vulnerability (CWE-836) affecting Fortinet FortiWeb, a web application firewall solution. This vulnerability allows an unauthenticated attacker to bypass authentication by using captured password hashes in place of actual passwords when making crafted HTTP/HTTPS requests to the FortiWeb management interface.
Critical Impact
Unauthenticated attackers can leverage stolen password hashes to authenticate to FortiWeb appliances without knowing the actual passwords, potentially gaining full administrative control over web application firewall configurations.
Affected Products
- Fortinet FortiWeb 8.0.0 through 8.0.1
- Fortinet FortiWeb 7.6.0 through 7.6.5
- Fortinet FortiWeb 7.4.0 through 7.4.10
- Fortinet FortiWeb 7.2.0 through 7.2.11
- Fortinet FortiWeb 7.0.0 through 7.0.11
Discovery Timeline
- 2025-12-09 - CVE-2025-64471 published to NVD
- 2025-12-10 - Last updated in NVD database
Technical Details for CVE-2025-64471
Vulnerability Analysis
This vulnerability represents a fundamental flaw in the authentication mechanism of Fortinet FortiWeb. The system incorrectly accepts password hashes as valid authentication credentials rather than requiring the original plaintext password. This "pass-the-hash" weakness means that an attacker who has obtained password hashes through any means—such as memory dumping, database compromise, or network interception—can directly use those hashes to authenticate without needing to crack them first.
The vulnerability affects the HTTP/HTTPS authentication endpoints of FortiWeb, which are typically used for administrative access to the web application firewall. Since FortiWeb devices often sit at critical network perimeters protecting web applications, compromise of these devices can have significant downstream security implications.
Root Cause
The root cause of this vulnerability lies in the authentication validation logic within FortiWeb. Rather than properly hashing user-supplied passwords and comparing them against stored hashes, the system appears to accept pre-computed hash values directly. This design flaw violates the fundamental principle of password authentication, where the server should only store hashes and never accept them as authentication tokens.
This type of vulnerability often occurs when authentication systems are designed to support backward compatibility or alternative authentication methods without proper security controls, or when hash comparison functions inadvertently accept raw hash input.
Attack Vector
The attack is network-based and requires no authentication or user interaction. An attacker with network access to the FortiWeb management interface can exploit this vulnerability by:
- Obtaining password hashes through credential theft, previous breaches, or other attack vectors
- Crafting HTTP or HTTPS requests that submit the hash value in place of the password
- Bypassing authentication to gain access to the FortiWeb administrative interface
The attack can be executed remotely against any FortiWeb deployment where the management interface is network-accessible. This is particularly concerning in environments where FortiWeb management interfaces may be exposed to less trusted network segments.
Detection Methods for CVE-2025-64471
Indicators of Compromise
- Unusual authentication patterns where the submitted credential data matches hash format (64-character hexadecimal strings for SHA-256, 32 characters for MD5)
- Successful authentication events from unexpected source IP addresses or at unusual times
- Multiple authentication attempts using similar hash-formatted credentials from different sources
- Administrative configuration changes following authentication from suspicious sources
Detection Strategies
- Implement deep packet inspection rules to identify authentication requests containing hash-formatted strings instead of typical password patterns
- Deploy SentinelOne Singularity to monitor FortiWeb systems for unauthorized access patterns and suspicious administrative activity
- Enable comprehensive authentication logging on FortiWeb appliances and forward logs to SIEM for correlation analysis
- Monitor for hash-length credential submissions in authentication request payloads
Monitoring Recommendations
- Configure alerting for successful administrative logins from new or unexpected IP addresses
- Establish baseline authentication patterns and alert on deviations indicating potential pass-the-hash attacks
- Monitor FortiWeb configuration changes for unauthorized policy modifications following suspicious authentication events
- Review authentication logs regularly for patterns consistent with credential stuffing or hash replay attacks
How to Mitigate CVE-2025-64471
Immediate Actions Required
- Apply the latest security patches from Fortinet immediately to all affected FortiWeb appliances
- Restrict network access to FortiWeb management interfaces to trusted administrative networks only
- Implement multi-factor authentication for FortiWeb administrative access where supported
- Rotate all administrative passwords and ensure strong password policies are enforced
- Review authentication logs for signs of exploitation prior to patching
Patch Information
Fortinet has released security updates addressing this vulnerability. Organizations should refer to the Fortinet Security Advisory FG-IR-25-984 for specific version information and patch availability. Upgrade to the latest available version of FortiWeb that addresses this vulnerability.
Workarounds
- Isolate FortiWeb management interfaces on dedicated management VLANs with strict access controls
- Implement network-level authentication (802.1X) or VPN requirements for accessing management interfaces
- Deploy network intrusion detection systems to monitor for authentication anomalies targeting FortiWeb devices
- Consider disabling HTTP management access and requiring HTTPS only with strong TLS configurations
# Network isolation example - restrict management access via firewall rules
# Example iptables rules to limit FortiWeb management access
iptables -A INPUT -p tcp --dport 443 -s 10.0.100.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j DROP
iptables -A INPUT -p tcp --dport 80 -j DROP
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

