☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 7.8 CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H 🐛 CWE-416
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-2532

CVE-2025-2532 Remote Code Execution in Luxion
📅 PUBLISHED: 2025-03-25 14:17 UTC 🔄 UPDATED: 2026-08-12 09:01 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.34%
👁️
0.34% probability
8.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1203
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 7.8
AV: L Attack Vector Local
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: H Availability High
7.8
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-2532 is a critical use-after-free vulnerability in Luxion KeyShot, a professional 3D rendering and animation application. The flaw resides in the parsing of USD (Universal Scene Description) files, specifically within the handling of USDC (compressed USD) format. By convincing a user to open a malicious USDC file or visit a crafted web page, an attacker can trigger a use-after-free condition, leading to remote code execution in the context of the current process. The vulnerability has a CVSS score of 7.8 (High) and is currently unpatched. No public exploit code or proof-of-concept is available, but the risk is elevated due to the lack of a vendor fix.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability does not affect open-source packages (NPM, PyPI, Go, Ruby). It is a proprietary desktop application (Luxion KeyShot) and does not have a supply chain component in the traditional package ecosystem.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
  • Base Score: 7.8 (High)
  • Attack Vector: Local (requires user interaction to open a file)
  • Attack Complexity: Low
  • Privileges Required: None
  • User Interaction: Required
  • Scope: Unchanged
  • Confidentiality Impact: High
  • Integrity Impact: High
  • Availability Impact: High

Threat Level: High – Exploitation is possible with user interaction, and the impact is full code execution. The lack of a patch increases the urgency for mitigations.

Deep Dive & Mechanics

The vulnerability is a classic use-after-free (CWE-416) in the USDC file parser of Luxion KeyShot. When parsing a specially crafted USDC file, the application fails to validate that an object still exists before performing operations on it. This can occur when:

  1. The parser reads a reference to an object that has already been freed or deallocated.
  2. The attacker crafts the USDC file to trigger a specific sequence of allocations and deallocations, causing a dangling pointer.
  3. The dangling pointer is then dereferenced, leading to memory corruption and potentially arbitrary code execution.

The attack surface is broad because USDC files are commonly used in 3D workflows, and KeyShot is widely adopted in design and engineering environments. The vulnerability does not require authentication or special privileges beyond the ability to open a file.

Vulnerable vs. Patched Code

Since no patch is available, a direct code comparison is not possible. However, the vulnerable code pattern is typical of use-after-free in C++ parsers:

Vulnerable Pattern (pseudocode):

Object* obj = parser->getObject(handle);
// ... some operations that may free obj ...
obj->process();  // Use after free if obj was freed

Patched Pattern (expected):

Object* obj = parser->getObject(handle);
if (obj == nullptr) {
    // Handle error or skip
    return;
}
// ... operations that do not free obj ...
obj->process();  // Safe because obj is validated

The fix would involve adding proper null checks and reference counting to ensure objects are not used after they are freed.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • Luxion KeyShot installed (any version prior to patch)
  • Ability to deliver a malicious USDC file to the target (e.g., via email, download, or web page)

Exploitation Steps:

  1. Craft a malicious USDC file that triggers the use-after-free condition. This requires reverse engineering the USDC parser to identify the exact sequence of operations that cause the dangling pointer.
  2. Embed shellcode or a ROP chain to achieve code execution. The payload will run in the context of the KeyShot process.
  3. Deliver the file to the target and convince them to open it (e.g., via social engineering or phishing).

No public exploit code is available. The following is a conceptual example of how the exploit might be structured:

# Conceptual exploit script (not functional)
import struct

def craft_malicious_usdc():
    # Build a USDC file that triggers use-after-free
    # This is a placeholder for actual exploit logic
    payload = b""
    # ... exploit logic ...
    return payload

with open("malicious.usdc", "wb") as f:
    f.write(craft_malicious_usdc())

Blue Team (Defense)

Detection & Prevention:

  • User Awareness: Train users not to open USDC files from untrusted sources.
  • Application Sandboxing: Run KeyShot in a sandboxed environment (e.g., using Windows Sandbox, AppContainer, or a virtual machine).
  • Memory Protection: Enable ASLR, DEP, and CFG (Control Flow Guard) on Windows to make exploitation harder.
  • File Scanning: Use endpoint security solutions that can scan USDC files for malicious patterns (though this is challenging due to the binary nature of USDC).
  • Network Segmentation: Limit the ability of KeyShot to access the internet or other sensitive systems.

Indicators of Compromise (IOCs)

  • File Hashes (SHA-256): No known malicious samples yet.
  • File Names: *.usdc files with unusual sizes or metadata.
  • Process Behavior: KeyShot.exe spawning child processes (e.g., cmd.exe, powershell.exe) or making outbound network connections.
  • Memory Artifacts: Heap spray patterns or unusual memory allocations in the KeyShot process.
  • Registry/File System: Creation of suspicious files in temporary directories or startup folders.

Detection Engineering

YARA Rule

rule CVE_2025_2532_UseAfterFree_USDC {
    meta:
        description = "Detects potential malicious USDC files targeting CVE-2025-2532"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-2532"
    strings:
        $usdc_magic = { 50 4B 03 04 }  // USDC magic bytes (PK\x03\x04)
        $suspicious_string = "use_after_free_trigger"  // Placeholder
    condition:
        $usdc_magic at 0 and #suspicious_string > 0
}

Sigma Rule

title: CVE-2025-2532 - Luxion KeyShot USDC Use-After-Free Exploitation
id: 8a4b3c2d-1e5f-4a7b-9c8d-0e1f2a3b4c5d
status: experimental
description: Detects suspicious behavior from KeyShot.exe that may indicate exploitation of CVE-2025-2532
author: Valters IT
date: 2025-04-10
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\KeyShot.exe'
        CommandLine|contains:
            - 'cmd.exe'
            - 'powershell.exe'
            - 'rundll32.exe'
    condition: selection
falsepositives:
    - Legitimate use of command-line tools from KeyShot (rare)
level: high

Suricata Rule

alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-2532 - Potential KeyShot USDC Exploit Outbound Connection"; flow:to_server,established; content:"|50 4B 03 04|"; depth:4; classtype:attempted-user; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable USDC file parsing if possible, or restrict file types that KeyShot can open.
  2. Apply vendor patch when available (monitor Luxion’s security advisories).
  3. Use application whitelisting to prevent KeyShot from executing untrusted code.
  4. Implement endpoint detection and response (EDR) to monitor for exploitation attempts.

Long-Term:

  • Upgrade to a patched version once released.
  • Conduct code review of the USDC parser to identify similar vulnerabilities.
  • Adopt memory-safe languages or use memory-safe libraries for file parsing.

Valters IT

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

luxion keyshot
keyshot usdc

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-2532/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.