Skip to main content

Hunyuan3D-1 CVE-2025-13713

HIGH
Deserialization of Untrusted Data (CWE-502)
2025-12-23 zdi-disclosures@trendmicro.com
7.8
CVSS 3.0 · Vendor: trendmicro
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft malicious pickle model file
  2. Exploit
    Lure victim to load_pretrained
  3. Execution
    Deserialization of untrusted data
  4. Impact
    Arbitrary code execution as root

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to invoke the load_pretrained function on an attacker-supplied model file/checkpoint, i.e., loading untrusted serialized (pickle/torch.load) data - the inbound data is not validated before deserialization. This is NOT remote-unauthenticated: the CVSS vector is AV:L/UI:R, so the attack is local in execution and gated on user interaction (the target must open a malicious file or visit a malicious page). Limiting factors: no network-exposed service is required to be vulnerable, the attacker needs the victim to load the malicious artifact, and vulnerable deployments are those running the affected code against pre-2.6 PyTorch (where torch.load defaults to unsafe weights_only=False). The severity multiplier is that the process runs as root, so successful deserialization yields full host compromise.

Impact

This is a genuine but not emergency-grade priority. The CVSS 3.0 base score of 7.8 is driven by a LOCAL attack vector (AV:L) with required user interaction (UI:R), not network-reachable exploitation - the victim must actively load an attacker-supplied model/file. CWE-502 (deserialization of untrusted data) in load_pretrained yields full code execution as root (C:H/I:H/A:H), which is severe once triggered. Countervailing signals keep real-world risk moderate: EPSS is only 0.52% (43rd percentile), indicating low predicted exploitation probability; there is no CISA KEV listing and no public exploit identified; and the vector requires local access plus user interaction, limiting mass exploitation. Note an apparent tension worth flagging: the description repeatedly says 'remote attackers' while the CVSS vector is AV:L (local) with UI:R - this is consistent with the ZDI 'open a malicious file / visit a malicious page' model (the payload is delivered remotely but execution is local on victim action), so the 'root' impact and local vector should be read together rather than as network RCE. The patch (torch upgrade to 2.6.0) corroborates a PyTorch pickle/torch.load deserialization root cause.

Exploit ScenarioDerived

An attacker publishes or shares a malicious pretrained model file (e.g., a trojanized checkpoint) and lures a victim into loading it with Hunyuan3D-1's load_pretrained function, or into visiting a page that triggers that load. When the untrusted data is deserialized, embedded objects execute attacker-controlled code in the context of root. No public proof-of-concept is identified at time of analysis, though the flaw was discovered and detailed by Trend Micro's Zero Day Initiative (ZDI-25-1027 / ZDI-CAN-27191).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.5% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 19, 2026

Deserialization of untrusted data in Tencent Hunyuan3D-1's load_pretrained function allows code execution in the context of the process (reported as root) when a victim loads an attacker-supplied model file or checkpoint. The CVSS 3.x vector (AV:L/AC:L/PR:N/UI:R) makes this a local-execution attack that is gated on user interaction - the target must open a malicious page or file and trigger load_pretrained on the crafted artifact - rather than a remotely reachable service flaw. Risk is moderate rather than urgent: EPSS is 0.52% (43rd percentile), no public exploit code or CISA KEV entry is associated with the CVE, and the multiplier is that the affected code commonly runs at root, so a successful load yields full host compromise.

RemediationAI

