Detect Fortinet FortiWeb OS Command Injection (CVE-2025-58034) in IBM QRadar
Detects exploitation of CVE-2025-58034, an OS command injection vulnerability (CWE-78) in Fortinet FortiWeb. This KEV-listed vulnerability allows attackers to inject and execute arbitrary OS commands through FortiWeb's management or inspection interfaces, potentially leading to full appliance compromise, lateral movement, and persistent access to network segmentation points.
MITRE ATT&CK
QRadar Detection Query
SELECT
DATEFORMAT(starttime, 'YYYY-MM-dd HH:mm:ss') AS event_time,
sourceip,
destinationip,
URL,
"Message",
devicevendor,
deviceproduct,
username,
QIDNAME(qid) AS event_name,
RULENAME(creEventList) AS triggered_rules
FROM events
WHERE
(devicevendor ILIKE '%fortinet%' OR deviceproduct ILIKE '%fortiweb%')
AND (
URL ILIKE '%;%' OR URL ILIKE '%|%' OR URL ILIKE '%&&%'
OR URL ILIKE '%`%' OR URL ILIKE '%$(%'
OR URL ILIKE '%25 3B%' OR URL ILIKE '%25 7C%'
OR "Message" ILIKE '%cmd_injection%'
OR "Message" ILIKE '%os_command%'
OR "Message" ILIKE '%command injection%'
OR "Message" ILIKE '%/bin/sh%'
OR "Message" ILIKE '%/bin/bash%'
)
AND LOGSOURCETYPENAME(devicetype) IN ('Fortinet FortiWeb', 'Fortinet FortiGate', 'Syslog')
LAST 24 HOURS
ORDER BY starttime DESC QRadar AQL query detecting OS command injection payloads in HTTP requests processed by Fortinet FortiWeb, including URL-encoded variants and known injection signatures in log messages.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate application traffic containing semicolons or pipe characters in query parameters
- Security assessment tools that probe for injection vulnerabilities
- FortiWeb signature update processes that reference shell command patterns
- URL parameters in web applications that naturally include shell-like special characters
Other platforms for CVE-2025-58034
Testing Methodology
Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1FortiWeb Command Injection via URI Path Semicolon Delimiter
Expected signal: FortiWeb access logs showing HTTP GET request to /cgi-bin/module;id;whoami from test IP. CommonSecurityLog entry with RequestURL containing semicolons.
- Test 2FortiWeb Command Injection via URL-Encoded Shell Metacharacters
Expected signal: FortiWeb logs showing request URL containing %3B sequence. Network proxy or WAF logs showing URL-decoded form with semicolons.
- Test 3Simulated Post-Exploitation Shell Spawn from Web Process
Expected signal: Process execution log showing /bin/bash spawned with parent process www-data or httpsd equivalent. File creation event for /tmp/fortiweb_compromise_marker.txt.
- Test 4FortiWeb Management Interface Credential Stuffing and Command Injection Attempt
Expected signal: FortiWeb authentication log showing POST to management API with injection payload in password field. CommonSecurityLog DeviceAction showing authentication attempt with anomalous credential content.
Unlock Pro Content
Get the full detection package for CVE-2025-58034 including response playbook, investigation guide, and atomic red team tests.