Full research report

Clop-Linked Windchill Web Shell Decrypts Credentials and Maps Engineering Data

Original reporting โ†—
โ˜… Threat intelligence assessment high confidence

Executive assessment

The strongest evidence concerns CVE-2026-12569: CISA confirms exploitation and ransomware use, while NVD identifies network-reachable untrusted-data deserialisation in Windchill PDMLink and FlexPLM. ReliaQuest's analysis shows that the post-exploitation web shell is tailored to Windchill rather than being a generic command shell, allowing it to recover keystore secrets and inventory engineering files through trusted application interfaces. Censys independently places exploitation in an environment with relatively few but strategically valuable internet-facing deployments and links the broader timeline to Clop-branded extortion. CVE-2021-27101 and CVE-2023-34362 strengthen the behavioural comparison with prior Clop campaigns but should not be presented as vulnerabilities used against Windchill. Attribution remains highly likely rather than conclusive, and no verified public PoC was found.

What happened

PTC disclosed CVE-2026-12569 on 17 June 2026, and CISA added it to the Known Exploited Vulnerabilities catalogue on 25 June after exploitation was observed in ransomware-linked activity. July reporting connected data-theft extortion emails and Windchill JSP web-shell deployment to Clop with varying confidence. On 18 August, ReliaQuest published analysis of a bespoke implant that can enumerate engineering files, decrypt Windchill-held credentials and load additional Java code in memory.

Affected scope

CVE-2026-12569 affects PTC Windchill PDMLink and FlexPLM, including releases before 11.0 M030, all cumulative patch set versions covered by the advisory, and multiple listed 11.x, 12.x and 13.x branches. Internet-facing deployments are the immediate priority; exposed organisations span manufacturing, industrial machinery, automotive, aerospace, retail and other engineering-intensive sectors. CVE-2021-27101 and CVE-2023-34362 concern earlier Accellion FTA and MOVEit campaigns respectively and are historical Clop tradecraft comparators, not Windchill vulnerabilities.

Technical assessment

Published records describe network-reachable untrusted-data deserialisation and improper input validation leading to unauthenticated remote code execution. After access, the observed JSP implant operates within Windchill's application context, uses its keystore and database interfaces to recover credentials and map vault files, and can load additional Java bytecode in memory. ReliaQuest observed command traffic in a non-standard X-windchill-req HTTP header, compressed responses, creation of flst.txt during vault enumeration and activity attributed to Windchill's normal database identity, all of which can weaken simple signature or account-based detection.

Recommended defensive actions

  1. Apply the vendor-provided fixes for CVE-2026-12569 across every Windchill and FlexPLM deployment, using PTC support guidance to identify the correct fixed cumulative patch set.
  2. Inventory all Windchill and FlexPLM instances and restrict unnecessary internet exposure, particularly login and management interfaces.
  3. Hunt for unexpected or recently modified JSP files under Windchill codebase paths, especially the login directory, and inspect files referencing X-windchill-req, MethodContext, WTConnection or WTKeyStoreUtil.
  4. Search web and proxy telemetry for unusual X-windchill-req headers, compressed anomalous responses, large outbound transfers and access involving published campaign indicators.
  5. Investigate creation of flst.txt, unusual vault-table queries under the Windchill service identity and subsequent abnormal use of LDAP or administrative accounts.
  6. Rotate all Windchill-keystore credentials, LDAP manager secrets and affected downstream credentials on suspected systems, and revoke existing sessions or tokens.
  7. Isolate suspected servers and preserve web, application, database, file-system and identity evidence before removing web shells or rebuilding affected hosts.

Uncertainties and evidence gaps

  • Clop attribution is assessed as highly likely from extortion contacts, tradecraft and implant characteristics but has not been independently proven through exclusive infrastructure or code ownership.
  • The number and identities of compromised organisations, the volume of stolen engineering data and the extent of follow-on network access remain unknown.
  • Exact fixed cumulative patch set versions are contained in PTC's access-controlled support material and could not be independently enumerated from the public page.
  • No public exploit or proof-of-concept code was verified; active exploitation and an operational web shell do not themselves establish public PoC availability.
  • A separately reported FlexPLM WSDL information-disclosure weakness may have been chained in some intrusions, but its identifier and precise role were not established from an accessible primary advisory.

