Lucene search

K
nessusThis script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.TENABLE_OT_SIEMENS_CVE-2023-0401.NASL
HistoryJan 11, 2024 - 12:00 a.m.

Siemens SCALANCE OpenSSL NULL Pointer Dereference (CVE-2023-0401)

2024-01-1100:00:00
This script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
23
siemens
scalance
openssl
null pointer dereference
cve-2023-0401
signature verification
crash
hash algorithm
pkcs7
smime
time stamp
tls
third party
tenable.ot
security scanner

CVSS3

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

AI Score

7.6

Confidence

High

EPSS

0.005

Percentile

77.4%

A NULL pointer can be dereferenced when signatures are being verified on PKCS7 signed or signedAndEnveloped data. In case the hash algorithm used for the signature is known to the OpenSSL library but the implementation of the hash algorithm is not available the digest initialization will fail. There is a missing check for the return value from the initialization function which later leads to invalid usage of the digest API most likely leading to a crash. The unavailability of an algorithm can be caused by using FIPS enabled configuration of providers or more commonly by not loading the legacy provider. PKCS7 data is processed by the SMIME library calls and also by the time stamp (TS) library calls. The TLS implementation in OpenSSL does not call these functions however third party applications would be affected if they call these functions to verify signatures on untrusted data.

This plugin only works with Tenable.ot.
Please visit https://www.tenable.com/products/tenable-ot for more information.

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

include('compat.inc');

if (description)
{
  script_id(501876);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/01/15");

  script_cve_id("CVE-2023-0401");

  script_name(english:"Siemens SCALANCE OpenSSL NULL Pointer Dereference (CVE-2023-0401)");

  script_set_attribute(attribute:"synopsis", value:
"The remote OT asset is affected by a vulnerability.");
  script_set_attribute(attribute:"description", value:
"A NULL pointer can be dereferenced when signatures are being verified
on PKCS7 signed or signedAndEnveloped data. In case the hash algorithm
used for the signature is known to the OpenSSL library but the
implementation of the hash algorithm is not available the digest
initialization will fail. There is a missing check for the return
value from the initialization function which later leads to invalid
usage of the digest API most likely leading to a crash. The
unavailability of an algorithm can be caused by using FIPS enabled
configuration of providers or more commonly by not loading the legacy
provider. PKCS7 data is processed by the SMIME library calls and also
by the time stamp (TS) library calls. The TLS implementation in
OpenSSL does not call these functions however third party applications
would be affected if they call these functions to verify signatures on
untrusted data.

This plugin only works with Tenable.ot.
Please visit https://www.tenable.com/products/tenable-ot for more information.");
  script_set_attribute(attribute:"see_also", value:"https://www.openssl.org/news/secadv/20230207.txt");
  # https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=d3b6dfd70db844c4499bec6ad6601623a565e674
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?11e6a733");
  script_set_attribute(attribute:"see_also", value:"https://cert-portal.siemens.com/productcert/pdf/ssa-699386.pdf");
  script_set_attribute(attribute:"solution", value:
"Refer to the vendor advisory.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2023-0401");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");
  script_cwe_id(476);

  script_set_attribute(attribute:"vuln_publication_date", value:"2023/02/08");
  script_set_attribute(attribute:"patch_publication_date", value:"2023/02/08");
  script_set_attribute(attribute:"plugin_publication_date", value:"2024/01/11");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb205-3_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb205-3ld_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb208_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb213-3_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb213-3ld_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xb216_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2g_poe_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2g_poe_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2sfp_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2sfp_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2sfp_g_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc206-2sfp_g_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc208_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc208eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc208g_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc208g_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc208g_poe_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216_3g_poe_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216_4c_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216_4c_g_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216_4c_g_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc216eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc224_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc224_4c_g_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc224_4c_g_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xf204_dna_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xf204_2ba_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xf204_2ba_dna_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp208_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp208eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp208poe_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp216_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp216eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xp216poe_eec_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr324wg_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr326-2c_poe_wg_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr328-4c_wg_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:siplus_net_scalance_xc206-2_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:siplus_net_scalance_xc206-2sfp_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:siplus_net_scalance_xc208_firmware:-");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:siplus_net_scalance_xc216-4c_firmware:-");
  script_set_attribute(attribute:"generated_plugin", value:"former");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Tenable.ot");

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

  script_dependencies("tenable_ot_api_integration.nasl");
  script_require_keys("Tenable.ot/Siemens");

  exit(0);
}


include('tenable_ot_cve_funcs.inc');

get_kb_item_or_exit('Tenable.ot/Siemens');

var asset = tenable_ot::assets::get(vendor:'Siemens');

