CVE-2020-29583

9.8 CRITICAL

📋 TL;DR

CVE-2020-29583 is a critical vulnerability in Zyxel USG devices where firmware version 4.60 includes a hidden administrative account (zyfwp) with a hardcoded, unchangeable password found in cleartext. This allows attackers to gain full admin access via SSH or the web interface, affecting organizations using these devices for network security.

💻 Affected Systems

Products:
  • Zyxel USG series devices (e.g., USG40, USG60, USG110, USG210, USG310, USG1100, USG1900, USG2200)
Versions: Firmware version 4.60 specifically; earlier or later versions may be affected if they include this account.
Operating Systems: Embedded firmware on Zyxel hardware
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability is present by default in the affected firmware; no special configuration is required. Other Zyxel products like AP controllers might also be impacted based on references.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers gain full administrative control, enabling them to reconfigure the firewall, intercept network traffic, deploy malware, or use the device as a pivot point into the internal network, leading to data breaches or service disruption.

🟠

Likely Case

Unauthorized users exploit the account to access the device, potentially stealing sensitive data, modifying network settings, or launching further attacks from within the network.

🟢

If Mitigated

With proper controls like network segmentation and monitoring, impact is limited to isolated device compromise, but full admin access still poses significant risk if exploited.

🌐 Internet-Facing: HIGH, as devices exposed to the internet are directly accessible to attackers, making exploitation trivial if the account credentials are known.
🏢 Internal Only: MEDIUM, as internal attackers or malware could exploit this if they gain network access, but it requires some level of initial foothold.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: CONFIRMED
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires knowledge of the hardcoded password, which is publicly documented. Attackers can use standard SSH or web login tools; no advanced skills are needed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firmware versions after 4.60, such as ZLD4.60 Patch 1 or later updates (check vendor advisories for exact versions).

Vendor Advisory: https://businessforum.zyxel.com/discussion/5254/whats-new-for-zld4-60-patch-1-available-on-dec-15

Restart Required: Yes

Instructions:

1. Check current firmware version on the Zyxel device via web interface or CLI. 2. Download the patched firmware from Zyxel's official site. 3. Upload and apply the update through the web interface or CLI. 4. Reboot the device to complete the installation.

🔧 Temporary Workarounds

Disable SSH and restrict web access

all

Temporarily disable SSH services and limit web interface access to trusted IPs to reduce attack surface.

Via web interface: Navigate to Configuration > System > Management > Service, disable SSH.
Via CLI: set system service ssh disable
Add IP restrictions in firewall rules for management interfaces.

🧯 If You Can't Patch

  • Isolate the device on a dedicated management network with strict access controls to limit exposure.
  • Monitor logs for login attempts using the zyfwp account and set up alerts for unauthorized access.

🔍 How to Verify

Check if Vulnerable:

Attempt to log in via SSH or web interface using the zyfwp account with known credentials (check public references for password). If successful, the device is vulnerable.

Check Version:

Via CLI: show version, or via web interface: check System Information for firmware version.

Verify Fix Applied:

After patching, verify the firmware version is updated and test login with the zyfwp account; it should fail. Also, check vendor notes that the account is removed or password changed.

📡 Detection & Monitoring

Log Indicators:

  • Failed or successful login attempts for user 'zyfwp' in SSH or web logs.
  • Unusual administrative actions from unknown IPs.

Network Indicators:

  • SSH or HTTP traffic to management ports from unexpected sources.
  • Anomalous network configuration changes.

SIEM Query:

Example: (event_source="zyxel" AND user="zyfwp") OR (event_type="authentication" AND result="success" AND user="zyfwp")

🔗 References

📤 Share & Export