CVE-2023-39444
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 your computer simply by getting you 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
Out-of-bounds write during string copy loop in LXT2 parsing allows memory corruption leading to arbitrary code execution.
Why it matters to the business
Attackers can fully compromise user workstations running the affected waveform viewer by delivering a malicious data file, risking data theft, persistence, or lateral movement with no listed patches available after nearly three years.
How an attack unfolds
An attacker crafts a malicious .lxt2 file that triggers the string-copy out-of-bounds write; the victim opens the file in GTKWave, causing memory corruption and arbitrary code execution with no authentication required.
How to fix it
Upgrade GTKWave to the latest available version that resolves LXT2 parsing issues; if no update exists, restrict the application to trusted files only or replace it with an alternative viewer.
How to confirm the fix worked
Confirm current GTKWave version, attempt to open known-good LXT2 files in a controlled environment, and retest after any upgrade for absence of crashes or unexpected memory writes.
Typical attack path
- Craft malicious LXT2 file exploiting string copy loop
- Deliver file via email, web download, or shared storage
- Victim opens file in vulnerable GTKWave instance
- Out-of-bounds write executes attacker-controlled code
How to detect it
Review application crash logs, process creation events, and file-open telemetry for GTKWave when .lxt2 files are accessed; correlate with unexpected child processes or memory anomalies.
What your security team should do
- Immediately restrict GTKWave execution to trusted files only
- Monitor for upstream patches and deploy as soon as released
- Block or sandbox opening of .lxt2 files from untrusted sources
- Educate users on the risk of opening waveform files from unknown origins
The record
Multiple out-of-bounds write vulnerabilities exist in the LXT2 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 out-of-bounds write perfomed by the string copy loop.
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-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
- CVE-2023-39274 Multiple integer overflow vulnerabilities exist in the LXT2 facgeometry parsing… Also affects gtkwave