First published: Wed Mar 04 2020(Updated: )
Multiple ZyXEL network-attached storage (NAS) devices running firmware version 5.21 contain a pre-authentication command injection vulnerability, which may allow a remote, unauthenticated attacker to execute arbitrary code on a vulnerable device. ZyXEL NAS devices achieve authentication by using the weblogin.cgi CGI executable. This program fails to properly sanitize the username parameter that is passed to it. If the username parameter contains certain characters, it can allow command injection with the privileges of the web server that runs on the ZyXEL device. Although the web server does not run as the root user, ZyXEL devices include a setuid utility that can be leveraged to run any command with root privileges. As such, it should be assumed that exploitation of this vulnerability can lead to remote code execution with root privileges. By sending a specially-crafted HTTP POST or GET request to a vulnerable ZyXEL device, a remote, unauthenticated attacker may be able to execute arbitrary code on the device. This may happen by directly connecting to a device if it is directly exposed to an attacker. However, there are ways to trigger such crafted requests even if an attacker does not have direct connectivity to a vulnerable devices. For example, simply visiting a website can result in the compromise of any ZyXEL device that is reachable from the client system. Affected products include: NAS326 before firmware V5.21(AAZF.7)C0 NAS520 before firmware V5.21(AASZ.3)C0 NAS540 before firmware V5.21(AATB.4)C0 NAS542 before firmware V5.21(ABAG.4)C0 ZyXEL has made firmware updates available for NAS326, NAS520, NAS540, and NAS542 devices. Affected models that are end-of-support: NSA210, NSA220, NSA220+, NSA221, NSA310, NSA310S, NSA320, NSA320S, NSA325 and NSA325v2
Credit: cret@cert.org cret@cert.org
Affected Software | Affected Version | How to fix |
---|---|---|
Zyxel Multiple Network-Attached Storage (NAS) Devices | ||
Zyxel NAS326 | <5.21\(aazf.7\)c0 | |
Zyxel NAS326 | ||
Zyxel NAS520 Firmware | <5.21\(aasz.3\)c0 | |
Zyxel NAS520 Firmware | ||
Zyxel NAS540 Firmware | <5.21\(aatb.4\)c0 | |
Zyxel NAS540 Firmware | ||
Zyxel NAS542 Firmware | <5.21\(abag.4\)c0 | |
Zyxel NAS542 firmware | ||
Zyxel ZyWall ATP100 Firmware | >=4.35<4.35\(abps.3\)c0 | |
Zyxel ATP100 Firmware | ||
Zyxel ATP200 firmware | >=4.35<4.35\(abfw.3\)c0 | |
Zyxel Zywall ATP200 | ||
Zyxel ATP500 Firmware | >=4.35<4.35\(abfu.3\)c0 | |
Zyxel ATP500 Firmware | ||
Zyxel Zywall ATP800 Firmware | >=4.35<4.35\(abiq.3\)c0 | |
Zyxel ATP series firmware | ||
Zyxel USG20W-VPN Firmware | >=4.35<4.35\(abaq.3\)c0 | |
Zyxel USG20W-VPN Firmware | ||
Zyxel USG 20W-VPN Firmware | >=4.35<4.35\(abar.3\)c0 | |
Zyxel USG20W-VPN Firmware | ||
Zyxel USG 40 firmware | >=4.35<4.35\(aala.3\)c0 | |
Zyxel USG 40 | ||
Zyxel USG 40w firmware | >=4.35<4.35\(aalb.3\)c0 | |
Zyxel USG 40w firmware | ||
Zyxel USG 60W firmware | >=4.35<4.35\(aaky.3\)c0 | |
Zyxel USG 60 | ||
Zyxel USG 60W firmware | >=4.35<4.35\(aakz.3\)c0 | |
Zyxel USG 60W firmware | ||
Zyxel USG 110 Firmware | >=4.35<4.35\(aaph.3\)c0 | |
Zyxel USG 110 | ||
Zyxel USG firmware | >=4.35<4.35\(aapi.3\)c0 | |
Zyxel USG210 Firmware | ||
Zyxel USG 310 firmware | >=4.35<4.35\(aapj.3\)c0 | |
Zyxel USG 310 | ||
Zyxel USG 1100 firmware | >=4.35<4.35\(aapk.3\)c0 | |
Zyxel USG1100 firmware | ||
Zyxel USG1900 Firmware | >=4.35<4.35\(aapl.3\)c0 | |
Zyxel USG1900 Firmware | ||
Zyxel USG2200-VPN Firmware | >=4.35<4.35\(abae.3\)c0 | |
Zyxel USG2200-VPN | ||
Zyxel Zywall VPN 50 Firmware | >=4.35<4.35\(abhl.3\)c0 | |
Zyxel VPN50 Firmware | ||
Zyxel VPN100 | >=4.35<4.35\(abfv.3\)c0 | |
Zyxel Zywall VPN100 | ||
Zyxel Zywall VPN 300 Firmware | >=4.35<4.35\(abfc.3\)c0 | |
Zyxel Zywall VPN300 | ||
Zyxel VPN1000 Firmware | >=4.35<4.35\(abip.3\)c0 | |
Zyxel VPN1000 Firmware | ||
Zyxel Zywall 110 | >=4.35<4.35\(aaaa.3\)c0 | |
Zyxel Zywall 110 | ||
Zyxel Zywall 310 Firmware | >=4.35<4.35\(aaab.3\)c0 | |
Zyxel Zywall 310 Firmware | ||
Zyxel Zywall 1100 Firmware | >=4.35<4.35\(aaac.3\)c0 | |
Zyxel Zywall 1100 Firmware | ||
All of | ||
Zyxel NAS326 | <5.21\(aazf.7\)c0 | |
Zyxel NAS326 | ||
All of | ||
Zyxel NAS520 Firmware | <5.21\(aasz.3\)c0 | |
Zyxel NAS520 Firmware | ||
All of | ||
Zyxel NAS540 Firmware | <5.21\(aatb.4\)c0 | |
Zyxel NAS540 Firmware | ||
All of | ||
Zyxel NAS542 Firmware | <5.21\(abag.4\)c0 | |
Zyxel NAS542 firmware | ||
All of | ||
Zyxel ZyWall ATP100 Firmware | >=4.35<4.35\(abps.3\)c0 | |
Zyxel ATP100 Firmware | ||
All of | ||
Zyxel ATP200 firmware | >=4.35<4.35\(abfw.3\)c0 | |
Zyxel Zywall ATP200 | ||
All of | ||
Zyxel ATP500 Firmware | >=4.35<4.35\(abfu.3\)c0 | |
Zyxel ATP500 Firmware | ||
All of | ||
Zyxel Zywall ATP800 Firmware | >=4.35<4.35\(abiq.3\)c0 | |
Zyxel ATP series firmware | ||
All of | ||
Zyxel USG20W-VPN Firmware | >=4.35<4.35\(abaq.3\)c0 | |
Zyxel USG20W-VPN Firmware | ||
All of | ||
Zyxel USG 20W-VPN Firmware | >=4.35<4.35\(abar.3\)c0 | |
Zyxel USG20W-VPN Firmware | ||
All of | ||
Zyxel USG 40 firmware | >=4.35<4.35\(aala.3\)c0 | |
Zyxel USG 40 | ||
All of | ||
Zyxel USG 40w firmware | >=4.35<4.35\(aalb.3\)c0 | |
Zyxel USG 40w firmware | ||
All of | ||
Zyxel USG 60W firmware | >=4.35<4.35\(aaky.3\)c0 | |
Zyxel USG 60 | ||
All of | ||
Zyxel USG 60W firmware | >=4.35<4.35\(aakz.3\)c0 | |
Zyxel USG 60W firmware | ||
All of | ||
Zyxel USG 110 Firmware | >=4.35<4.35\(aaph.3\)c0 | |
Zyxel USG 110 | ||
All of | ||
Zyxel USG firmware | >=4.35<4.35\(aapi.3\)c0 | |
Zyxel USG210 Firmware | ||
All of | ||
Zyxel USG 310 firmware | >=4.35<4.35\(aapj.3\)c0 | |
Zyxel USG 310 | ||
All of | ||
Zyxel USG 1100 firmware | >=4.35<4.35\(aapk.3\)c0 | |
Zyxel USG1100 firmware | ||
All of | ||
Zyxel USG1900 Firmware | >=4.35<4.35\(aapl.3\)c0 | |
Zyxel USG1900 Firmware | ||
All of | ||
Zyxel USG2200-VPN Firmware | >=4.35<4.35\(abae.3\)c0 | |
Zyxel USG2200-VPN | ||
All of | ||
Zyxel Zywall VPN 50 Firmware | >=4.35<4.35\(abhl.3\)c0 | |
Zyxel VPN50 Firmware | ||
All of | ||
Zyxel VPN100 | >=4.35<4.35\(abfv.3\)c0 | |
Zyxel Zywall VPN100 | ||
All of | ||
Zyxel Zywall VPN 300 Firmware | >=4.35<4.35\(abfc.3\)c0 | |
Zyxel Zywall VPN300 | ||
All of | ||
Zyxel VPN1000 Firmware | >=4.35<4.35\(abip.3\)c0 | |
Zyxel VPN1000 Firmware | ||
All of | ||
Zyxel Zywall 110 | >=4.35<4.35\(aaaa.3\)c0 | |
Zyxel Zywall 110 | ||
All of | ||
Zyxel Zywall 310 Firmware | >=4.35<4.35\(aaab.3\)c0 | |
Zyxel Zywall 310 Firmware | ||
All of | ||
Zyxel Zywall 1100 Firmware | >=4.35<4.35\(aaac.3\)c0 | |
Zyxel Zywall 1100 Firmware |
ZyXEL has made firmware updates available for NAS326, NAS520, NAS540, NAS542, ATP100, ATP200, ATP500, ATP800, USG20-VPN, USG20W-VPN, USG40, USG40W, USG60, USG60W, USG110, USG210, USG310, USG1100, USG1900, USG2200, VPN50, VPN100, VPN300, VPN1000, ZyWALL110, ZyWALL310, and ZyWALL1100 devices.
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.