CVE-2023-35949
High · 7.8CVSS
7.8
EPSS
0.5%
Published
May 28, 2024
CISA due date
—
Cloudanix analysis
A flaw in a 3D graphics library can let attackers take control of a computer if someone opens a specially made model file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Library
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Stack-based buffer overflow in readOFF.cpp during parsing of geometric faces in .off files, enabling arbitrary code execution.
Why it matters to the business
Applications relying on the library risk full system compromise when users process untrusted 3D model files, potentially leading to data loss or unauthorized access.
How an attack unfolds
An attacker crafts a malicious .off file that overflows a stack buffer while the library parses face data, causing the vulnerable application to execute attacker-supplied code upon file processing.
How to fix it
Upgrade libigl to a version that resolves the stack-based buffer overflows in readOFF.cpp; rebuild and redeploy dependent applications with the patched library.
How to confirm the fix worked
Confirm the installed libigl version is newer than 2.4.0, run regression tests with malformed .off files, and verify absence of crashes or memory corruption under fuzzing.
Typical attack path
- Craft a specially formed .off file that triggers buffer overflow during face parsing
- Deliver the file to the target via email, download, or shared storage
- Convince the victim to open the file in an application using the vulnerable library
- Exploit the overflow to achieve arbitrary code execution
How to detect it
Review application and system logs for segmentation faults or crashes during .off file parsing; inspect process memory dumps for signs of stack corruption after handling model imports.
What your security team should do
- Prioritize updating libigl across all build pipelines and applications
- Restrict or sandbox processing of untrusted .off files until patched
- Add file-type validation and size limits for imported 3D models
The record
Multiple stack-based buffer overflow vulnerabilities exist in the readOFF.cpp functionality of libigl v2.4.0. A specially-crafted .off file can lead to a buffer overflow. An attacker can arbitrary code execution to trigger these vulnerabilities.This vulnerability exists within the code responsible for parsing geometric faces of an OFF file.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:18.04:LTS | slic3r-prusa | 0 | No fix |
| Ubuntu:20.04:LTS | slic3r-prusa | 0 | No fix |
| Ubuntu:22.04:LTS | slic3r-prusa | 0 | No fix |
| Ubuntu:24.04:LTS | slic3r-prusa | 0 | No fix |
| Ubuntu:24.10 | slic3r-prusa | 0 | No fix |
| Ubuntu:25.04 | slic3r-prusa | 0 | No fix |
| Ubuntu:25.10 | slic3r-prusa | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | slic3r-prusa | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | slic3r-prusa | 0 | No fix |
Related vulnerabilities
- CVE-2024-24685 Multiple stack-based buffer overflow vulnerabilities exist in the readOFF functionality… Also affects slic3r-prusa
- CVE-2024-24686 Multiple stack-based buffer overflow vulnerabilities exist in the readOFF functionality… Also affects slic3r-prusa
- CVE-2024-24684 Multiple stack-based buffer overflow vulnerabilities exist in the readOFF functionality… Also affects slic3r-prusa
- CVE-2024-24583 Multiple out-of-bounds read vulnerabilities exist in the readMSH functionality of libigl… Also affects slic3r-prusa
- CVE-2024-23951 Multiple improper array index validation vulnerabilities exist in the readMSH… Also affects slic3r-prusa
- CVE-2024-24584 Multiple out-of-bounds read vulnerabilities exist in the readMSH functionality of libigl… Also affects slic3r-prusa
- CVE-2024-23949 Multiple improper array index validation vulnerabilities exist in the readMSH… Also affects slic3r-prusa
- CVE-2024-23950 Multiple improper array index validation vulnerabilities exist in the readMSH… Also affects slic3r-prusa