Vulnerability flow

Defender-oriented path reconstructed only from sourced report findings. Unknown stages are omitted.

AccessUnauthenticated network access to a vulnerable, reachable Windchill or FlexPLM service.
ComponentPTC Windchill PDMLink or FlexPLM server, followed by the application's JSP execution, keystore, database and file-vault trust boundaries.
MechanismImproper input validation and deserialisation of untrusted data permit remote code execution; the observed post-exploitation JSP implant then invokes native Windchill interfaces to recover secrets and enumerate stored files.
ImpactCredential disclosure, engineering-data discovery and exfiltration, persistent remote access, arbitrary in-memory code execution and potential lateral movement or ransomware deployment.
DetectionUnexpected JSP files or modifications in Windchill codebase directories; X-windchill-req headers; flst.txt creation; unusual vault queries under the normal application database identity; compressed anomalous responses, large outbound transfers or misuse of recovered credentials.
MitigationApply the PTC fix applicable to each deployed release and cumulative patch set, remove unnecessary public exposure, investigate suspected compromise and rotate every credential accessible through the Windchill keystore.
Exploitation status

Confirmed active exploitation of CVE-2026-12569 in a ransomware-linked data-extortion campaign; no public PoC was located, and GitHub records no known source code.

The investigation began by testing whether the supplied article described a new Windchill campaign or merely reused historical Clop reporting. Government records and the vulnerability record confirmed current exploitation of CVE-2026-12569, while ReliaQuest supplied the detailed implant analysis and Censys independently corroborated campaign timing, exposure and extortion context. The evidence supports an active Windchill data-extortion campaign with a highly likely Clop link, while CVE-2021-27101 and CVE-2023-34362 are relevant only as historical parallels.

  1. What event and claims does the supplied story describe?
    Read the supplied Hacker News article and followed its references to the vulnerability, ReliaQuest analysis and earlier campaign reporting.
    thehackernews.com โ†—

    The article reports a bespoke JSP web shell deployed after CVE-2026-12569 exploitation, with credential recovery, vault enumeration and in-memory code-loading capabilities.

    why This framed the focused event as current Windchill exploitation rather than the older Accellion or MOVEit campaigns.

  2. Which products and releases are formally associated with CVE-2026-12569?
    Reviewed the National Vulnerability Database entry and its affected software configurations.
    nvd.nist.gov โ†—

    The record identifies Windchill PDMLink and FlexPLM, describes untrusted-data deserialisation, includes releases before 11.0 M030 and lists affected 11.x, 12.x and 13.x branches.

    why This confirmed the product scope and technical weakness independently of media reporting.

  3. Are exact vendor patches publicly verifiable?
    Opened the PTC support article referenced by NVD.
    ptc.com โ†—

    The advisory redirected to PTC's support login, so its detailed fixed-version and cumulative patch set table was not publicly readable.

    why This requires defenders to verify their exact fixed build through authenticated PTC support rather than relying on an inferred version boundary.

  4. Is exploitation in the wild formally confirmed?
    Reviewed CISA's filtered Known Exploited Vulnerabilities catalogue entry.
    cisa.gov โ†—

    CISA lists unauthenticated remote code execution, added the CVE on 25 June 2026 and marks its use in ransomware campaigns as known.

    why This elevates the status from technically exploitable or vendor-reported activity to confirmed exploitation requiring urgent remediation.

  5. What does the observed post-exploitation implant actually do?
    Read ReliaQuest's original technical report and indicators.
    reliaquest.com โ†—

    The web shell decrypts Windchill-keystore credentials, maps vault files, uses Windchill's own database context, loads Java code in memory and communicates through X-windchill-req with compressed responses.

    why These findings establish the immediate risks of credential compromise and engineering-data theft and provide concrete host, network and database hunting opportunities.

  6. How was the campaign described before the implant analysis?
    Reviewed the earlier reporting that linked exploitation, JSP deployment and extortion activity.
    thehackernews.com โ†—

    Earlier reporting described internet-facing Windchill and FlexPLM attacks, hex-named JSP files, engineering-data staging and Clop-themed extortion emails across manufacturing, automotive, aerospace and retail targets.

    why This supplied timeline and sector context but was treated as secondary reporting rather than sole proof of attribution.

  7. Does independent exposure research corroborate the campaign context?
    Reviewed Censys research on exposed Windchill services and associated infrastructure.
    censys.com โ†—

    Censys observed fewer than 100 exposed instances in early June, declining exposure after disclosure, short-lived activity across published indicator addresses and Clop contact infrastructure associated with July extortion emails.

    why This independently supports the exposure, timing and extortion context while showing that a small public footprint can still contain high-value targets.

  8. Is public exploit or PoC code available?
    Searched GitHub repositories for the exact CVE with exploit and PoC terms.
    github.com โ†—

    The search returned a threat-hunting repository rather than a public exploit implementation.

    why This search did not establish public PoC availability, so active exploitation was kept distinct from publicly available exploit code.

  9. Does a public vulnerability record identify known source code?
    Reviewed the GitHub Advisory Database entry.

    The entry marks the vulnerability critical and network reachable but states that no source code is known and leaves patched versions unspecified.

    why This corroborates the absence of verified public exploit source while reinforcing the need to obtain exact patch information from PTC.

