ID

VAR-201810-0832


CVE

CVE-2018-17218


TITLE

PTC ThingWorx Platform Cross-Site Scripting Vulnerability

Trust: 1.2

sources: CNVD: CNVD-2018-21621 // CNNVD: CNNVD-201809-1345

DESCRIPTION

An issue was discovered in PTC ThingWorx Platform 6.5 through 8.2. There is reflected XSS in the SQUEAL search function. PTC ThingWorx Platform Contains a cross-site scripting vulnerability.Information may be obtained and information may be altered. PTC ThingWorx Platform is a set of platforms for developing and deploying industrial IoT applications and augmented reality (AR). A remote attacker could use a specially crafted URL to exploit this vulnerability to execute a script in a user's web browser. SEC Consult Vulnerability Lab Security Advisory < 20181001-0 > ======================================================================= title: Password disclosure vulnerability & XSS product: PTC ThingWorx vulnerable version: 6.5-7.4, 8.0.x, 8.1.x, 8.2.x fixed version: see Solution section CVE number: CVE-2018-17216, CVE-2018-17217, CVE-2018-17218 impact: critical homepage: https://www.ptc.com found: 2018-03-13 by: M. Tomaselli (Office Munich) SEC Consult Vulnerability Lab An integrated part of SEC Consult Europe | Asia | North America https://www.sec-consult.com ======================================================================= Vendor description: ------------------- "ThingWorx is more than an IoT platform; it provides the functionality, flexibility and scalability that businesses need to drive industrial innovationaincluding the ability to source, contextualize and synthesize data while orchestrating processes and delivering powerful web, mobile and AR experiences." Source: https://www.ptc.com/en/thingworx8 Business recommendation: ------------------------ ThingWorx allows to configure Things to communicate with other services over several protocols (e.g. LDAP integration via a DirectoryServices Thing). In order to communicate with services that require authentification, ThingWorx provides functionality to associate credentials to a Thing. During a brief audit it was noticed that ThingWorx Composer leaks the following sensitive data: 1) The PBKDF2WithHmac512 password hash of a user Thing 2) The AES encrypted password of several Things containing password attributes Furthermore, the password used for encryption is hard-coded and thus identical along all installations. The vendor provides a patch which should be installed immediately. It is recommended to perform further thorough security audits as the product may be affected by other potential security vulnerabilities. Vulnerability overview/description: ----------------------------------- 1) Disclosure of User Password Hashes to Privileged Users (CVE-2018-17216) ThingWorx discloses the PBKDF2WithHmac512 hashed passwords of its application users when doing exports with an administrative account. This enables an attacker to conduct offline brute-force or dictionary attacks against the obtained password hashes. 2) Disclosure of Encrypted Credentials and Use of Hard-Coded Passwords (CVE-2018-17217) A critical information disclosure vulnerability leaks the AES encrypted passwords of services configured within ThingWorx. Due to a hard-coded master password in the SecureData class, an attacker is able to decrypt the obtained passwords which grants him access to other services. The AES encrypted password gets disclosed in the server response when a user/attacker visits a Thing that contains credentials. 3) Reflected Cross-Site Scripting (CVE-2018-17218) The JavaScript part of the ThingWorx SQUEAL search functionality (searchExpression parameter) which is responsible for parsing the obtained JSON response fails to properly sanitize user supplied input. If the victim views attacker-prepared content (e.g. on a website or in an HTML email) an attacker is able to execute arbitrary actions in the context of its victims' sessions. Proof of concept: ----------------- The proof of concept has been removed from this advisory. Vulnerable / tested versions: ----------------------------- The vulnerabilities have been verified to exist in version 8.0.1-b39 which was the latest version available at the time of the test. The vendor provided further affected version information. See the Solution section for reference. Vendor contact timeline: ------------------------ 2018-03-14: Contacting vendor through email 2018-03-16: Advisory sent to vendor via encrypted mail 2018-03 - 2018-09: Multiple phone calls with PTC R&D department discussing release & multi-party disclosure 2018-08-15: Vendor provided private notifications to customers to give 45 days to upgrade 2018-10-01: Coordinated release of SEC Consult advisory Solution: --------- Best recommendation is to upgrade to the latest version of ThingWorx to version 8.3.2 (at time of writing). For newer verions, the issue of the hard coded password has been fixed and the SQUEAL function removed. The minimum upgrade to obtain mitigations for all 3 issues depends on the version of ThingWorx in use. For ThingWorx versions 6.5-7.4, upgrade to 7.4.14+ For ThingWorx version 8.0.x, upgrade to 8.0.12+ For ThingWorx version 8.1.x, upgrade to 8.1.7+ For ThingWorx version 8.2.x, upgrade to 8.2.4+ The vendor always recommends upgrading to the latest availabe service pack. See the following advisory by the vendor for further information: https://www.ptc.com/en/support/article?n=CS291004 Workaround: ----------- 1) Disclosure of User Password Hashes to Privileged Users To limit exposure, disabling all native ThingWorx users and solely rely on users that make use of Active Directory or Single Sign On (SSO) authentication, since the password hashes are then not saved within ThingWorx. 2) Disclosure of Encrypted Credentials and Use of Hard-Coded Passwords None. Removal of this function will eliminate the XSS issue. a. b. For versions older than 8.1.0, a workaround is available at the PTC support site. Updating to fix all 3 issues is recommended. Advisory URL: ------------- https://www.sec-consult.com/en/vulnerability-lab/advisories/index.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SEC Consult Vulnerability Lab SEC Consult Europe | Asia | North America About SEC Consult Vulnerability Lab The SEC Consult Vulnerability Lab is an integrated part of SEC Consult. It ensures the continued knowledge gain of SEC Consult in the field of network and application security to stay ahead of the attacker. The SEC Consult Vulnerability Lab supports high-quality penetration testing and the evaluation of new offensive and defensive technologies for our customers. Hence our customers obtain the most current information about vulnerabilities and valid recommendation about the risk profile of new technologies. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Interested to work with the experts of SEC Consult? Send us your application https://www.sec-consult.com/en/career/index.html Interested in improving your cyber security with the experts of SEC Consult? Contact our local offices https://www.sec-consult.com/en/contact/index.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mail: research at sec-consult dot com Web: https://www.sec-consult.com Blog: http://blog.sec-consult.com Twitter: https://twitter.com/sec_consult EOF M. Tomaselli / @2018

