CyberRota Analysis
AI-GeneratedThe FEM Displacement Constraint task dialog in FreeCAD versions prior to 1.1.2 is vulnerable to arbitrary code execution due to improper handling of user input, specifically backslashes in formula fields. This flaw allows an attacker to craft malicious input that can terminate the generated Python string, leading to the execution of arbitrary Python code with the privileges of the FreeCAD process. Users and organizations utilizing FreeCAD for 3D modeling, particularly in sensitive environments, should prioritize upgrading to version 1.1.2 to mitigate this high-severity risk.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
FreeCAD is a free and open-source multiplatform 3D parametric modeler. Prior to 1.1.2, the FEM Displacement Constraint task dialog in src/Mod/Fem/Gui/TaskFemConstraintDisplacement.cpp passes the xDisplacementFormula, yDisplacementFormula, and zDisplacementFormula fields of a Fem::ConstraintDisplacement object through TaskDlgFemConstraintDisplacement::accept() into Gui::Command::doCommand. The escaping helper neutralizes quotation marks but not backslashes, allowing crafted formula text to terminate the generated Python string and execute arbitrary Python code with the FreeCAD process's privileges when a victim accepts the dialog. This issue is fixed in version 1.1.2.