CVE-2023-39272
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
A bug in a popular waveform viewer program lets attackers take over a computer simply by getting someone to open a specially made data file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Integer overflow when allocating the lsb array during LXT2 facgeometry parsing leads to memory corruption that can be leveraged for arbitrary code execution.
Why it matters to the business
Attackers can fully compromise user workstations running GTKWave by delivering a malicious waveform file, enabling data theft, persistence, or further network access with no patch currently published.
How an attack unfolds
An attacker crafts a .lxt2 file that triggers the integer overflow in facgeometry parsing. The victim opens the file in GTKWave, the overflow corrupts memory structures, and attacker-controlled data is written into executable regions to achieve code execution.
How to fix it
Upgrade to a patched release of GTKWave once available; until then restrict opening of untrusted .lxt2 files and run the application under sandboxing or least-privilege constraints.
How to confirm the fix worked
Confirm GTKWave version and test file handling behavior against known proof-of-concept .lxt2 samples; monitor vendor advisories for fixed builds.
Typical attack path
- Craft .lxt2 file containing malformed facgeometry data to induce lsb array integer overflow
- Deliver file to target via email, download link, or shared storage
- Victim opens file in vulnerable GTKWave instance
- Overflow during allocation allows memory corruption and subsequent arbitrary code execution
How to detect it
Review endpoint logs and EDR telemetry for GTKWave process crashes, unexpected memory allocations, or child process creation immediately after .lxt2 file access.
What your security team should do
- Block or sandbox GTKWave execution on untrusted .lxt2 files until a patch is released
- Add file-type filtering and user education to reduce accidental opening of malicious waveform files
- Hunt for GTKWave crashes or anomalous child processes in endpoint telemetry
The record
Multiple integer overflow vulnerabilities exist in the LXT2 facgeometry parsing functionality of GTKWave 3.3.115. A specially crafted .lxt2 file can lead to arbitrary code execution. A victim would need to open a malicious file to trigger these vulnerabilities.This vulnerability concerns the integer overflow when allocating the `lsb` array.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | gtkwave | 0 | 3.3.98+really3.3.118-0+deb10u1 |
| Debian:11 | gtkwave | 0 | 3.3.104+really3.3.118-0+deb11u1 |
| Debian:12 | gtkwave | 0 | 3.3.118-0.1~deb12u1 |
| Debian:13 | gtkwave | 0 | 3.3.118-0.1 |
| Ubuntu:16.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:18.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:20.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:22.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:24.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:24.10 | gtkwave | 0 | No fix |
| Ubuntu:25.04 | gtkwave | 0 | No fix |
| Ubuntu:25.10 | gtkwave | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | gtkwave | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | gtkwave | 0 | No fix |
Related vulnerabilities
- CVE-2023-39444 Multiple out-of-bounds write vulnerabilities exist in the LXT2 parsing functionality of… Also affects gtkwave
- CVE-2023-39317 Multiple integer overflow vulnerabilities exist in the LXT2 num_dict_entries… Also affects gtkwave
- CVE-2023-39414 Multiple integer underflow vulnerabilities exist in the LXT2 lxt2_rd_iter_radix shift… Also affects gtkwave
- CVE-2023-39413 Multiple integer underflow vulnerabilities exist in the LXT2 lxt2_rd_iter_radix shift… Also affects gtkwave
- CVE-2023-39443 Multiple out-of-bounds write vulnerabilities exist in the LXT2 parsing functionality of… Also affects gtkwave
- CVE-2023-39316 Multiple integer overflow vulnerabilities exist in the LXT2 num_dict_entries… Also affects gtkwave
- CVE-2023-39271 Multiple integer overflow vulnerabilities exist in the LXT2 facgeometry parsing… Also affects gtkwave
- CVE-2023-39273 Multiple integer overflow vulnerabilities exist in the LXT2 facgeometry parsing… Also affects gtkwave