Trust: 2.79

sources: NVD: CVE-2018-17218 // JVNDB: JVNDB-2018-010348 // CNVD: CNVD-2018-21621 // CNNVD: CNNVD-201809-1345 // PACKETSTORM: 149650

IOT TAXONOMY

category:['IoT']sub_category: -

Trust: 0.6

sources: CNVD: CNVD-2018-21621

AFFECTED PRODUCTS

vendor:ptcmodel:thingworx platformscope:lteversion:8.2.0

Trust: 1.0

vendor:ptcmodel:thingworx platformscope:gteversion:6.5.0

Trust: 1.0

vendor:ptcmodel:thingworx platformscope:eqversion:6.5 to 8.2

Trust: 0.8

vendor:ptcmodel:thingworx platformscope:gteversion:6.5,<=8.2

Trust: 0.6

sources: CNVD: CNVD-2018-21621 // JVNDB: JVNDB-2018-010348 // NVD: CVE-2018-17218

CVSS

SEVERITY

CVSSV2

CVSSV3

nvd@nist.gov: CVE-2018-17218
value: MEDIUM

Trust: 1.0

NVD: CVE-2018-17218
value: MEDIUM

Trust: 0.8

CNVD: CNVD-2018-21621
value: MEDIUM

Trust: 0.6

CNNVD: CNNVD-201809-1345
value: MEDIUM

Trust: 0.6

nvd@nist.gov: CVE-2018-17218
severity: LOW
baseScore: 3.5
vectorString: AV:N/AC:M/AU:S/C:N/I:P/A:N
accessVector: NETWORK
accessComplexity: MEDIUM
authentication: SINGLE
confidentialityImpact: NONE
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: 6.8
impactScore: 2.9
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 1.0

NVD: CVE-2018-17218
severity: MEDIUM
baseScore: 4.3
vectorString: AV:N/AC:M/AU:N/C:N/I:P/A:N
accessVector: NETWORK
accessComplexity: MEDIUM
authentication: NONE
confidentialityImpact: NONE
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: NONE
impactScore: NONE
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 0.8

CNVD: CNVD-2018-21621
severity: MEDIUM
baseScore: 5.0
vectorString: AV:N/AC:L/AU:N/C:N/I:P/A:N
accessVector: NETWORK
accessComplexity: LOW
authentication: NONE
confidentialityImpact: NONE
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: 10.0
impactScore: 2.9
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 0.6

nvd@nist.gov: CVE-2018-17218
baseSeverity: MEDIUM
baseScore: 5.4
vectorString: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
attackVector: NETWORK
attackComplexity: LOW
privilegesRequired: LOW
userInteraction: REQUIRED
scope: CHANGED
confidentialityImpact: LOW
integrityImpact: LOW
availabilityImpact: NONE
exploitabilityScore: 2.3
impactScore: 2.7
version: 3.1

Trust: 1.0