var vuln_cpes = {
  "cpe:/o:siemens:scalance_xb205-3_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5205-3BB00-2AB2","6GK5205-3BB00-2TB2","6GK5205-3BD00-2TB2","6GK5205-3BD00-2AB2"]},
  "cpe:/o:siemens:scalance_xb205-3ld_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5205-3BF00-2TB2","6GK5205-3BF00-2AB2"]},
  "cpe:/o:siemens:scalance_xb208_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0BA00-2TB2","6GK5208-0BA00-2AB2"]},
  "cpe:/o:siemens:scalance_xb213-3_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5213-3BD00-2TB2","6GK5213-3BD00-2AB2","6GK5213-3BB00-2TB2","6GK5213-3BB00-2AB2"]},
  "cpe:/o:siemens:scalance_xb213-3ld_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5213-3BF00-2TB2","6GK5213-3BF00-2AB2"]},
  "cpe:/o:siemens:scalance_xb216_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0BA00-2TB2","6GK5216-0BA00-2AB2"]},
  "cpe:/o:siemens:scalance_xc206-2_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2BD00-2AC2","6GK5206-2BB00-2AC2"]},
  "cpe:/o:siemens:scalance_xc206-2g_poe_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2RS00-2AC2","6GK5206-2RS00-5AC2"]},
  "cpe:/o:siemens:scalance_xc206-2g_poe_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2RS00-5FC2"]},
  "cpe:/o:siemens:scalance_xc206-2sfp_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2BS00-2AC2"]},
  "cpe:/o:siemens:scalance_xc206-2sfp_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2BS00-2FC2"]},
  "cpe:/o:siemens:scalance_xc206-2sfp_g_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2GS00-2AC2","6GK5206-2GS00-2TC2"]},
  "cpe:/o:siemens:scalance_xc206-2sfp_g_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5206-2GS00-2FC2"]},
  "cpe:/o:siemens:scalance_xc208_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0BA00-2AC2"]},
  "cpe:/o:siemens:scalance_xc208eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0BA00-2FC2"]},
  "cpe:/o:siemens:scalance_xc208g_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0GA00-2AC2","6GK5208-0GA00-2TC2"]},
  "cpe:/o:siemens:scalance_xc208g_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0GA00-2FC2"]},
  "cpe:/o:siemens:scalance_xc208g_poe_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0RA00-2AC2","6GK5208-0RA00-5AC2"]},
  "cpe:/o:siemens:scalance_xc216_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0BA00-2AC2"]},
  "cpe:/o:siemens:scalance_xc216_3g_poe_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-3RS00-2AC2","6GK5216-3RS00-5AC2"]},
  "cpe:/o:siemens:scalance_xc216_4c_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-4BS00-2AC2"]},
  "cpe:/o:siemens:scalance_xc216_4c_g_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-4GS00-2AC2","6GK5216-4GS00-2TC2"]},
  "cpe:/o:siemens:scalance_xc216_4c_g_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-4GS00-2FC2"]},
  "cpe:/o:siemens:scalance_xc216eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0BA00-2FC2"]},
  "cpe:/o:siemens:scalance_xc224_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5224-0BA00-2AC2"]},
  "cpe:/o:siemens:scalance_xc224_4c_g_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5224-4GS00-2AC2","6GK5224-4GS00-2TC2"]},
  "cpe:/o:siemens:scalance_xc224_4c_g_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5224-4GS00-2FC2"]},
  "cpe:/o:siemens:scalance_xf204_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5204-0BA00-2GF2"]},
  "cpe:/o:siemens:scalance_xf204_dna_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5204-0BA00-2YF2"]},
  "cpe:/o:siemens:scalance_xf204_2ba_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5204-2AA00-2GF2"]},
  "cpe:/o:siemens:scalance_xf204_2ba_dna_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5204-2AA00-2YF2"]},
  "cpe:/o:siemens:scalance_xp208_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0HA00-2AS6","6GK5208-0HA00-2TS6"]},
  "cpe:/o:siemens:scalance_xp208eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0HA00-2ES6"]},
  "cpe:/o:siemens:scalance_xp208poe_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5208-0UA00-5ES6"]},
  "cpe:/o:siemens:scalance_xp216_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0HA00-2AS6","6GK5216-0HA00-2TS6"]},
  "cpe:/o:siemens:scalance_xp216eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0HA00-2ES6"]},
  "cpe:/o:siemens:scalance_xp216poe_eec_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5216-0UA00-5ES6"]},
  "cpe:/o:siemens:scalance_xr324wg_firmware:-" :
      {"family" : "SCALANCEX300", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5324-0BA00-3AR3","6GK5324-0BA00-2AR3"]},
  "cpe:/o:siemens:scalance_xr326-2c_poe_wg_firmware:-" :
      {"family" : "SCALANCEX300", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5326-2QS00-3AR3","6GK5326-2QS00-3RR3"]},
  "cpe:/o:siemens:scalance_xr328-4c_wg_firmware:-" :
      {"family" : "SCALANCEX300", "versionEndExcluding" : "4.5", "orderNumbers": ["6GK5328-4FS00-3AR3","6GK5328-4FS00-3RR3","6GK5328-4FS00-2AR3","6GK5328-4FS00-2RR3","6GK5328-4SS00-3AR3","6GK5328-4SS00-2AR3"]},
  "cpe:/o:siemens:siplus_net_scalance_xc206-2_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6AG1206-2BB00-7AC2"]},
  "cpe:/o:siemens:siplus_net_scalance_xc206-2sfp_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6AG1206-2BS00-7AC2"]},
  "cpe:/o:siemens:siplus_net_scalance_xc208_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6AG1208-0BA00-7AC2"]},
  "cpe:/o:siemens:siplus_net_scalance_xc216-4c_firmware:-" :
      {"family" : "SCALANCEX200", "versionEndExcluding" : "4.5", "orderNumbers": ["6AG1216-4BS00-7AC2"]}
};


tenable_ot::cve::compare_and_report(asset:asset, cpes:vuln_cpes, severity:SECURITY_HOLE);

CVSS3

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

AI Score

7.6

Confidence

High

EPSS

0.005

Percentile

77.4%