Lucene search

K
nessusThis script is Copyright (C) 2023 and is owned by Tenable, Inc. or an Affiliate thereof.ZYXEL_USG_CVE-2023-33010.NASL
HistoryMay 26, 2023 - 12:00 a.m.

Zyxel USG < 4.35 / ATP < 4.35 / VPN < 4.35 / ZyWALL < 4.35 (RCE) (CVE-2020-9054)

2023-05-2600:00:00
This script is Copyright (C) 2023 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
17
zyxel
atp
zywall
vpn
firmware
buffer overflow
vulnerabilities
remote code execution
denial of service
cve-2023-33009
nessus

0.968 High

EPSS

Percentile

99.7%

The Firmware version of the Zyxel USG, ATP, ZyWALL or VPN is affected by multiple vulnerabilities:

  • A buffer overflow vulnerability in the notification function in Zyxel ATP series firmware versions 4.32 through 5.36 Patch 1, USG FLEX series firmware versions 4.50 through 5.36 Patch 1, USG FLEX 50(W) firmware versions 4.25 through 5.36 Patch 1, USG20(W)-VPN firmware versions 4.25 through 5.36 Patch 1, VPN series firmware versions 4.30 through 5.36 Patch 1, ZyWALL/USG series firmware versions 4.25 through 4.73 Patch 1, could allow an unauthenticated attacker to cause denial-of-service (DoS) conditions and even a remote code execution on an affected device. (CVE-2023-33009)

  • A buffer overflow vulnerability in the notification function in Zyxel ATP series firmware versions 4.32 through 5.36 Patch 1, USG FLEX series firmware versions 4.50 through 5.36 Patch 1, USG FLEX 50(W) firmware versions 4.25 through 5.36 Patch 1, USG20(W)-VPN firmware versions 4.25 through 5.36 Patch 1, VPN series firmware versions 4.30 through 5.36 Patch 1, ZyWALL/USG series firmware versions 4.25 through 4.73 Patch 1, could allow an unauthenticated attacker to cause denial-of-service (DoS) conditions and even a remote code execution on an affected device. (CVE-2023-33010)

Note that Nessus has not tested for this issue but has instead relied only on the applicationโ€™s self-reported version number.

#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##

include('compat.inc');

if (description)
{
  script_id(176416);
  script_version("1.4");
  script_set_attribute(attribute:"plugin_modification_date", value:"2023/06/09");

  script_cve_id("CVE-2023-33009", "CVE-2023-33010");
  script_xref(name:"CISA-KNOWN-EXPLOITED", value:"2023/06/26");
  script_xref(name:"IAVA", value:"2023-A-0279");

  script_name(english:"Zyxel USG < 4.35 / ATP < 4.35 / VPN < 4.35 / ZyWALL < 4.35 (RCE) (CVE-2020-9054)");

  script_set_attribute(attribute:"synopsis", value:
"The remote security gateway is affected by a remote code execution vulnerability.");
  script_set_attribute(attribute:"description", value:
"The Firmware version of the Zyxel USG, ATP, ZyWALL or VPN is affected by multiple vulnerabilities: 

  - A buffer overflow vulnerability in the notification function in Zyxel ATP series firmware versions 4.32 
    through 5.36 Patch 1, USG FLEX series firmware versions 4.50 through 5.36 Patch 1, USG FLEX 50(W) 
    firmware versions 4.25 through 5.36 Patch 1, USG20(W)-VPN firmware versions 4.25 through 5.36 Patch 1, 
    VPN series firmware versions 4.30 through 5.36 Patch 1, ZyWALL/USG series firmware versions 4.25 through 
    4.73 Patch 1, could allow an unauthenticated attacker to cause denial-of-service (DoS) conditions and 
    even a remote code execution on an affected device. (CVE-2023-33009)

  - A buffer overflow vulnerability in the notification function in Zyxel ATP series firmware versions 4.32 
    through 5.36 Patch 1, USG FLEX series firmware versions 4.50 through 5.36 Patch 1, USG FLEX 50(W) firmware 
    versions 4.25 through 5.36 Patch 1, USG20(W)-VPN firmware versions 4.25 through 5.36 Patch 1, VPN series 
    firmware versions 4.30 through 5.36 Patch 1, ZyWALL/USG series firmware versions 4.25 through 4.73 Patch 1, 
    could allow an unauthenticated attacker to cause denial-of-service (DoS) conditions and even a remote code 
    execution on an affected device. (CVE-2023-33010)

Note that Nessus has not tested for this issue but has instead relied only on the application's self-reported version
number.");
  # https://www.zyxel.com/global/en/support/security-advisories/zyxel-security-advisory-for-multiple-buffer-overflow-vulnerabilities-of-firewalls
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?5a194b9d");
  script_set_attribute(attribute:"solution", value:
"Upgrade to Zyxel USG / ATP / VPN to version 4.36 Patch 1 or later or upgrade Zyxel ZyWALL to version 4.73 Patch 1 or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:F/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2023-33010");

  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2023/05/24");
  script_set_attribute(attribute:"patch_publication_date", value:"2023/05/24");
  script_set_attribute(attribute:"plugin_publication_date", value:"2023/05/26");

  script_set_attribute(attribute:"potential_vulnerability", value:"true");
  script_set_attribute(attribute:"plugin_type", value:"combined");
  script_set_attribute(attribute:"cpe", value:"cpe:/h:zyxel:usg_flex");
  script_set_attribute(attribute:"stig_severity", value:"I");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Firewalls");

  script_copyright(english:"This script is Copyright (C) 2023 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("zyxel_usg_web_detect.nbin", "zyxel_usg_detect.nbin");
  script_require_keys("Settings/ParanoidReport", "installed_sw/Zyxel Unified Security Gateway (USG)");
  script_require_ports("Services/www", 80, 443);

  exit(0);
}

include('vcf.inc');

# we don't have the ability to detect the patch level yet,
# so paranoia is required and fixed version is + .01
if (report_paranoia < 2) audit(AUDIT_PARANOID);

var app = 'Zyxel Unified Security Gateway (USG)';

var app_info = vcf::combined_get_app_info(app:app);

var model = app_info['Model'];
var constraints = [];

if(empty_or_null(model))
  audit(AUDIT_OS_CONF_UNKNOWN, 'Zyxel device');

if ('ATP' >< model)
  constraints = [{'min_version':'4.32', 'fixed_version' : '5.36.01', 'fixed_display' : '5.36 Patch 1' }];
else if (model =~ "USG FLEX [25]0W?[^0]")
  constraints = [{'min_version':'4.25', 'fixed_version' : '5.36.01', 'fixed_display' : '5.36 Patch 1' }];
else if ('USG FLEX' >< model)
  constraints = [{'min_version':'4.50', 'fixed_version' : '5.36.01', 'fixed_display' : '5.36 Patch 1' }];
else if ('VPN' >< model)
  constraints = [{'min_version':'4.30', 'fixed_version' : '5.36.01', 'fixed_display' : '5.36 Patch 1' }];
else if ('ZyWALL' >< model)
  constraints = [{'min_version':'4.25', 'fixed_version' : '4.73.01', 'fixed_display' : '4.73 Patch 1' }];
else
  audit(AUDIT_NOT_INST, 'Zyxel USG / ATP / VPN / ZyWALL Device');

vcf::check_version_and_report(
    app_info:app_info,
    constraints:constraints,
    severity:SECURITY_HOLE
);
VendorProductVersionCPE
zyxelusg_flexcpe:/h:zyxel:usg_flex