CVE-2023-35994
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
A waveform viewing program can be tricked into letting attackers take over a computer when someone opens a specially prepared file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Improper array index validation in fstReaderIterBlocks2 tdelta initialization allows out-of-bounds access when parsing a crafted .fst file, resulting in arbitrary code execution.
Why it matters to the business
Successful exploitation grants an attacker full control of the affected workstation after a user opens a malicious waveform file, enabling data theft, ransomware deployment, or lateral movement with high operational disruption.
How an attack unfolds
An attacker crafts a .fst file that triggers the tdelta initialization flaw in GTKWave 3.3.115. The victim is tricked into opening the file, causing the buffer overflow and execution of attacker-supplied code. Public exploit code is available and the vulnerability has existed for over two years.
How to fix it
Upgrade GTKWave to a version that resolves the fstReaderIterBlocks2 tdelta vulnerabilities. Until a fixed release is available, restrict opening of untrusted .fst files and run the application under least-privilege sandboxing.
How to confirm the fix worked
Confirm the installed GTKWave version is newer than 3.3.115 and test that the application no longer crashes or executes unexpected code when loading known-malicious .fst samples.
Typical attack path
- Craft a malicious .fst file exploiting tdelta array index validation
- Deliver the file via email, download link, or shared storage
- Victim opens the file in GTKWave
- Trigger buffer overflow during tdelta initialization
- Execute arbitrary code on the victim system
How to detect it
Review file-access logs and process-creation events for GTKWave opening .fst files from unexpected sources; look for subsequent crashes, anomalous child processes, or memory-corruption indicators shortly after file open.
What your security team should do
- Immediately block untrusted .fst files at email gateways and file-sharing services
- Inventory all GTKWave installations and prioritize patching
- Enforce application allow-listing or sandbox execution for waveform viewers
- Monitor for new fixed releases from the GTKWave project
The record
Multiple improper array index validation vulnerabilities exist in the fstReaderIterBlocks2 tdelta functionality of GTKWave 3.3.115. A specially crafted .fst file can lead to arbitrary code execution. A victim would need to open a malicious file to trigger these vulnerabilities.This vulnerability concerns the tdelta initialization part.
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