CVE-2026-4538: AI component: Input Validation flaw enables exploitation
MEDIUM CISA: TRACK*CVE-2026-4538 is a deserialization vulnerability in PyTorch's pt2 model loader with a public exploit and no vendor patch in sight. Any environment loading external or shared .pt2 compiled model files is at risk of arbitrary code execution on the loading host. Immediately restrict which model files your pipelines load and from where — treat all external .pt2 artifacts as untrusted until PyTorch ships a fix.
Risk Assessment
Medium severity by CVSS (5.3), but practically higher for AI/ML environments due to the public exploit, unpatched status, and the widespread use of PyTorch in training and inference pipelines. The local attack vector lowers the score, but in shared compute environments (Kubernetes nodes, multi-tenant GPU clusters, shared model registries) 'local' is often achievable by a threat actor who can place or tamper with model artifacts. The combination of low complexity, low privilege requirement, and public PoC makes exploitation straightforward once access to the loading path is obtained.
Severity & Risk
Attack Surface
Recommended Action
7 steps-
Audit all sources from which your pipelines load .pt2 files — block loading from untrusted or external sources immediately.
-
Enforce allowlisting of model artifact registries; reject .pt2 files not signed or checksummed against a known-good manifest.
-
Run model loading operations in isolated, unprivileged sandboxes or containers with no network access and minimal filesystem scope.
-
Monitor for unexpected process spawning or network connections from PyTorch inference/training processes.
-
Track PR #176791 on pytorch/pytorch and apply the patch as soon as it merges — pin to the fixed version in all dependency manifests.
-
Until patched, consider replacing pt2 loading with safer serialization formats (ONNX, SafeTensors) where operationally feasible.
-
Scan existing .pt2 artifacts in your model registry for unexpected executable content.
CISA SSVC Assessment
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
Classification
Compliance Impact
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-4538?
CVE-2026-4538 is a deserialization vulnerability in PyTorch's pt2 model loader with a public exploit and no vendor patch in sight. Any environment loading external or shared .pt2 compiled model files is at risk of arbitrary code execution on the loading host. Immediately restrict which model files your pipelines load and from where — treat all external .pt2 artifacts as untrusted until PyTorch ships a fix.
Is CVE-2026-4538 actively exploited?
No confirmed active exploitation of CVE-2026-4538 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-4538?
1. Audit all sources from which your pipelines load .pt2 files — block loading from untrusted or external sources immediately. 2. Enforce allowlisting of model artifact registries; reject .pt2 files not signed or checksummed against a known-good manifest. 3. Run model loading operations in isolated, unprivileged sandboxes or containers with no network access and minimal filesystem scope. 4. Monitor for unexpected process spawning or network connections from PyTorch inference/training processes. 5. Track PR #176791 on pytorch/pytorch and apply the patch as soon as it merges — pin to the fixed version in all dependency manifests. 6. Until patched, consider replacing pt2 loading with safer serialization formats (ONNX, SafeTensors) where operationally feasible. 7. Scan existing .pt2 artifacts in your model registry for unexpected executable content.
What systems are affected by CVE-2026-4538?
This vulnerability affects the following AI/ML architecture patterns: model serving, training pipelines, MLOps/CI-CD pipelines, model registries, shared GPU compute clusters, inference microservices.
What is the CVSS score for CVE-2026-4538?
CVE-2026-4538 has a CVSS v3.1 base score of 5.3 (MEDIUM). The EPSS exploitation probability is 0.02%.
Technical Details
NVD Description
A vulnerability was identified in PyTorch 2.10.0. The affected element is an unknown function of the component pt2 Loading Handler. The manipulation leads to deserialization. The attack can only be performed from a local environment. The exploit is publicly available and might be used. The project was informed of the problem early through a pull request but has not reacted yet.
Exploitation Scenario
An adversary with access to a shared model repository or artifact store (e.g., an internal MLflow registry, an S3 bucket, or a shared NFS mount used by a training cluster) crafts a malicious .pt2 file embedding a deserialization payload. When an automated pipeline or data scientist loads the file via PyTorch's pt2 Loading Handler, the payload executes in the process context — potentially establishing a reverse shell, exfiltrating environment variables and cloud credentials, or poisoning the training environment. In multi-tenant GPU clusters where researchers share model checkpoints, the local access requirement is trivially satisfied by any authenticated cluster user.
Weaknesses (CWE)
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L References
Timeline
Related Vulnerabilities
CVE-2024-2912 10.0 BentoML: RCE via insecure deserialization (CVSS 10)
Same attack type: Code Execution CVE-2026-21858 10.0 n8n: Input Validation flaw enables exploitation
Same attack type: Code Execution CVE-2025-5120 10.0 smolagents: sandbox escape enables unauthenticated RCE
Same attack type: Code Execution CVE-2025-59528 10.0 Flowise: Unauthenticated RCE via MCP config injection
Same attack type: Code Execution GHSA-vvpj-8cmc-gx39 10.0 picklescan: security flaw enables exploitation
Same attack type: Code Execution
AI Threat Alert