cbcvebase.
CVE-2023-28771
published 2023-04-25

CVE-2023-28771: Improper error message handling in Zyxel ZyWALL/USG series firmware versions 4.60 through 4.73, VPN series firmware versions 4.60 through 5.35, USG FLEX series…

PriorityP198critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
KEVITWEXPLOIT
CISA Known Exploited Vulnerabilitydue 2023-06-21
Exploited in the wild
EPSS
99.28%
99.9th percentile
Improper error message handling in Zyxel ZyWALL/USG series firmware versions 4.60 through 4.73, VPN series firmware versions 4.60 through 5.35, USG FLEX series firmware versions 4.60 through 5.35, and ATP series firmware versions 4.60 through 5.35, which could allow an unauthenticated attacker to execute some OS commands remotely by sending crafted packets to an affected device.

Affected

25 ranges
VendorProductVersion rangeFixed in
zyxelatp100_firmware>= 4.60 < 5.365.36
zyxelatp100w_firmware>= 4.60 < 5.355.35
zyxelatp200_firmware>= 4.60 < 5.365.36
zyxelatp500_firmware>= 4.60 < 5.365.36
zyxelatp700_firmware>= 4.60 < 5.365.36
zyxelatp800_firmware>= 4.60 < 5.365.36
zyxelatp_series_firmware
zyxelusg_flex_100_firmware>= 4.60 < 5.365.36
zyxelusg_flex_100w_firmware>= 4.60 < 5.365.36
zyxelusg_flex_200_firmware>= 4.60 < 5.365.36
zyxelusg_flex_500_firmware>= 4.60 < 5.365.36
zyxelusg_flex_50_firmware>= 4.60 < 5.365.36
zyxelusg_flex_50w_firmware>= 4.60 < 5.365.36
zyxelusg_flex_700_firmware>= 4.60 < 5.365.36
zyxelusg_flex_series_firmware
zyxelvpn1000_firmware>= 4.60 < 5.365.36
zyxelvpn100_firmware>= 4.60 < 5.365.36
zyxelvpn300_firmware>= 4.60 < 5.365.36
zyxelvpn50_firmware>= 4.60 < 5.365.36
zyxelvpn_series_firmware
zyxelzywall_usg_100_firmware
zyxelzywall_usg_100_firmware>= 4.60 < 4.734.73
zyxelzywall_usg_310_firmware
zyxelzywall_usg_310_firmware>= 4.60 < 4.734.73
zyxelzywall_usg_series_firmware

Detection & IOCsextracted from sources · hover to see the quote

ip193.32.162.190
ip109.205.213.30
ip109.207.200.42
ip92.118.39.16
ip171.22.136.15
ip171.22.136.18
ip147.182.243.49
domainhoz.1337.cx
domainbabaroga.lib
domaindragon.lib
domainblacknurse.lib
domaintempest.lib
domainroutercontroller.geek
domaindvrcontroller.libre
portUDP/500
filenamelolmips
path/tmp/a
otherzywall (execution parameter)
otherpte8cjbdwrmn57g4i6qual20s1k3vfoh
otherhard-coded hex value 0x17b99063 (Mirai variant first C2 packet)
otherlistening tun0 (console string printed on execution)
otherTCP Connect (C2 first-packet prefix, Katana/Shinji botnet)
bytes
XOR key 0x55 on 32-byte decryption key, then ChaCha20 decrypt (Dark.IoT config decryption)
  • CVE-2023-28771 is exploited via a crafted IKE packet sent over UDP port 500 targeting Zyxel firewall devices; monitor/block malformed IKE traffic on UDP/500 from untrusted sources.
  • Post-exploitation payloads are exclusively MIPS architecture ELF binaries, dropped to /tmp with filenames like '.zw' and executed with the 'zywall' argument; hunt for MIPS ELF drops in /tmp on Linux-based firewall devices.
  • Dark.IoT variant can be identified by the hardcoded string 'pte8cjbdwrmn57g4i6qual20s1k3vfoh' and its use of ChaCha20 config encryption with a 32-byte key XOR'd with 0x55.
  • The Mirai variant (6/13 botnet) sends a hard-coded first packet value of 0x17b99063 followed by the victim's public IP to its C2; this byte pattern in C2 traffic is a strong detection signal.
  • The Katana/Shinji botnet (6/26 sample) prefixes its initial C2 packet with 'TCP Connect' and uses C2 domain djk38zbdhqpdlshfb[.]shinji[.]app; monitor for this string in outbound TCP session initiation.
  • The Katana/Shinji botnet checks execution path against '/lib', '/sbin/', and '/usr/' and reads '/proc/self/maps'; anomalous reads of /proc/self/maps by network-facing processes may indicate active botnet execution.
  • Dark.IoT C2 domains use OpenNIC TLDs (.lib, .geek, .libre); DNS queries for these TLDs from IoT/firewall devices are a strong indicator of Dark.IoT infection.
  • All 244 exploit-source IPs observed by GreyNoise on June 16 were classified malicious and geolocated to Verizon Business infrastructure; because the exploit is UDP-based, IP spoofing is possible — do not rely solely on source IP for attribution.
  • ·The exploit targets the IKE packet decoder on UDP/500; Zyxel devices with this port unnecessarily exposed to the internet are at highest risk. Reducing UDP/500 exposure where IKE/VPN is not required is a key mitigation.
  • ·The campaign updated its infrastructure and payloads within days (observed changes from 6/7 to 6/8–6/27), meaning static IP/domain blocklists will have limited longevity; behavioral detection is preferred.
  • ·The Mirai variant (6/13) uses an index-based XOR decoding scheme with multiple keys for its .rodata configuration; static string extraction will not reveal C2 servers without implementing the decoding logic.

CVSS provenance

nvdv3.19.8CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vulncheck9.8CRITICAL
cisa9.8CRITICAL
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.