Fix by moving off the unsafe deserializer path: update the Hunyuan3D-1 dependency pins to torch2.6.0 and torchvision0.21.0, which is exactly the change made in upstream commit 454284503670312d4e06f6251c9be2f9f6d0fae7 (https://github.com/Tencent-Hunyuan/Hunyuan3D-1/commit/454284503670312d4e06f6251c9be2f9f6d0fae7); where upgrading is not immediately possible, explicitly call torch.load(..., weights_only=True) or convert checkpoints to the safetensors format, accepting the trade-off that weights_only=True will refuse checkpoints containing custom classes, numpy picks, or other non-tensor objects and will require an explicit allowlist for those types. Do not load .pt/.pth/.ckpt artifacts from untrusted sources without hash verification, and treat any model file downloaded from a third party as executable content. As a compensating control, run inference and pretrained-model loading as an unprivileged user or inside a non-root container so a successful pickle payload cannot inherit root context; the trade-off is that this breaks workflows expecting root-level access to GPU devices, shared caches, or mounted datasets, which must then be granted through device passthrough or group permissions. Details and vendor coordination notes are in ZDI-25-1027 (https://www.zerodayinitiative.com/advisories/ZDI-25-1027/).

Affected ProductsAI

Tencent Hunyuan3D-1 installations that pull in the project's pinned dependencies of torch2.2.0 and torchvision0.17.0 (or any other PyTorch release before 2.6 where torch.load defaults to weights_only=False), specifically when the load_pretrained function is invoked on checkpoints or model files obtained from an untrusted source. No CPE strings were supplied with this record, so scoping must be done by dependency version rather than by formal CPE matching. Tencent users should consult the upstream fix commit at https://github.com/Tencent-Hunyuan/Hunyuan3D-1/commit/454284503670312d4e06f6251c9be2f9f6d0fae7 and the ZDI advisory at https://www.zerodayinitiative.com/advisories/ZDI-25-1027/ for the authoritative affected-product statement.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause class is CWE-502, Deserialization of Untrusted Data. Hunyuan3D-1 is a Tencent 3D asset generation project whose load_pretrained path ingests serialized model checkpoints; because no validation is performed on the inbound blob before it is unpickled, an attacker-controlled checkpoint can carry a malicious __reduce__ payload that executes arbitrary code during loading. The vulnerable configuration is tied to the project's pinned dependencies: Hunyuan3D-1's requirements.txt previously pinned torch2.2.0 and torchvision0.17.0, and in PyTorch versions before 2.6 torch.load defaults to weights_only=False, meaning the full pickle opcode set is honored. The upstream fix (commit 4542845036) raises the pins to torch2.6.0 and torchvision0.21.0, where torch.load defaults to weights_only=True and restricts deserialization to a safe allowlist of tensors and primitive types. The exposure is therefore less about a bespoke parsing bug and more about a machine-learning supply-chain pattern: loading third-party .pt/.pth/.ckpt artifacts from untrusted sources with an unsafe deserializer in a privileged process.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (trendmicro) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

Payload delivered remotely but executed locally when the victim loads a malicious model (AV:L, UI:R); no prior auth needed (PR:N); unsafe deserialization gives full code exec as root (C/I/A:H).

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (trendmicro).

CVSS VectorVendor: trendmicro

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

Tencent Hunyuan3D-1 load_pretrained Deserialization of Untrusted Data Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of Tencent Hunyuan3D-1. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.

The specific flaw exists within the load_pretrained function. The issue results from the lack of proper validation of user-supplied data, which can result in deserialization of untrusted data. An attacker can leverage this vulnerability to execute code in the context of root. Was ZDI-CAN-27191.

Executive ViewAI

Why It Matters

Tencent Hunyuan3D-1 contains a high-severity model-loading flaw that can lead to full host compromise because the affected process often runs with root privileges. Organizations that load external or unverified model checkpoints are exposed when a user opens a malicious artifact, creating supply-chain and insider-risk exposure. No public exploit identified at time of analysis, but leadership should care because a single successful load can yield complete control of a development or production host.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include refusing to load untrusted model files or checkpoints, verifying artifact provenance and checksums, running load_pretrained in a sandboxed low-privilege container, enforcing least privilege to avoid root execution, and monitoring for anomalous deserialization or process behavior.

Threat Intelligence Overview

EPSS Score
0.5%
Top 57% exploitable
Prevalence
Low
niche AI 3D-generation research model, limited production enterprise footprint
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.5%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

40
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy