CVE-2023-6764

8.1 HIGH

📋 TL;DR

A format string vulnerability in the IPSec VPN feature of Zyxel firewall and VPN devices allows remote code execution. Attackers could execute arbitrary code on affected devices by sending specially crafted payloads. This affects multiple Zyxel ATP, USG FLEX, and USG20(W)-VPN series devices with vulnerable firmware versions.

💻 Affected Systems

Products:
  • Zyxel ATP series
  • Zyxel USG FLEX series
  • Zyxel USG FLEX 50(W) series
  • Zyxel USG20(W)-VPN series
Versions: ATP: 4.32 through 5.37 Patch 1, USG FLEX: 4.50 through 5.37 Patch 1, USG FLEX 50(W): 4.16 through 5.37 Patch 1, USG20(W)-VPN: 4.16 through 5.37 Patch 1
Operating Systems: Zyxel firmware
Default Config Vulnerable: ⚠️ Yes
Notes: Requires IPSec VPN feature to be enabled and accessible. Attack requires knowledge of device memory layout.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete device compromise allowing attacker to install persistent backdoors, pivot to internal networks, intercept traffic, or disable security functions.

🟠

Likely Case

Device compromise leading to network reconnaissance, credential theft, or use as a foothold for lateral movement.

🟢

If Mitigated

Limited impact if devices are behind additional security controls, have restricted VPN access, or are patched promptly.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: HIGH

Exploitation requires detailed knowledge of device memory layout and configuration. No public exploit code available as of analysis.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 5.37 Patch 1

Vendor Advisory: https://www.zyxel.com/global/en/support/security-advisories/zyxel-security-advisory-for-multiple-vulnerabilities-in-firewalls-and-aps-02-20-2024

Restart Required: Yes

Instructions:

1. Download latest firmware from Zyxel support portal. 2. Backup current configuration. 3. Upload and install firmware update via web interface or CLI. 4. Reboot device. 5. Verify firmware version.

🔧 Temporary Workarounds

Disable IPSec VPN

all

Temporarily disable IPSec VPN feature if not required

Configuration varies by device - use web interface or CLI to disable IPSec VPN services

Restrict VPN Access

all

Limit VPN access to trusted IP addresses only

Configure firewall rules to restrict VPN connections to specific source IPs

🧯 If You Can't Patch

  • Isolate affected devices in separate network segment with strict access controls
  • Implement network monitoring and intrusion detection for suspicious VPN traffic patterns

🔍 How to Verify

Check if Vulnerable:

Check firmware version via web interface (System > Maintenance > Firmware) or CLI command 'show version'

Check Version:

show version

Verify Fix Applied:

Verify firmware version is above vulnerable ranges: ATP > 5.37 Patch 1, USG FLEX > 5.37 Patch 1, USG FLEX 50(W) > 5.37 Patch 1, USG20(W)-VPN > 5.37 Patch 1

📡 Detection & Monitoring

Log Indicators:

  • Unusual IPSec connection attempts
  • Failed VPN authentication from unknown sources
  • System log entries indicating memory corruption

Network Indicators:

  • Unusual traffic patterns to/from VPN ports (UDP 500, 4500)
  • Multiple malformed IPSec packets
  • Traffic spikes from single source to VPN interface

SIEM Query:

source="zyxel_firewall" AND (event_type="vpn_failure" OR event_type="memory_error" OR event_type="system_alert")

🔗 References

📤 Share & Export