CVE-2021-36194

8.8 HIGH

📋 TL;DR

This vulnerability allows authenticated attackers to execute arbitrary code on FortiWeb web application firewalls through stack-based buffer overflows in API controllers. Attackers can gain full system control by sending specially crafted requests. Organizations running vulnerable FortiWeb versions are affected.

💻 Affected Systems

Products:
  • FortiWeb
Versions: 6.4.1, 6.4.0, 6.3.0 through 6.3.15
Operating Systems: FortiOS
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated access to the API controllers. All configurations with vulnerable versions are affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise allowing attackers to install persistent backdoors, exfiltrate sensitive data, pivot to internal networks, or disrupt web application protection services.

🟠

Likely Case

Attackers gaining administrative access to the FortiWeb device, potentially disabling security controls, intercepting web traffic, or using the device as a foothold for further attacks.

🟢

If Mitigated

Limited impact due to network segmentation, strong authentication controls, and monitoring preventing successful exploitation attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires authentication to exploit. Buffer overflow exploitation requires specific knowledge of the vulnerable API endpoints.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.4.2 or later, 6.3.16 or later

Vendor Advisory: https://fortiguard.com/advisory/FG-IR-21-152

Restart Required: Yes

Instructions:

1. Download the latest firmware from Fortinet support portal. 2. Backup current configuration. 3. Upload and install the firmware update via web interface or CLI. 4. Reboot the device after installation completes.

🔧 Temporary Workarounds

Restrict API Access

all

Limit access to FortiWeb API to trusted management networks only

config system interface
edit <interface_name>
set allowaccess https ssh
end

Enable API Authentication Controls

all

Implement strong authentication and IP restrictions for API access

config system admin
edit <admin_user>
set trusthost1 <trusted_ip>/<mask>
end

🧯 If You Can't Patch

  • Implement network segmentation to isolate FortiWeb management interfaces from untrusted networks
  • Enable detailed logging and monitoring for suspicious API access patterns

🔍 How to Verify

Check if Vulnerable:

Check FortiWeb firmware version via web interface (System > Dashboard) or CLI command 'get system status'

Check Version:

get system status | grep Version

Verify Fix Applied:

Verify firmware version is 6.4.2+ or 6.3.16+ after update

📡 Detection & Monitoring

Log Indicators:

  • Unusual API access patterns
  • Multiple failed authentication attempts followed by successful login
  • Large or malformed API requests

Network Indicators:

  • Unusual traffic to FortiWeb management interfaces
  • Traffic patterns matching buffer overflow exploitation

SIEM Query:

source="fortiweb" AND (event_type="api_access" AND request_size>threshold) OR (auth_failure>3 AND auth_success=1)

🔗 References

📤 Share & Export