Kepware KepserverexApplication · Ptc

CVE-2023-29444

HIGH · 7.3 CVSS v3.1 Published 2024-01-10
Fix available
A fix is available. Upgrade to after 8.5 or later.
See remediation →
73/100
Remediation priority · Elevated

Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.

NVD · unedited
An uncontrolled search path element vulnerability (DLL hijacking) has been discovered that could allow a locally authenticated adversary to escalate privileges to SYSTEM. Alternatively, they could host a trojanized version of the software and trick victims into downloading and installing their malicious version to gain initial access and code execution.

Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.

dbcve analysis · moderate confidence

This is a DLL hijacking vulnerability where the application uses an uncontrolled search path to load dynamic link libraries. A locally authenticated attacker can place a malicious DLL in a location where the vulnerable application will load it, achieving SYSTEM-level privileges. The alternative attack vector involves tricking users into installing a trojanized version of the software.

MitigationImplement secure DLL loading by using absolute paths, safe search order configuration, or manifest-based DLL redirection to prevent untrusted DLLs from being loaded. Additionally, verify DLL integrity through code signing and implement application integrity checks.

Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.

Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.

NVD · CPE data
Kepware KepserverexApplication
Affected:>= 6.0.2107.0, <= 6.14.263.0
Thingworx Kepware ServerApplication
Affected:>= 6.8, <= 6.14.263.0
Thingworx Industrial ConnectivityApplication
Affected:>= 8.0, <= 8.5

CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.

From the vector
Attack vector
Local
Complexity
Low
Privileges
Low
User interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H

Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.

dbcve checks

Work through these to decide whether this CVE applies to you.

  1. Identify installed product and version
    Open Windows Control Panel > Programs and Features, or use 'Get-ItemProperty' in PowerShell for registry key 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' to find PTC Kepware product entries. Check the DisplayVersion field.
    Affected if The installed version falls within 6.0.2107.0 to 6.14.263.0 for KepServerEx or Thingworx Kepware Server, or 8.0 to 8.5 for Thingworx Industrial Connectivity.
  2. Determine the service account running the application
    Open Windows Services (services.msc), locate the Kepware service, right-click and select Properties. Check the 'Log On As' field. Alternatively, run 'sc qc KepwareServiceName' or 'Get-Service | Where-Object {$_.DisplayName -like "*Kepware*"} | Select-Object Name, StartType, Status' in PowerShell.
    Affected if The service runs as SYSTEM, Local System, or another high-privilege account.
  3. Inspect the DLL search path environment variable
    Open a command prompt or PowerShell as the Kepware service account and run 'echo %PATH%' to view the search path. Also check the working directory where the application is installed.
    Affected if The PATH includes user-writable directories (such as Temp, Downloads, or network shares) or the application directory is writable by low-privilege users.
  4. Check for unsigned or unexpected DLLs in application directory
    Navigate to the KepServerEx installation directory (typically C:\Program Files\PTC\KepserverEX or C:\Program Files\PTC\Thingworx), run 'dir *.dll', and compare DLL file signatures using 'signtool verify /pa /v filename.dll' if code signing tools are available.
    Affected if Any DLL exists that is not digitally signed by PTC or appears suspicious, unauthorized, or timestamps earlier than the original installation.
  5. Verify DLL loading behavior
    Use Process Monitor (ProcMon) from Sysinternals to capture DLL load events for the Kepware process. Filter by Operation equals 'Load Image' and check the Result column for any DLLs loaded from non-system directories.
    Affected if The application loads DLLs from directories outside the Windows system folder or the application installation directory.

A system is affected if it runs a vulnerable PTC Kepware product version within the specified range and the DLL search path allows loading from user-writable or untrusted locations.

Generated from the published advisory. Verify against your own configuration.

Check your environment

Paste your version and any relevant configuration and it will be compared against the affected criteria above. Do not include secrets or credentials.

AI-assisted, checked against the advisory. Informational, not a guarantee.

Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.

dbcve · scoped
Upgrade available Upgrade to a release after 8.5
Interim mitigation

Implement secure DLL loading by using absolute paths, safe search order configuration, or manifest-based DLL redirection to prevent untrusted DLLs from being loaded. Additionally, verify DLL integrity through code signing and implement application integrity checks.

Recommended fix Moderate confidence

Upgrade to Kepserverex/Thingworx Kepware Server version > 6.14.263.0 (contact PTC for the latest stable release)

  1. Identify the installed Kepware product (Kepserverex, Thingworx Kepware Server, or Thingworx Industrial Connectivity) and current version number
  2. Confirm the installed version falls within the affected range: Kepserverex 6.0.2107.0-6.14.263.0, Thingworx Kepware Server 6.8-6.14.263.0, or Thingworx Industrial Connectivity 8.0-8.5
  3. Contact PTC Technical Support or visit the official PTC Customer Success portal to obtain the latest fixed version
  4. Upgrade to a version higher than 6.14.263.0 (or the latest available stable release)
  5. After upgrading, verify the installation directory has secure file permissions to prevent unauthorized DLL injection
  6. Restart the Kepware services to ensure the updated binaries are loaded
Caveat Review release notes for any configuration or compatibility changes between versions before upgrading in production environments

Generated from the published advisory — verify against the referenced sources before acting.

Fix this in Kepware Kepserverex Scoped from the published advisory
  • Consultation3.0 h
  • Implementation8.0 h
  • Testing4.0 h
  • Review / QA2.0 h
17.0 hours of engineering $3,000
Get the upgrade done

An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $4,800.

Scan for this in your stack

Free · runs locally
dbcve dependency scanner

Check whether your project pulls in CVE-2023-29444 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.

References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.

Primary sources

Practitioner notes

Contributed

Peer-ranked notes from engineers who’ve handled CVE-2023-29444 in production — separate from our analysis above.

No notes yet

Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.

What this is

A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.

What belongs here
  • Verified mitigations, workarounds, and config changes
  • Version or environment caveats, and links to real fixes
  • No weaponised exploit code, or anything meant to cause harm
  • No spam, self-promotion, credentials, or personal data