CVE-2025-64055
Executive Summary
CVE-2025-64055 is a critical authentication bypass vulnerability affecting the Fanvil x210 V2 IP phone (firmware version 2.12.20). An unauthenticated attacker on the local network can exploit this flaw to access administrative functions, including file upload, firmware update, and device reboot. The vulnerability stems from missing authentication checks on sensitive endpoints, allowing direct manipulation of the device without valid credentials. Given the lack of a patch and the public availability of proof-of-concept details, this poses a significant risk to enterprise telephony infrastructure.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
CVSS Breakdown & Threat Level
While no official CVSS vector is provided, based on the vulnerability description, a reasonable assessment is:
- Attack Vector (AV): Adjacent Network (A) – requires local network access.
- Attack Complexity (AC): Low (L) – no special conditions.
- Privileges Required (PR): None (N) – unauthenticated.
- User Interaction (UI): None (N) – no user action needed.
- Scope (S): Unchanged (U) – affects only the vulnerable component.
- Confidentiality (C): High (H) – full device access.
- Integrity (I): High (H) – can modify firmware and configuration.
- Availability (A): High (H) – can reboot or brick the device.
Estimated CVSS Score: 8.8 (High)
Threat Level: Critical – due to ease of exploitation, lack of patch, and potential for full device compromise.
Deep Dive & Mechanics
The Fanvil x210 V2 is an IP phone commonly used in enterprise VoIP environments. The vulnerability lies in the web management interface, which fails to enforce authentication for administrative actions. By sending crafted HTTP requests to specific endpoints (e.g., /cgi-bin/upload_firmware, /cgi-bin/reboot), an attacker can bypass login checks and execute privileged operations.
Root Cause: The device does not validate session tokens or credentials before processing requests to administrative CGI scripts. This is a classic case of missing authentication (CWE-306).
Attack Flow:
- Attacker discovers a Fanvil x210 V2 on the local network (e.g., via Shodan or network scanning).
- Attacker sends a direct HTTP POST request to
/cgi-bin/upload_firmwarewith a malicious firmware file. - The device accepts the upload and flashes the firmware, giving the attacker persistent control.
- Alternatively, the attacker can reboot the device or exfiltrate configuration files.
Vulnerable vs. Patched Code
No patched version is available. The vulnerable code likely resembles:
# Vulnerable CGI handler (pseudocode)
def handle_request(path):
if path == "/cgi-bin/upload_firmware":
# Missing authentication check
save_file(request.files['firmware'])
flash_firmware()
elif path == "/cgi-bin/reboot":
# Missing authentication check
os.system("reboot")
A patched version would require:
# Patched CGI handler (pseudocode)
def handle_request(path, session):
if not is_authenticated(session):
return 403 Forbidden
if path == "/cgi-bin/upload_firmware":
save_file(request.files['firmware'])
flash_firmware()
elif path == "/cgi-bin/reboot":
os.system("reboot")
Exploitation & Lab Setup
Red Team
Lab Setup:
- Fanvil x210 V2 with firmware 2.12.20 (or any vulnerable version)
- Attacker machine on same LAN (e.g., Kali Linux)
- Network access to the device's web interface (default port 80)
Exploitation Steps:
Scan for device:
nmap -p 80 --open 192.168.1.0/24Upload malicious firmware:
curl -X POST -F "firmware=@malicious_firmware.bin" http://192.168.1.100/cgi-bin/upload_firmwareReboot device:
curl -X POST http://192.168.1.100/cgi-bin/rebootExfiltrate configuration:
curl http://192.168.1.100/cgi-bin/get_config
Note: No public exploit code is available, but the above curl commands demonstrate the vulnerability.
Blue Team
Detection:
- Monitor for unexpected HTTP POST requests to
/cgi-bin/upload_firmwareor/cgi-bin/reboot. - Alert on firmware uploads without prior authentication.
- Use network segmentation to isolate VoIP devices.
Hunting:
- Search logs for
POST /cgi-bin/requests from unknown IPs. - Check for unauthorized firmware changes (compare hash of current firmware with known good version).
Indicators of Compromise (IOCs)
- Network:
- HTTP POST requests to
/cgi-bin/upload_firmware - HTTP POST requests to
/cgi-bin/reboot - HTTP GET requests to
/cgi-bin/get_config
- HTTP POST requests to
- Host:
- Unexpected firmware version or hash mismatch
- Unauthorized configuration changes
- Device reboots without user action
Detection Engineering
YARA Rule
rule Detect_Fanvil_Exploit_Attempt {
meta:
description = "Detects HTTP requests targeting Fanvil x210 admin endpoints"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-64055"
strings:
$s1 = "/cgi-bin/upload_firmware" ascii wide nocase
$s2 = "/cgi-bin/reboot" ascii wide nocase
$s3 = "/cgi-bin/get_config" ascii wide nocase
condition:
any of them
}
Sigma Rule
title: Fanvil x210 Authentication Bypass Attempt
id: 8a9b3c2d-1e5f-4a7b-9c8d-0e1f2a3b4c5d
status: experimental
description: Detects HTTP requests to Fanvil x210 admin endpoints without authentication
author: Valters IT
date: 2025-04-10
references:
- https://nvd.nist.gov/vuln/detail/CVE-2025-64055
logsource:
category: webserver
product: apache
service: http
detection:
selection:
cs-method: 'POST'
cs-uri-stem:
- '/cgi-bin/upload_firmware'
- '/cgi-bin/reboot'
- '/cgi-bin/get_config'
condition: selection
falsepositives:
- Legitimate admin actions (rare)
level: high
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-64055 Fanvil x210 Authentication Bypass"; flow:to_server,established; content:"POST"; http_method; content:"/cgi-bin/upload_firmware"; http_uri; nocase; sid:1000001; rev:1;)
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-64055 Fanvil x210 Reboot Attempt"; flow:to_server,established; content:"POST"; http_method; content:"/cgi-bin/reboot"; http_uri; nocase; sid:1000002; rev:1;)
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-64055 Fanvil x210 Config Exfil"; flow:to_server,established; content:"GET"; http_method; content:"/cgi-bin/get_config"; http_uri; nocase; sid:1000003; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Isolate affected devices – Place Fanvil x210 V2 phones on a separate VLAN with strict firewall rules.
- Disable web interface – If not required, disable the web management interface via device settings.
- Monitor logs – Implement the above detection rules to identify exploitation attempts.
Long-term Fix:
- Vendor patch – Contact Fanvil for a firmware update. If unavailable, consider replacing the device.
- Network segmentation – Ensure VoIP devices are not accessible from untrusted networks.
- Access control – Use a reverse proxy with authentication for any web management interfaces.
Workaround:
- Block HTTP POST requests to
/cgi-bin/paths at the network perimeter using a web application firewall (WAF) or ACL.
Valters IT
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.