NVD: CVE-2018-17218
baseSeverity: MEDIUM
baseScore: 6.1
vectorString: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
attackVector: NETWORK
attackComplexity: LOW
privilegesRequired: NONE
userInteraction: REQUIRED
scope: CHANGED
confidentialityImpact: LOW
integrityImpact: LOW
availabilityImpact: NONE
exploitabilityScore: NONE
impactScore: NONE
version: 3.0

Trust: 0.8

sources: CNVD: CNVD-2018-21621 // JVNDB: JVNDB-2018-010348 // CNNVD: CNNVD-201809-1345 // NVD: CVE-2018-17218

PROBLEMTYPE DATA

problemtype:CWE-79

Trust: 1.8

sources: JVNDB: JVNDB-2018-010348 // NVD: CVE-2018-17218

THREAT TYPE

remote

Trust: 0.6

sources: CNNVD: CNNVD-201809-1345

TYPE

xss

Trust: 0.7

sources: PACKETSTORM: 149650 // CNNVD: CNNVD-201809-1345

CONFIGURATIONS

sources: JVNDB: JVNDB-2018-010348

PATCH

title:Article - CS291004url:https://www.ptc.com/en/support/article?n=CS291004

Trust: 0.8

title:Patch for PTC ThingWorx Platform Cross-Site Scripting Vulnerabilityurl:https://www.cnvd.org.cn/patchInfo/show/143105

Trust: 0.6

title:PTC ThingWorx Platform Fixes for cross-site scripting vulnerabilitiesurl:http://www.cnnvd.org.cn/web/xxk/bdxqById.tag?id=85328

Trust: 0.6

sources: CNVD: CNVD-2018-21621 // JVNDB: JVNDB-2018-010348 // CNNVD: CNNVD-201809-1345

EXTERNAL IDS

db:NVDid:CVE-2018-17218

Trust: 3.1

db:JVNDBid:JVNDB-2018-010348

Trust: 0.8

db:CNVDid:CNVD-2018-21621

Trust: 0.6

db:CNNVDid:CNNVD-201809-1345

Trust: 0.6

db:PACKETSTORMid:149650

Trust: 0.1

sources: CNVD: CNVD-2018-21621 // JVNDB: JVNDB-2018-010348 // PACKETSTORM: 149650 // CNNVD: CNNVD-201809-1345 // NVD: CVE-2018-17218

REFERENCES

url:https://www.ptc.com/en/support/article?n=cs291004

Trust: 1.7

url:https://nvd.nist.gov/vuln/detail/cve-2018-17218

Trust: 1.5

url:https://cve.mitre.org/cgi-bin/cvename.cgi?name=cve-2018-17218

Trust: 0.8

url:https://www.ptc.com

Trust: 0.1

url:https://www.sec-consult.com/en/vulnerability-lab/advisories/index.html

Trust: 0.1

url:https://www.ptc.com/en/thingworx8

Trust: 0.1

url:https://twitter.com/sec_consult

Trust: 0.1

url:https://nvd.nist.gov/vuln/detail/cve-2018-17216

Trust: 0.1

url:https://www.sec-consult.com

Trust: 0.1

url:https://www.sec-consult.com/en/contact/index.html

Trust: 0.1

url:http://blog.sec-consult.com

Trust: 0.1

url:https://www.sec-consult.com/en/career/index.html

Trust: 0.1

url:https://nvd.nist.gov/vuln/detail/cve-2018-17217

Trust: 0.1

sources: CNVD: CNVD-2018-21621 // JVNDB: JVNDB-2018-010348 // PACKETSTORM: 149650 // CNNVD: CNNVD-201809-1345 // NVD: CVE-2018-17218

CREDITS

M. Tomaselli

Trust: 0.1

sources: PACKETSTORM: 149650

SOURCES

db:CNVDid:CNVD-2018-21621
db:JVNDBid:JVNDB-2018-010348
db:PACKETSTORMid:149650
db:CNNVDid:CNNVD-201809-1345
db:NVDid:CVE-2018-17218

LAST UPDATE DATE

2024-11-23T22:41:39.906000+00:00


SOURCES UPDATE DATE

db:CNVDid:CNVD-2018-21621date:2018-10-24T00:00:00
db:JVNDBid:JVNDB-2018-010348date:2018-12-13T00:00:00
db:CNNVDid:CNNVD-201809-1345date:2019-09-30T00:00:00
db:NVDid:CVE-2018-17218date:2024-11-21T03:54:07.013

SOURCES RELEASE DATE

db:CNVDid:CNVD-2018-21621date:2018-10-24T00:00:00
db:JVNDBid:JVNDB-2018-010348date:2018-12-13T00:00:00
db:PACKETSTORMid:149650date:2018-10-03T05:40:15
db:CNNVDid:CNNVD-201809-1345date:2018-10-08T00:00:00
db:NVDid:CVE-2018-17218date:2018-10-01T01:29:00.513