CVE-2021-43071

8.8 HIGH

📋 TL;DR

This vulnerability allows remote attackers to execute arbitrary code on Fortinet FortiWeb web application firewalls via specially crafted HTTP requests to the LogReport API controller. Attackers can exploit a heap-based buffer overflow to gain unauthorized command execution. Organizations running affected FortiWeb versions are at risk.

💻 Affected Systems

Products:
  • Fortinet FortiWeb
Versions: 6.4.1 and 6.4.0, 6.3.15 and below, 6.2.6 and below
Operating Systems: FortiOS-based systems
Default Config Vulnerable: ⚠️ Yes
Notes: Affects the LogReport API controller which may be accessible by default in some configurations.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full system compromise allowing attackers to execute arbitrary commands, install malware, pivot to internal networks, and potentially maintain persistent access.

🟠

Likely Case

Remote code execution leading to data exfiltration, service disruption, or deployment of ransomware on the FortiWeb device.

🟢

If Mitigated

Limited impact if proper network segmentation, API access controls, and monitoring are in place to detect and block exploitation attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires crafting specific HTTP requests to the vulnerable API endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: FortiWeb 6.4.2, 6.3.16, 6.2.7

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

Restart Required: Yes

Instructions:

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

🔧 Temporary Workarounds

Restrict LogReport API Access

all

Limit network access to the LogReport API controller using firewall rules or access control lists.

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

Disable Unused API Endpoints

all

If LogReport API functionality is not required, disable it through configuration.

config system global
set admin-sport 443
set admin-https-redirect enable
end

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate FortiWeb devices from critical assets
  • Deploy web application firewall rules to block suspicious HTTP requests to LogReport API endpoints

🔍 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 higher, 6.3.16 or higher, or 6.2.7 or higher

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP requests to /api/v2.0/log/report endpoints
  • Multiple failed authentication attempts followed by successful API access
  • System logs showing unexpected process execution or configuration changes

Network Indicators:

  • HTTP POST requests with abnormal payload sizes to LogReport API
  • Traffic patterns indicating buffer overflow exploitation attempts

SIEM Query:

source="fortiweb" AND (uri_path="/api/v2.0/log/report" OR http_method="POST") AND (bytes_out>10000 OR status_code=500)

🔗 References

📤 Share & Export