ActorsClop (Cl0p)
MalwareCustom Windchill JSP web shell
TargetsInternet-exposed PTC Windchill and FlexPLM operatorsManufacturing and industrial organisationsAutomotive and aerospace organisationsRetail and apparel organisationsDefence, energy, electronics and medical-technology organisations

Research coverage

All 68 registered source leaves were evaluated for this run: 58 completed, 0 were unavailable, 3 failed and 7 were disabled. For this story, 5 registered sources supplied useful evidence (2 primary, 1 corroborating, 2 contextual and 0 PoC/exploit references). 53 completed sources contained no matched information for this story.

Primary evidence Independent corroboration Operational context PoC reference Checked โ€” no match Unavailable Failed Disabled
Complete source-by-source audit 68 sources
SourceRun resultValueWhy it was useful โ€” or not
CISA KEVkev ok1671 records Primary evidence4 matched items Confirmed that a related CVE is listed in CISA's Known Exploited Vulnerabilities catalogue. Supplied a vendor or government advisory opened and verified during focused research.
The Hacker Newsnews ok9 records Primary evidence1 matched items Published the source report used to frame and date the event.
CISA Alertsnews ok empty0 records Corroborating1 matched items A page from this source was opened and verified during focused research.
deepdarkCTI CVE most exploiteddeepdarkcti ok94 records Context1 matched items Provided lower-confidence OSINT context matched to an explicit CVE.
FIRST EPSSepss ok7807 records Context3 matched items Added exploitation-probability context; EPSS does not itself prove exploitation.
AlienVault OTXdark_web failed0 records Failed The current collection attempt failed; this source cannot support the report.
BleepingComputernews ok12 records Checked โ€” no match The source completed, but none of its retained records matched this story.
CIRCL CVEcve ok30 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Cisco PSIRTvendor_advisory stale fallback0 records Failed The current collection attempt failed; this source cannot support the report.
Cisco Talosnews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Discorddeepdarkcti ok7 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI exploitsdeepdarkcti ok24 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI forumsdeepdarkcti ok264 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI malware as a servicedeepdarkcti ok7 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI malware samplesdeepdarkcti ok3 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI marketsdeepdarkcti ok127 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI phishingdeepdarkcti ok19 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI ransomware gangsdeepdarkcti ok685 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI RATsdeepdarkcti ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Telegram infostealerdeepdarkcti ok130 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Telegram threat actorsdeepdarkcti ok1009 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Twitter threat actorsdeepdarkcti ok39 records Checked โ€” no match The source completed, but none of its retained records matched this story.
DNSDumpster domain IOC enrichmentresearch ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Exploit-DBexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Fortinet PSIRTvendor_advisory disabled Disabled Disabled in the source registry; no check was attempted.
GitHub topic: cveresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: exploitresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: penetration-testingresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: pocresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: vulnerabilityresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GreyNoiseexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
KrebsOnSecuritynews ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
LinkedIn RSS proxy feeds (disabled)research disabled Disabled Disabled in the source registry; no check was attempted.
MalwareBazaardark_web ok3 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #cveresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #cybersecurityresearch ok17 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #exploitresearch ok10 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #infosecresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #malwareresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #ransomwareresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #threatintelresearch ok12 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #vulnerabilityresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Metasploit module metadataexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Microsoft MSRCvendor_advisory ok1590 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Microsoft Securitynews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
MISP Galaxyresearch ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
MISP threat actor galaxyactor ok0 records Checked โ€” no match The source completed, but none of its retained records matched this story.
NVDcve failed0 records Failed1 matched items The current collection attempt failed; this source cannot support the report.
Palo Alto Networks PSIRTvendor_advisory ok25 records Checked โ€” no match The source completed, but none of its retained records matched this story.
ProjectDiscovery nuclei templatesexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Rapid7news ok2 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Reddit r/AskNetsec (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/cybersecurity (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/malware (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/netsec (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/ReverseEngineering (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
SANS ISCnews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Shadowserver public aggregate honeypot observationsexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Shodanresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Sigma Rulesresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Sophos IOCsresearch ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
ThreatFoxthreat_intelligence ok100 records Checked โ€” no match The source completed, but none of its retained records matched this story.
UK NCSCnews ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Unit42 IOCsresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
URLhausdark_web ok10 records Checked โ€” no match The source completed, but none of its retained records matched this story.
VirusTotal Community IOC enrichmentresearch ok4 records Checked โ€” no match The source completed, but none of its retained records matched this story.
VulnCheck KEVkev ok500 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Vulnerability Lookupcve ok30 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Additional verified pages 13 opened outside the registered collection
Vulnerability & exploitation6
CVE-2026-12569 CISA KEV PTC Windchill and FlexPLM ยท added 2026-06-25 ยท used in ransomware CISA catalog โ†—
CVE-2023-34362 CISA KEV Progress MOVEit Transfer ยท added 2023-06-02 ยท used in ransomware CISA catalog โ†—
CVE-2021-27101 CISA KEV Accellion FTA ยท added 2021-11-03 ยท used in ransomware CISA catalog โ†—
CVE-2021-27101 EPSS 5.9% 93th percentile exploitation probability
CVE-2023-34362 EPSS 99.9% 100th percentile exploitation probability
CVE-2026-12569 EPSS 30.2% 98th percentile exploitation probability
OSINT / dark-web chatter1
deepdarkCTI: CVE-2023-34362 (Progress MOVEit) raw.githubusercontent.com โ†—
Vendor & gov advisories2
CISA Known Exploited Vulnerabilities entry for CVE-2026-12569 cisa.gov โ†—

Confirms exploitation in the wild, unauthenticated remote code execution and known ransomware-campaign use.

NVD entry for CVE-2026-12569 nvd.nist.gov โ†—

Describes untrusted-data deserialisation affecting Windchill PDMLink and FlexPLM and lists affected releases.

Analysis & research3
Clop Returns with Custom Implant in Mass-Extortion Campaign reliaquest.com โ†—

Primary technical analysis of the Windchill-specific JSP web shell, its indicators and defensive recommendations.

A Chill in the Air: Cl0p Targets Windchill, Another Enterprise Software Product censys.com โ†—

Independently examines exposure, campaign infrastructure, extortion reporting and the affected sector profile.

Clop-Linked Windchill Web Shell Decrypts Credentials and Maps Engineering Data thehackernews.com โ†—

The supplied report accurately summarises the subsequently verified ReliaQuest findings.