CVE-2026-73234
HighCVSS 7.8Exploitation Probability (EPSS)
Low risk15th percentile - higher than 15% of all known CVEs
Summary
FreeCAD prior to version 1.1.2 has a vulnerability in PropertyFileIncluded::Restore() that concatenates an attacker-controlled file or data attribute from Document.xml with the document transient path without rejecting directory components, absolute paths, or parent traversal. A crafted .FCStd archive can write attacker-controlled content to arbitrary locations accessible to the FreeCAD user.
Risk Assessment
An attacker can exploit this vulnerability to write files to arbitrary locations, potentially leading to persistence, credential compromise, configuration replacement, or code execution.
Recommendation
Update FreeCAD to version 1.1.2 or later, which fixes this vulnerability. Additionally, do not open untrusted .FCStd files and restrict user privileges.
Other vulnerabilities in FreeCAD
See all- CVE-2026-34789High
FreeCAD prior to version 1.1.2 has a vulnerability in PropertyPythonObject::Restore() where the attacker-controlled module attribute from serialized PropertyPythonObject XML is passed directly to PyImport_ImportModule() while restoring a crafted FCStd document, executing module-level Python code. The legacy pickle branch also imports an attacker-controlled module and invokes its class constructor.
- CVE-2026-34399High
FreeCAD from version 0.19 until 1.1.1 has a vulnerability in the BIM Workbench where an eval() call is made on untrusted data from SVG template files. When a user creates a TechDraw page from a malicious SVG template, arbitrary Python code executes.
- CVE-2026-34398High
FreeCAD from version 0.19 until 1.1.1 has a vulnerability in the BIM Project Manager Load Template flow where attacker-controlled FCStd Meta property values for wpposition, wpu, wpv, and wpaxis are passed directly to eval(), allowing arbitrary Python code execution when a user loads a malicious BIM project template.
- CVE-2026-73235Medium
FreeCAD prior to 1.1.2 uses the Xerces SAX2 XMLReader in Base::XMLReader, which does not disable default external entity resolution or external DTD loading. When opening a crafted .FCStd archive, external entities can read local files or initiate server-side requests, and resolved content can flow through the characters() callback.
- CVE-2026-73233High
FreeCAD prior to version 1.1.2 has a vulnerability in the FEM Displacement Constraint task dialog that passes xDisplacementFormula, yDisplacementFormula, and zDisplacementFormula fields through TaskDlgFemConstraintDisplacement::accept() into Gui::Command::doCommand. The escaping helper neutralizes quotation marks but not backslashes, allowing crafted formula text to execute arbitrary Python code with the FreeCAD process's privileges.
Original NVD description (English source)
FreeCAD is a free and open-source multiplatform 3D parametric modeler. Prior to 1.1.2, PropertyFileIncluded::Restore() in src/App/PropertyFile.cpp concatenates an attacker-controlled file or data attribute from Document.xml with the document transient path without rejecting directory components, absolute paths, or parent traversal. A crafted .FCStd archive with a matching FileIncluded XML attribute and ZIP entry can therefore write attacker-controlled content to arbitrary locations accessible to the FreeCAD user, potentially enabling persistence, credential compromise, configuration replacement, or code execution. This issue is fixed in version 1.1.2.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

