CVSS3
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
EPSS
Percentile
56.3%
The ANSI C OPC UA SDK contains an integer overflow vulnerability that could cause the application to run into an infinite loop during certificate validation. This could allow an unauthenticated remote attacker to create a denial of service condition by sending a specially crafted certificate.
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(501684);
script_version("1.4");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/04/13");
script_cve_id("CVE-2023-28831");
script_name(english:"Siemens OPC UA SDK in SIMATIC S7 Integer Overflow (CVE-2023-28831)");
script_set_attribute(attribute:"synopsis", value:
"The remote OT asset is affected by a vulnerability.");
script_set_attribute(attribute:"description", value:
"The ANSI C OPC UA SDK contains an integer overflow vulnerability that
could cause the application to run into an infinite loop during
certificate validation. This could allow an unauthenticated remote
attacker to create a denial of service condition by sending a
specially crafted certificate.
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://cert-portal.siemens.com/productcert/pdf/ssa-711309.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-28831");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_cwe_id(190);
script_set_attribute(attribute:"vuln_publication_date", value:"2023/09/12");
script_set_attribute(attribute:"patch_publication_date", value:"2023/09/12");
script_set_attribute(attribute:"plugin_publication_date", value:"2023/09/25");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_et_200_sp_open_controller_cpu_1515sp_pc_firmware:-");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_drive_controller_cpu_1504d_tf_firmware:2.9.7");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_drive_controller_cpu_1504d_tf_firmware:3.0.3");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_drive_controller_cpu_1507d_tf_firmware:2.9.7");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_drive_controller_cpu_1507d_tf_firmware:3.0.3");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_s7-1200_cpu_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_s7-1500_cpu_firmware:2.9.7");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_s7-1500_cpu_firmware:3.0.3");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_et200pro_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:simatic_et200sp_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) 2023-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:simatic_drive_controller_cpu_1504d_tf_firmware:2.9.7" :
{"versionEndExcluding" : "2.9.7", "family" : "S71500", "orderNumbers" : ["6ES7615-4DF10-0AB0"]},
"cpe:/o:siemens:simatic_drive_controller_cpu_1504d_tf_firmware:3.0.3" :
{"versionStartIncluding" : "3.0.1", "versionEndExcluding" : "3.0.3", "family" : "S71500", "orderNumbers" : ["6ES7615-4DF10-0AB0"]},
"cpe:/o:siemens:simatic_drive_controller_cpu_1507d_tf_firmware:2.9.7" :
{"versionEndExcluding" : "2.9.7", "family" : "S71500", "orderNumbers" : ["6ES7615-7DF10-0AB0"]},
"cpe:/o:siemens:simatic_drive_controller_cpu_1507d_tf_firmware:3.0.3" :
{"versionStartIncluding" : "3.0.1", "versionEndExcluding" : "3.0.3", "family" : "S71500", "orderNumbers" : ["6ES7615-7DF10-0AB0"]},
"cpe:/o:siemens:simatic_et_200_sp_open_controller_cpu_1515sp_pc2_firmware:21.9" :
{"versionEndExcluding" : "21.9.7", "family" : "ET200SP"},
"cpe:/o:siemens:simatic_et_200_sp_open_controller_cpu_1515sp_pc2_firmware:30.0" :
{"versionStartIncluding" : "30.0.0", "family" : "ET200SP"},
"cpe:/o:siemens:simatic_s7-1500_cpu_firmware:2.9.7" :
{"versionEndExcluding" : "2.9.7", "family" : "S71500", "orderNumbers" : ["6ES7615-4DF10-0AB0", "6ES7615-7DF10-0AB0", "6ES7510-1SJ01-0AB0", "6ES7510-1DJ01-0AB0", "6ES7511-1AK01-0AB0", "6ES7511-1AK02-0AB0", "6ES7511-1CK00-0AB0", "6ES7511-1CK01-0AB0", "6ES7511-1FK01-0AB0", "6ES7511-1FK02-0AB0", "6ES7511-1TK01-0AB0", "6ES7511-1UK01-0AB0", "6ES7512-1CK00-0AB0", "6ES7512-1CK01-0AB0", "6ES7512-1SK01-0AB0", "6ES7512-1DK01-0AB0", "6ES7513-1AL01-0AB0", "6ES7513-1AL02-0AB0", "6ES7513-1FL01-0AB0", "6ES7513-1FL02-0AB0", "6ES7515-2AM01-0AB0", "6ES7515-2AM02-0AB0", "6ES7515-2FM01-0AB0", "6ES7515-2FM02-0AB0", "6ES7515-2TM01-0AB0", "6ES7515-2UM01-0AB0", "6ES7516-3AN01-0AB0", "6ES7516-3AN02-0AB0", "6ES7516-3FN01-0AB0", "6ES7516-3FN02-0AB0", "6ES7518-4AP00-3AB0", "6ES7518-4FP00-3AB0", "6AG1511-1AK01-2AB0", "6AG1511-1AK01-7AB0", "6AG1511-1AK02-2AB0", "6AG1511-1AK02-7AB0", "6AG2511-1AK01-1AB0", "6AG2511-1AK02-1AB0", "6AG2511-1AK01-4AB0", "6AG2511-1AK02-4AB0", "6AG1511-1FK01-2AB0", "6AG1511-1FK02-2AB0", "6AG1513-1AL01-2AB0", "6AG1513-1AL01-7AB0", "6AG1513-1AL02-2AB0", "6AG1513-1AL02-7AB0", "6AG1513-1FL01-2AB0", "6AG1513-1FL02-2AB0", "6AG1515-2FM01-2AB0", "6AG1515-2FM02-2AB0", "6AG2515-2FM02-4AB0", "6AG2515-2FM01-2AB0", "6AG1516-3AN01-2AB0", "6AG1516-3AN01-7AB0", "6AG1516-3AN02-2AB0", "6AG1516-3AN02-7AB0", "6AG2516-3AN02-4AB0", "6AG2516-3AN01-4AB0", "6AG1516-3FN01-2AB0", "6AG1516-3FN02-2AB0", "6AG2516-3FN02-2AB0", "6AG2516-3FN02-4AB0"]},
"cpe:/o:siemens:simatic_s7-1500_cpu_firmware:3.0.3" :
{"versionEndExcluding" : "3.0.3", "family" : "S71500", "orderNumbers" : ["6ES7615-4DF10-0AB0", "6ES7615-7DF10-0AB0", "6ES7510-1SK03-0AB0", "6ES7510-1DK03-0AB0", "6ES7511-1AL03-0AB0", "6ES7511-1FL03-0AB0", "6ES7511-1TL03-0AB0", "6ES7511-1UL03-0AB0", "6ES7512-1SM03-0AB0", "6ES7512-1DM03-0AB0", "6ES7513-1AM03-0AB0", "6ES7513-1FM03-0AB0", "6ES7514-2SN03-0AB0", "6ES7514-2DN03-0AB0", "6ES7514-2WN03-0AB0", "6ES7514-2VN03-0AB0", "6ES7515-2AN03-0AB0", "6ES7515-2FN03-0AB0", "6ES7515-2TN03-0AB0", "6ES7515-2UN03-0AB0", "6ES7516-3AP03-0AB0", "6ES7516-3FP03-0AB0", "6ES7516-3TN00-0AB0", "6ES7516-3UN00-0AB0", "6ES7517-3AP00-0AB0", "6ES7517-3FP00-0AB0", "6ES7517-3TP00-0AB0", "6ES7517-3UP00-0AB0", "6ES7518-4AP00-0AB0", "6ES7518-4AX00-1AB0", "6ES7518-4FP00-0AB0", "6ES7518-4FX00-1AB0", "6ES7518-4TP00-0AB0", "6ES7518-4UP00-0AB0", "6AG1518-4AP00-4AB0", "6AG1518-4AX00-4AC0", "6AG1518-4FP00-4AB0"]},
"cpe:/o:siemens:simatic_et200pro_firmware" :
{"versionEndExcluding" : "2.9.7", "family" : "ET200", "orderNumbers" : ["6ES7513-2GL00-0AB0", "6ES7513-2PL00-0AB0", "6ES7516-2GN00-0AB0", "6ES7516-2PN00-0AB0"]},
"cpe:/o:siemens:simatic_et200sp_firmware" :
{"versionEndExcluding" : "2.9.7", "family" : "ET200SP", "orderNumbers" : ["6AG1510-1SJ01-2AB0", "6AG2510-1SJ01-1AB0", "6AG1510-1DJ01-2AB0", "6AG1510-1DJ01-7AB0", "6AG2510-1DJ01-1AB0", "6AG2510-1DJ01-4AB0", "6AG1512-1SK01-2AB0", "6AG1512-1SK01-7AB0", "6AG2512-1SK01-1AB0", "6AG2512-1SK01-4AB0", "6AG1512-1DK01-2AB0", "6AG1512-1DK01-7AB0", "6AG2512-1DK01-1AB0", "6AG2512-1DK01-4AB0"]}
};
tenable_ot::cve::compare_and_report(asset:asset, cpes:vuln_cpes, severity:SECURITY_HOLE);