ICS Advisory (ICSA-21-350-17)

Siemens JT Utilities and JT Open Toolkit

Click to Tweet.
Click to send to Facebook.
Click to Share.

Legal Notice

All information products included in https://us-cert.cisa.gov/ics are provided "as is" for informational purposes only. The Department of Homeland Security (DHS) does not provide any warranties of any kind regarding any information contained within. DHS does not endorse any commercial product or service, referenced in this product or otherwise. Further dissemination of this product is governed by the Traffic Light Protocol (TLP) marking in the header. For more information about TLP, see https://us-cert.cisa.gov/tlp/.


 

1. EXECUTIVE SUMMARY

  • CVSS v3 7.8
  • ATTENTION: Low attack complexity
  • Vendor: Siemens
  • Equipment: JT Utilities, JT Open Toolkit
  • Vulnerabilities: Out-of-bounds Write, Out-of-bounds Read, Stack-based Buffer Overflow, Use After Free, Improper Restriction of Operations within the Bounds of a Memory Buffer, Heap-based Buffer Overflow

2. RISK EVALUATION

Successful exploitation of these vulnerabilities could lead the application to crash or allow arbitrary code execution.

3. TECHNICAL DETAILS

3.1 AFFECTED PRODUCTS

The following versions of JT Open Toolkit (JTTK), an application programming interface, and JT Utilities, a series of command line utilities, are affected:

  • JT Utilities: All versions prior to v13.1.1.0
  • JTTK: All versions prior to v11.1.1.0

3.2 VULNERABILITY OVERVIEW

3.2.1    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products is vulnerable to an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44430 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H). 

3.2.2    OUT-OF-BOUNDS READ CWE-125

JTTK library in affected products is vulnerable to an out-of-bounds read past the end of an allocated buffer when parsing specially crafted JT files. This could allow an attacker to leak information in the context of the current process.

CVE-2021-44431 has been assigned to this vulnerability. A CVSS v3 base score of 3.3 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N).

3.2.3    STACK-BASED BUFFER OVERFLOW CWE-121

JTTK library in affected products is vulnerable to stack-based buffer overflow while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44432 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.4    USE AFTER FREE CWE-416

JTTK library in affected products contains a use after free vulnerability that could be triggered while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44433 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.5    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products is vulnerable to an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44434 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.6    STACK-BASED BUFFER OVERFLOW CWE-121

JTTK library in affected products is vulnerable to stack-based buffer overflow while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44435 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.7    OUT-OF-BOUNDS READ CWE-125

JTTK library in affected products is vulnerable to an out-of-bounds read past the end of an allocated buffer when parsing specially crafted JT files. This could allow an attacker to leak information in the context of the current process.

CVE-2021-44436 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.8    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products is vulnerable to an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44437 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.9    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products is vulnerable to an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44438 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.10    OUT-OF-BOUNDS READ CWE-125

JTTK library in affected products is vulnerable to an out-of-bounds read past the end of an allocated buffer when parsing specially crafted JT files. This could allow an attacker to leak information in the context of the current process.

CVE-2021-44439 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.11    IMPROPER RESTRICTION OF OPERATIONS WITHIN THE BOUNDS CWE-119

JTTK library in affected products is vulnerable to memory corruption condition while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44440 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.12    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products contains an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44441 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.13    HEAP-BASED BUFFER OVERFLOW CWE-122

JTTK library in affected products contains an out-of-bounds write past the fixed-length heap-based buffer while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44442 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.14    OUT-OF-BOUNDS WRITE CWE-787

JTTK library in affected products contains an out-of-bounds write past the end of an allocated structure while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44443 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.2.15    OUT-OF-BOUNDS READ CWE-125

JTTK library in affected products is vulnerable to an out-of-bounds read past the end of an allocated buffer when parsing specially crafted JT files. This could allow an attacker to leak information in the context of the current process.

CVE-2021-44444 has been assigned to this vulnerability. A CVSS v3 base score of 3.3 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N).

3.2.16    HEAP-BASED BUFFER OVERFLOW CWE-122

JTTK library in affected products contains an out-of-bounds write past the fixed-length heap-based buffer while parsing specially crafted JT files. This could allow an attacker to execute code in the context of the current process.

CVE-2021-44445 has been assigned to this vulnerability. A CVSS v3 base score of 7.8 has been assigned; the CVSS vector string is (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H).

3.3 BACKGROUND

  • CRITICAL INFRASTRUCTURE SECTORS: Multiple
  • COUNTRIES/AREAS DEPLOYED: Worldwide
  • COMPANY HEADQUARTERS LOCATION: Germany

3.4 RESEARCHER

Bentley Systems Incorporated coordinated these vulnerabilities with Siemens.

4. MITIGATIONS

Siemens has released an update for the following versions:

Siemens has identified the following specific workarounds and mitigations users can apply to reduce the risk:

  • Avoid to open untrusted files from unknown sources using JTTK.
  • Avoid opening untrusted files from unknown sources in JT Utilities.

As a general security measure, Siemens strongly recommends protecting network access to devices with appropriate mechanisms. In order to operate the devices in a protected IT environment, Siemens recommends configuring the environment according to Siemens’ operational guidelines for Industrial Security and following the recommendations in the product manuals.

For more information about this issue, please see Siemens security advisory SSA-802578

For further inquiries on security vulnerabilities in Siemens products and solutions, please contact Siemens ProductCERT.

CISA recommends users take defensive measures to minimize the risk of exploitation of t these vulnerabilities. Specifically, users should:

  • Minimize network exposure for all control system devices and/or systems, and ensure they are not accessible from the Internet.
  • Locate control system networks and remote devices behind firewalls and isolate them from the business network.
  • When remote access is required, use secure methods, such as Virtual Private Networks (VPNs), recognizing VPNs may have vulnerabilities and should be updated to the most current version available. Also recognize VPN is only as secure as its connected devices.

CISA reminds organizations to perform proper impact analysis and risk assessment prior to deploying defensive measures.

CISA also provides a section for control systems security recommended practices on the ICS webpage on cisa.gov. Several recommended practices are available for reading and download, including Improving Industrial Control Systems Cybersecurity with Defense-in-Depth Strategies.

Additional mitigation guidance and recommended practices are publicly available on the ICS webpage on cisa.gov in the Technical Information Paper, ICS-TIP-12-146-01B--Targeted Cyber Intrusion Detection and Mitigation Strategies.

Organizations observing any suspected malicious activity should follow their established internal procedures and report their findings to CISA for tracking and correlation against other incidents.

No known public exploits specifically target these vulnerabilities. These vulnerabilities are not exploitable remotely.


Contact Information

For any questions related to this report, please contact the CISA at:

Email: CISAservicedesk@cisa.dhs.gov
Toll Free: 1-888-282-0870

For industrial control systems cybersecurity information:  https://us-cert.cisa.gov/ics 
or incident reporting:  https://us-cert.cisa.gov/report

CISA continuously strives to improve its products and services. You can help by choosing one of the links below to provide feedback about this product.

This product is provided subject to this Notification and this Privacy & Use policy.

Please share your thoughts.

We recently updated our anonymous product survey; we'd welcome your feedback.