#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(504760);
script_version("1.5");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/03/12");
script_cve_id("CVE-2024-9681");
script_xref(name:"ICSA", value:"25-226-07");
script_name(english:"Siemens SCALANCE and RUGGEDCOM Devices Incorrect Comparison (CVE-2024-9681)");
script_set_attribute(attribute:"synopsis", value:
"The remote OT asset is affected by a vulnerability.");
script_set_attribute(attribute:"description", value:
"When curl is asked to use HSTS, the expiry time for a subdomain might
overwrite a parent domain's cache entry, making it end sooner or later
than otherwise intended. This affects curl using applications that
enable HSTS and use URLs with the insecure `HTTP://` scheme and
perform transfers with hosts like `x.example.com` as well as
`example.com` where the first host is a subdomain of the second host.
(The HSTS cache either needs to have been populated manually or there
needs to have been previous HTTPS accesses done as the cache needs to
have entries for the domains involved to trigger this problem.)
When `x.example.com` responds with `Strict-Transport-Security:`
headers, this bug can make the subdomain's expiry timeout *bleed
over* and get set for the parent domain `example.com` in curl's HSTS
cache. The result of a triggered bug is that HTTP accesses to
`example.com` get converted to HTTPS for a different period of time
than what was asked for by the origin server. If `example.com` for
example stops supporting HTTPS at its expiry time, curl might then
fail to access `http://example.com` until the (wrongly set) timeout
expires. This bug can also expire the parent's entry *earlier*, thus
making curl inadvertently switch back to insecure HTTP earlier than
otherwise intended.
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/html/ssa-355557.html");
script_set_attribute(attribute:"see_also", value:"https://support.industry.siemens.com/cs/ww/en/view/109988839/");
script_set_attribute(attribute:"see_also", value:"https://www.cisa.gov/news-events/ics-advisories/ICSA-25-226-07");
script_set_attribute(attribute:"see_also", value:"https://cert-portal.siemens.com/productcert/html/ssa-089022.html");
script_set_attribute(attribute:"solution", value:
"The following text was originally created by the Cybersecurity and Infrastructure Security Agency (CISA). The original
can be found at CISA.gov.
Siemens has identified the following specific workarounds and mitigations users can apply to reduce risk:
- All affected products: Update to V3.2 or later version
As a general security measure, Siemens recommends protecting network access to devices with appropriate mechanisms. To
operate the devices in a protected IT environment, Siemens recommends configuring the environment according to Siemens'
operational guidelines for industrial security and following recommendations in the product manuals.
Additional information on industrial security by Siemens can be found on the Siemens industrial security webpage
For more information see the associated Siemens security advisory SSA-355557 in HTML and CSAF.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:H/Au:N/C:N/I:C/A:P");
script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:L");
script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2024-9681");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_cwe_id(697);
script_set_attribute(attribute:"vuln_publication_date", value:"2025/08/12");
script_set_attribute(attribute:"patch_publication_date", value:"2025/08/12");
script_set_attribute(attribute:"plugin_publication_date", value:"2025/11/18");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:ruggedcom_rst2428p_firmware:3.2");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc-300_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr-300_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xc-400_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr-500wg_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xr-500_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xcm-300_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xrm-300_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xch-300_series_firmware");
script_set_attribute(attribute:"cpe", value:"cpe:/o:siemens:scalance_xrh-300_series_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) 2025-2026 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:ruggedcom_rst2428p_firmware:3.2" :
{"versionEndExcluding" : "3.3", "family" : "RuggedCom", "orderNumbers" : ['6GK6242-6PA00']},
"cpe:/o:siemens:scalance_xc-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"},
"cpe:/o:siemens:scalance_xr-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"},
"cpe:/o:siemens:scalance_xc-400_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX400"},
"cpe:/o:siemens:scalance_xr-500wg_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX500"},
"cpe:/o:siemens:scalance_xr-500_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX500"},
"cpe:/o:siemens:scalance_xcm-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"},
"cpe:/o:siemens:scalance_xrm-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"},
"cpe:/o:siemens:scalance_xch-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"},
"cpe:/o:siemens:scalance_xrh-300_series_firmware" :
{"versionEndExcluding" : "3.3", "family" : "SCALANCEX300"}
};
tenable_ot::cve::compare_and_report(asset:asset, cpes:vuln_cpes, severity:SECURITY_WARNING);
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation