CVE-2023-36547

9.8 CRITICAL

📋 TL;DR

This vulnerability allows remote attackers to execute arbitrary operating system commands on Fortinet FortiWLM devices through crafted HTTP GET requests. It affects FortiWLM versions 8.6.0-8.6.5 and 8.5.0-8.5.4. Attackers can gain unauthorized access and potentially take full control of affected systems.

💻 Affected Systems

Products:
  • Fortinet FortiWLM
Versions: 8.6.0 through 8.6.5 and 8.5.0 through 8.5.4
Operating Systems: FortiWLM OS
Default Config Vulnerable: ⚠️ Yes
Notes: All deployments with affected versions are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise leading to data theft, lateral movement, ransomware deployment, or persistent backdoor installation.

🟠

Likely Case

Unauthorized command execution leading to configuration changes, data exfiltration, or installation of malware.

🟢

If Mitigated

Limited impact with proper network segmentation, but still potential for initial foothold in network.

🌐 Internet-Facing: HIGH - Directly exploitable via HTTP requests without authentication.
🏢 Internal Only: HIGH - Even internally accessible systems are vulnerable to authenticated or unauthenticated attackers.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

CVSS 9.8 indicates trivial exploitation with no authentication required. Weaponization is likely given the critical nature.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 8.6.6 and 8.5.5

Vendor Advisory: https://fortiguard.com/psirt/FG-IR-23-140

Restart Required: Yes

Instructions:

1. Download FortiWLM version 8.6.6 or 8.5.5 from Fortinet support portal. 2. Backup current configuration. 3. Apply firmware update via web interface or CLI. 4. Reboot device. 5. Verify update completed successfully.

🔧 Temporary Workarounds

Network Access Control

all

Restrict HTTP/HTTPS access to FortiWLM management interface to trusted IP addresses only.

Web Application Firewall

all

Deploy WAF with OS command injection rules to block malicious HTTP GET parameters.

🧯 If You Can't Patch

  • Isolate FortiWLM devices in separate VLAN with strict firewall rules
  • Implement network segmentation to limit lateral movement potential

🔍 How to Verify

Check if Vulnerable:

Check FortiWLM web interface or CLI for current firmware version. If version is 8.6.0-8.6.5 or 8.5.0-8.5.4, system is vulnerable.

Check Version:

ssh admin@fortiwlm-ip 'get system status' | grep Version

Verify Fix Applied:

After patching, confirm firmware version shows 8.6.6 or 8.5.5 in web interface or via CLI command 'get system status'.

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP GET requests with special characters in parameters
  • Unexpected command execution in system logs
  • Multiple failed login attempts followed by successful access

Network Indicators:

  • HTTP requests to FortiWLM with shell metacharacters in parameters
  • Outbound connections from FortiWLM to unusual destinations

SIEM Query:

source="fortiwlm" AND (http_method="GET" AND (url="*;*" OR url="*|*" OR url="*`*" OR url="*$(*"))

🔗 References

📤 Share & Export