cbcvebase.
CVE-2024-29974
published 2024-06-04

CVE-2024-29974: ** UNSUPPORTED WHEN ASSIGNED ** The remote code execution vulnerability in the CGI program “file_upload-cgi” in Zyxel NAS326 firmware versions before…

PriorityP278critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
EPSS
22.78%
97.5th percentile
** UNSUPPORTED WHEN ASSIGNED **
The remote code execution vulnerability in the CGI program “file_upload-cgi” in Zyxel NAS326 firmware versions before V5.21(AAZF.17)C0 and NAS542 firmware versions before V5.21(ABAG.14)C0 could allow an unauthenticated attacker to execute arbitrary code by uploading a crafted configuration file to a vulnerable device.

Affected

4 ranges
VendorProductVersion rangeFixed in
zyxelnas326_firmware< V5.21(AAZF.17)C0V5.21(AAZF.17)C0
zyxelnas326_firmware< 5.21\(aazf.17\)c05.21\(aazf.17\)c0
zyxelnas542_firmware< V5.21(ABAG.14)C0V5.21(ABAG.14)C0
zyxelnas542_firmware< 5.21\(abag.14\)c05.21\(abag.14\)c0

Detection & IOCsextracted from sources · hover to see the quote

url/desktop,/cgi-bin/file_upload-cgi/
path/cgi-bin/file_upload-cgi
filename*.rom
snort
alert http any any -> $HOME_NET any (msg:"ET WEB_SPECIFIC_APPS Zyxel NAS CGI Remote Code Execution via Configuration Upload (CVE-2024-29974)"; flow:established, to_server; http.method; content:"POST"; http.uri; content:"/desktop|2c|/cgi-bin/file_upload-cgi/"; fast_pattern; http.content_type; content:"multipart/form-data|3b|"; http.request_body; content:"filename|3d|"; content:"|2e|rom|22|"; distance:0; reference:url,outpost24.com/blog/zyxel-nas-critical-vulnerabilities/; reference:cve,2024-29974; classtype:web-application-activity; sid:2055909; rev:1; metadata:affected_product Zyxel, attack_target Server, tls_state plaintext, created_at 2024_09_18, cve CVE_2024_29974, deployment Perimeter, deployment Internal, confidence High, signature_severity Major, tag Exploit, updated_at 2024_09_18, mitre_tactic_id TA0001, mitre_tactic_name Initial_Access, mitre_technique_id T1190, mitre_technique_name Exploit_Public_Facing_Application; target:dest_ip;)
  • Exploit traffic is HTTP POST to the URI path containing '/desktop,/cgi-bin/file_upload-cgi/' with Content-Type 'multipart/form-data' and a request body containing a filename ending in '.rom' — all three conditions must be present for high-confidence detection.
  • The attack is unauthenticated — no session token or credentials are required, so absence of auth headers should not be used to filter out suspicious requests to this endpoint.
  • Public proof-of-concept exploits are available, raising the likelihood of opportunistic scanning and exploitation in the wild; prioritise perimeter and internal deployment of the Snort/Suricata rule (sid:2055909).
  • Reference blog with PoC details is outpost24.com/blog/zyxel-nas-critical-vulnerabilities/ — monitor for internal hosts making outbound connections to this domain, which may indicate attacker tooling fetching the PoC.
  • ·The Snort rule (sid:2055909) is marked 'tls_state plaintext' — it will NOT fire on HTTPS/TLS-encrypted traffic to the NAS management interface; ensure TLS inspection is in place if the device is exposed over HTTPS.
  • ·Fixed firmware versions are V5.21(AAZF.17)C0 for NAS326 and V5.21(ABAG.14)C0 for NAS542; devices running any earlier version remain vulnerable.
Stop checking back — get the weekly exploitation signal.

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.