Vulnerability · Published Aug 17, 2026 · Assigned by GitHub_M

CVE-2026-34789FreeCAD: Arbitrary code execution via unsandboxed PyImport_ImportModule in PropertyPythonObject::Restore

High 7.0

In plain English

A high-severity code injection in FreeCAD from FreeCAD. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 9% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.0High
Exploit odds (30 days)0.2%top 90.7% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

FreeCAD is a free and open-source multiplatform 3D parametric modeler. Prior to 1.1.2, src/App/PropertyPythonObject.cpp in PropertyPythonObject::Restore() passes the attacker-controlled module attribute from serialized PropertyPythonObject XML directly to PyImport_ImportModule() while restoring a crafted FCStd document, which executes module-level Python code, and the legacy pickle branch also imports an attacker-controlled module and invokes its class constructor through PyObject_CallObject(). This issue is fixed in version 1.1.2.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12freecad0.20.2+dfsg1-4+deb12u1DEBIAN-CVE-2026-34789
Debian:13freecad1.0.0+dfsg-8+deb13u3DEBIAN-CVE-2026-34789
Debian:14freecad1.1.3+dfsg-1DEBIAN-CVE-2026-34789
Ubuntu:22.04:LTSfreecadno fix listedUBUNTU-CVE-2026-34789
Ubuntu:26.10freecadno fix listedUBUNTU-CVE-2026-34789

Affected products (as reported)

VendorProductVersions
FreeCAD FreeCAD < 1.1.2

Weakness: CWE-94 · Vector: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

References