1. EXECUTIVE SUMMARY

  • CVSS v3 7.8
  • ATTENTION: Low skill level to exploit
  • Vendor: Siemens
  • Equipment: JT2Go and Teamcenter Visualization
  • Vulnerabilities: Type Confusion, Improper Restriction of XML External Entity Reference, Out-of-bounds Write, Heap-based Buffer Overflow, Stack-based Buffer Overflow, Untrusted Pointer Dereference, Out-of-bounds Read

2. UPDATE INFORMATION

This updated advisory is a follow-up to the original advisory titled ICSA-21-012-03 Siemens JT2Go and Teamcenter Visualization that was published January 12, 2021, to the ICS webpage on us-cert.cisa.gov.

3. RISK EVALUATION

Successful exploitation of these vulnerabilities could lead to arbitrary code execution.

4. TECHNICAL DETAILS

4.1 AFFECTED PRODUCTS

The following products are affected:

  • JT2Go: All versions prior to v13.1.0
  • JT2Go: Version 13.1.0. only affected by CVE-2020-26989, CVE-2020-26990, CVE-2020-26991
  • Teamcenter Visualization: All versions prior to V13.1.0
  • Teamcenter Visualization: Version 13.1.0 only affected by CVE-2020-26989, CVE-2020-26990, CVE-2020-26991

4.2 VULNERABILITY OVERVIEW

4.2.1    ACCESS OF RESOURCE USING INCOMPATIBLE TYPE (‘TYPE CONFUSION’) CWE-843

Affected applications lack proper validation of user-supplied data when parsing JT files. A crafted JT file can trigger a type of confusion condition. An attacker can leverage this vulnerability to execute code in the context of the current process.

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

4.2.2    IMPROPER RESTRICTION OF XML EXTERNAL ENTITY REFERENCE CWE-611

When opening a specially crafted XML file, the application could disclose arbitrary files to remote attackers. This is because of the passing of specially crafted content to the underlying XML parser without taking proper restrictions such as prohibiting an external DTD.

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

4.2.3    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing CG4 and CGM files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.4    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing PDF files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.5    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing JT files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.6    HEAP-BASED BUFFER OVERFLOW CWE-122

Affected applications lack proper validation of user-supplied data when parsing RGB and SGI files. This could result in a heap-based buffer overflow. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.7    HEAP-BASED BUFFER OVERFLOW CWE-122

Affected applications lack proper validation of user-supplied data when parsing JT files. This could lead to a heap-based buffer overflow. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.8    HEAP-BASED BUFFER OVERFLOW CWE-122

Affected applications lack proper validation of user-supplied data when parsing TGA files. This could lead to a heap-based buffer overflow. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.9    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing PAR files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.10    STACK-BASED BUFFER OVERFLOW CWE-121

Affected applications lack proper validation of user-supplied data when parsing of PAR files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.11    ACCESS OF RESOURCE USING INCOMPATIBLE TYPE (‘TYPE CONFUSION’) CWE-843

Affected applications lack proper validation of user-supplied data when parsing ASM files. A crafted ASM file can trigger a type of confusion condition. An attacker can leverage this vulnerability to execute code in the context of the current process.

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

4.2.12    UNTRUSTED POINTER DEREFERENCE CWE-822

Affected applications lack proper validation of user-supplied data when parsing ASM files. This could lead to pointer dereferences of a value obtained from untrusted source. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.13    STACK-BASED BUFFER OVERFLOW CWE-121

Affected applications lack proper validation of user-supplied data when parsing CGM files. This could lead to a stack-based buffer overflow while trying to copy to a buffer during font string handling. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.14    STACK-BASED BUFFER OVERFLOW CWE-121

Affected applications lack proper validation of user-supplied data when parsing CGM files. This could lead to a stack-based buffer overflow while trying to copy to a buffer during font index handling. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.15    HEAP-BASED BUFFER OVERFLOW CWE-122

Affected applications lack proper validation of user-supplied data when parsing PCX files. This could result in a heap-based buffer overflow. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.16    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing SGI and RGB files. This could result in an out-of-bounds write past the end of an allocated structure. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.17    OUT-OF-BOUNDS READ CWE-125

Affected applications lack proper validation of user-supplied data when parsing CG4 files. This could result in a memory access past the end of an allocated buffer. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.2.18    OUT-OF-BOUNDS WRITE CWE-787

Affected applications lack proper validation of user-supplied data when parsing PAR files. This can result in an out-of-bounds write past the memory location that is a read only image address. An attacker could leverage this vulnerability to execute code in the context of the current process.

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

4.3 BACKGROUND

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

4.4 RESEARCHER

rgod, working with Trend Micro’s Zero Day Initiative, and Carsten Eiram from Risk Based Security reported these vulnerabilities.

5. MITIGATIONS

——— Begin Update A Part 1 of 1 ———

Siemens recommends the following:

  • JT2Go: Update to v13.1.0.1 or later (login required).
  • Teamcenter Visualization: Update to v13.1.0.1 or later (login required).
  • Limit the opening of untrusted files in systems where JT2Go or Teamcenter Visualization is installed.
  • Apply a defense-in-depth concept to help reduce the probability for untrusted code to run on the system. 

For additional information refer to SSA-622830 and SSA-663999

——— End Update A Part 1 of 1 ———

Siemens strongly 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 follow the recommendations in the product manuals.

CISA recommends users take the following measures to protect themselves from social engineering attacks:

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 us-cert.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 us-cert.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.

Source:

https://us-cert.cisa.gov/ics/advisories/icsa-21-012-03