Remote Code Execution (RCE) vulnerability in Windchill PDMlink (CVE-2026-12569)
Published In CISA KEV since Sources: BSI, pwn.watch, CVE.org
What is affected, what to do
A critical remote code execution (RCE) vulnerability in PTC Windchill PDMlink and PTC FlexPLM allows an unauthenticated attacker to execute arbitrary code by sending a malicious request over the network. This vulnerability is actively exploited in ransomware campaigns since June 2026. All versions of Windchill and FlexPLM prior to 11.0 M030 are affected. Immediate patching to version 11.0 M030 or later is urgently required to mitigate the vulnerability.
The vulnerability is being actively exploited; treat it as a priority. CISA lists it as used in ransomware campaigns. Update windchill_pdmlink to version 11.0m030. Immediate actions, mitigation and detection rules are in the runbook below.
- Affected
- PTC Windchill PDMLink
eq 11.1 M020..11.1 M020 - PTC Windchill PDMLink
eq 11.2.1.0..11.2.1.0 - PTC Windchill PDMLink
eq 12.0.2.0..12.0.2.0 - PTC Windchill PDMLink
eq 12.1.2.0..12.1.2.0 - PTC Windchill PDMLink
eq 13.0.2.0..13.0.2.0 - PTC Windchill PDMLink
eq 13.1.0.0..13.1.0.0 - PTC Windchill PDMLink
eq 13.1.1.0..13.1.1.0 - PTC Windchill PDMLink
eq 13.1.2.0..13.1.2.0 - PTC Windchill PDMLink
eq 13.1.3.0..13.1.3.0 - PTC FlexPLM
eq 11.1 M020..11.1 M020 - PTC FlexPLM
eq 11.2.1.0..11.2.1.0 - PTC FlexPLM
eq 12.0.0.0..12.0.0.0 - PTC FlexPLM
eq 12.0.2.0..12.0.2.0 - PTC FlexPLM
eq 12.1.2.0..12.1.2.0 - PTC FlexPLM
eq 12.1.3.0..12.1.3.0 - PTC FlexPLM
eq 13.0.2.0..13.0.2.0 - PTC FlexPLM
eq 13.0.3.0..13.0.3.0
- PTC Windchill PDMLink
Not sure whether and how you are affected? Ask a question about this vulnerability
Metrics
9.8
Priority
XIEM Effective CVSS: highest available CVSS rating from NVD and vendor data.
Source: NVD, CVSS v3
9.8
CVSS v3
Severity Critical on the scale from 0 to 10.
Source: BSI, pwn.watch, CVE.org
46.1 %
EPSS score
Elevated — model estimates 10-50% exploitation likelihood.
Source: FIRST EPSS, percentile 98.8
Show all metrics
- Severity
- Critical
Priority (0–325)
The priority score is a consolidated metric that condenses several individual signals into a single, action-guiding ranking: technical severity (CVSS), exploitation likelihood (EPSS), known-exploited status (KEV) and the context of the affected asset. The aim is to answer the only truly important question in vulnerability management: what first?
Read in glossary- 271.29 Methodology
Exploit maturity
An exploit is code or a technique that specifically uses a concrete vulnerability to force unintended behaviour — such as executing code or escalating privileges. It is the tool that turns a theoretical flaw into a practical attack.
Read in glossary- actively exploitedSource: VulnCheck KEV (opens in a new tab) How we classify
XIEM Effective CVSS
XIEM® is the tiered managed-security operating model from NEOSEC and a registered trademark of NEOSEC GmbH. It extends classic SIEM — the central collection, normalisation and correlation of security-relevant events — with endpoint forensics, network visibility and deception technology, and consolidates them into three building tiers: Sentry, Orchestrate and Command.
Read in glossary- 9.8 Methodology
CVSS v3
CVSS is the globally established, open standard for assessing the technical severity of a vulnerability on a scale from 0 to 10. It describes how easily a flaw can be exploited and what damage it can cause — but not how likely its actual exploitation is. CVSS and the complementary EPSS deliberately answer different questions.
Read in glossary- 9.8
CVSS v4
CVSS is the globally established, open standard for assessing the technical severity of a vulnerability on a scale from 0 to 10. It describes how easily a flaw can be exploited and what damage it can cause — but not how likely its actual exploitation is. CVSS and the complementary EPSS deliberately answer different questions.
Read in glossary- 9.3
EPSS score
The EPSS score is the absolute model output for an individual vulnerability: the estimated probability of real-world exploitation within the next 30 days, expressed as a value between 0 and 1 (i.e. 0 % to 100 %). A score of 0.42 means „the model estimates a 42 % chance of real-world exploitation within 30 days“.
Read in glossary- 46.1 %
- Elevated — model estimates 10-50% exploitation likelihood.
EPSS percentile
The EPSS percentile is the relative position of a vulnerability within all EPSS-scored CVEs, expressed as a value between 0 and 1. A percentile of 0.90 means „this CVE has a higher EPSS score than 90 % of all other scored CVEs“. Unlike the EPSS score, it is not a probability — but a positioning within a ranking.
Read in glossary- 98.8
- Critical — this CVE ranks in the top fifth of all CVEs scored today (rank ≥ 80%).
KEV status
The KEV catalogue is a list maintained by the US authority CISA of vulnerabilities for which active exploitation in the wild has been confirmed. It answers not the question „how severe?“ but „is it already being attacked?“ — thereby sharply prioritising patching.
Read in glossary- Actively exploited
- Published
In CISA KEV since
The KEV catalogue is a list maintained by the US authority CISA of vulnerabilities for which active exploitation in the wild has been confirmed. It answers not the question „how severe?“ but „is it already being attacked?“ — thereby sharply prioritising patching.
Read in glossaryCWE
CWE is a catalogue of typical weakness types in software and hardware — such as flawed input validation, unsafe memory handling or poor authentication. Where a CVE names a concrete vulnerability in a concrete product, a CWE describes the underlying class of defect.
Read in glossary- CWE-20, CWE-502
Response and mitigation
Why act now?
Prioritisation rationale
This flaw is network-reachable without authentication and leads straight to code execution on the PLM server through unsafe deserialization. Exploitation likelihood is very high, and CISA confirms known ransomware use. PLM platforms hold CAD data, BOMs and core intellectual property, and are frequently integrated with ERP and supplier portals. That makes them prime targets for double-extortion ransomware as well as industrial espionage. Manufacturing, automotive, defence and consumer-goods organisations with externally reachable Windchill/FlexPLM should treat this as an emergency patch. Internal-only instances are still high priority, because they are a valuable lateral-movement target once an attacker has a foothold.
Runbook step 1
Immediate response (0-24 h)
- Establish exposure now: Inventory every Windchill PDMLink and FlexPLM instance, including test, training and supplier-portal systems. Restrict internet-facing instances to known source ranges (VPN, partner IPs) at the firewall, or take them offline. Exploitation requires no authentication and no user interaction.
- Apply the vendor fix: The patch is available from the vendor; look up the exact version in the PTC vendor advisory. Per the advisory, all CPS levels and releases prior to 11.0 M030 are affected. Assess legacy, out-of-support releases too: plan the upgrade path and keep them isolated until then.
- Compromise assessment before returning to service: Hunt for new or modified
.jsp,.jspxand.classfiles in the Windchill codebase and Tomcat webapps since late June 2026 (possible webshells). Review child processes of the Windchill Method Serverjavaprocess. - Rotate credentials if compromise is suspected: Treat the following as exposed and rotate them: Windchill database accounts (Oracle/SQL Server), LDAP bind accounts, the Method Server service account, and keystores or secrets under Windchill home.
- Ransomware readiness: CISA flags known ransomware campaign use. Verify the integrity of offline backups of the vault/file servers and the database. Cut lateral paths from the PLM server to domain controllers and file servers.
- Check reporting obligations: If compromise is confirmed, start the NIS2 clock (early warning to the national CSIRT/BSI within 24 h).
Runbook step 2
Mitigation layers
- Network segmentation: Move Windchill and FlexPLM into a dedicated zone. Allow inbound traffic only via a reverse proxy on 443/TCP, and block direct access to Tomcat and Method Server ports from user and partner networks. Default-deny server egress to the internet, with an allowlist for required destinations only.
- WAF/IPS: Block requests carrying Java serialization markers in the body or parameters: hex
aced0005, Base64 prefixrO0AB, and Content-Typeapplication/x-java-serialized-object. Also filter on gadget class names such asorg.apache.commons.collections,TemplatesImpl,InvokerTransformerandysoserial. - Endpoint hardening: Use EDR or AppLocker/WDAC to prevent the Windchill
javaprocess from launchingcmd.exe,powershell.exe,certutil.exe,bitsadmin.exe,curlor/bin/sh. Remove the service account's write access to web-root directories where operations allow. - IAM/least privilege: Do not run the Method Server as
SYSTEM/rootor a domain admin. Scope database accounts to the required schema only. - Configuration: Disable unneeded interfaces and integrations (supplier and external partner access) until patching is complete.
Runbook step 3
Detection rules
- Web server/proxy logs: POST requests to Windchill/FlexPLM with a binary or Base64 body starting with
rO0ABor containingaced0005. Also watch for requests from unfamiliar sources followed by HTTP 500. Example SPL:index=proxy dest_host=*windchill* (http_content_type="application/x-java-serialized-object" OR form_data="*rO0AB*") - Process ancestry (Sysmon EID 1 / Windows 4688 / auditd execve): The Windchill service
java.exe/javaspawning shells or LOLBins. Example KQL:DeviceProcessEvents | where InitiatingProcessFileName =~ "java.exe" and InitiatingProcessCommandLine has "wt." and FileName in~ ("cmd.exe","powershell.exe","whoami.exe","certutil.exe") - Webshell drops (Sysmon EID 11 / auditd
-wwatch on the codebase): Thejavaprocess writing.jspfiles into Tomcat webapps or the Windchill codebase. - Network (Zeek/Suricata, Sysmon EID 3): New outbound connections from the PLM server to internet IPs, unusual DNS lookups, and SMB/RDP connections from the PLM server to other internal hosts (a sign of lateral movement).
- Exfiltration: Unusually large exports from the vault or database, or archivers (
7z,rar,tar) running under the service account.
- Web server/proxy logs: POST requests to Windchill/FlexPLM with a binary or Base64 body starting with
Detection rules
No NEOSEC detection rule is available for this vulnerability yet.
Classification under NIS2 and CRA
Rule-based classification from exploitation status and severity. It does not replace a case-by-case assessment.
NIS2
NIS2 is EU Directive (EU) 2022/2555 to raise the level of cybersecurity across the Union. It substantially broadens obligations compared with the first NIS directive: more sectors, mandatory risk management, staged reporting duties and personal accountability of senior management.
Read in glossary- Actively exploited: treat the vulnerability as a priority in vulnerability handling under Art. 21(2)(e) NIS2. If it is exploited in your environment, check the reporting obligation under Art. 23 (early warning within 24 hours).
CRA
The CRA is EU Regulation (EU) 2024/2847 setting horizontal cybersecurity requirements for „products with digital elements“ — from industrial controllers and software to connected consumer devices. For the first time manufacturers must ensure security across the entire product lifecycle, handle vulnerabilities and provide security updates.
Read in glossary- Since 11.09.2026, manufacturers of affected products with digital elements must report actively exploited vulnerabilities under Art. 14 CRA, with an early warning within 24 hours via ENISA's single reporting platform.
ISO/IEC 27001
ISO/IEC 27001 is the internationally leading standard for an information security management system (ISMS). It describes a risk-based, process-oriented framework to systematically plan, implement, review and improve information security.
Read in glossary- Control A.8.8, management of technical vulnerabilities: assess relevance to your systems, plan remediation and keep evidence.
Description
A critical remote code execution (RCE) vulnerability has been reported in PTC Windchill PDMlink and PTC FlexPLM. The vulnerability may be exploited through the deserialization of untrusted data. * This advisory also applies to all CPS versions * The identified vulnerability also impacts Windchill and FlexPLM releases prior to 11.0 M030
Source: BSI WID Portal, BSI CSAF, pwn.watch, CISA KEV Catalog, cvelistv5, NVD (NIST), CVE.org (MITRE)
Affected products
The following versions are affected. Older releases of the same product line are also vulnerable unless stated otherwise.
| Affected versions | Fixed in | ||
|---|---|---|---|
| PTC | FlexPLM |
|
|
| PTC | Windchill PDMLink |
|
|
| ptc | flexplm |
|
|
| ptc | windchill_pdmlink |
|
|
Vendors and products
Weakness classes (CWE)
CWE-20Improper Input Validation
Class
The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
Entry at MITRE CWE-20CWE-502Deserialization of Untrusted Data
Base
The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.
Entry at MITRE CWE-502
Public exploit references
Publicly reported proof-of-concepts, exploit modules and detection templates for this vulnerability. NEOSEC links to the original sources only and does not provide any exploit code.
| CISA KEV Catalog | CISA Known Exploited Vulnerability (opens in a new tab)cisa.gov | actively exploited |
References & sources
- ptc.comPTC Windchill and FlexPLM — CVE-2026-12569Vendor advisory, Mitigation, Permissions required, pwn-watch
- cisa.govknown-exploited-vulnerabilities-catalog?field_cve=CVE-2026-12569government-resource
- pwn.watchpwn.watch: PTC Windchill and FlexPLM: PTC Windchill and FlexPLM Improper Input Validation Vulnerabilitypwn-watch
- NVD (NIST)NVD: CVE-2026-12569pwn-watch
- cisa.govCISA Known Exploited Vulnerabilities Catalogpwn-watch
Linked advisories
Embed badge
Show the severity and KEV status of this vulnerability on your site – with a link back here. The image is updated hourly.
<a href="https://intel.neosec.eu/en/cve/CVE-2026-12569"><img src="https://intel.neosec.eu/badge/cve/CVE-2026-12569.svg?lang=en" alt="CVE-2026-12569 – NEOSEC Intel" height="20"></a>