CVE-2023-35969
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
Opening a specially made file in this waveform viewer program can let an attacker take over the computer.
- 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
Heap-based buffer overflow in fstReaderIterBlocks2 during chain_table parsing of FST_BL_VCDATA and FST_BL_VCDATA_DYN_ALIAS sections allows arbitrary code execution when processing a crafted .fst file.
Why it matters to the business
Successful exploitation grants attackers full control over the system running the vulnerable application, enabling data theft, malware deployment, or further network compromise; the issue affects waveform analysis workflows but remains low-prevalence given the specialized nature of the software.
How an attack unfolds
An attacker crafts a malicious .fst file containing oversized chain_table data in the FST_BL_VCDATA or FST_BL_VCDATA_DYN_ALIAS sections. The victim is tricked into opening the file with the vulnerable application, triggering the buffer overflow and resulting in arbitrary code execution. Public exploit code is available.
How to fix it
No fixed versions are listed in the available data; immediately avoid opening untrusted .fst files and monitor vendor releases for patches. Disable or sandbox the application where possible until an update is available.
How to confirm the fix worked
Confirm the application version against the latest available release; attempt to open a known-malicious test .fst file in an isolated environment and monitor for crashes or unexpected behavior; review source code or binary for the affected fstReaderIterBlocks2 function.
Typical attack path
- Craft .fst file with malicious chain_table data targeting FST_BL_VCDATA or FST_BL_VCDATA_DYN_ALIAS sections
- Deliver the file via email, download link, or shared storage
- Victim opens the file in the vulnerable application
- Parser processes the malformed chain_table and overflows the heap buffer
- Attacker-supplied payload executes with the privileges of the application process
How to detect it
Review application crash logs and file-open events for .fst files; look for unexpected heap corruption indicators or child processes spawned from the viewer; correlate with email or download logs showing delivery of .fst attachments.
- .fst files containing FST_BL_VCDATA or FST_BL_VCDATA_DYN_ALIAS sections with abnormal chain_table sizes
- Application process crashes during .fst parsing
- Unexpected child process creation from gtkwave executable
What your security team should do
- Block or sandbox execution of the affected application until a patch is released
- Implement file-type restrictions and user training to prevent opening untrusted .fst files
- Monitor vendor announcements and apply updates as soon as fixed versions become available
- Add .fst file handling to endpoint detection rules and review logs for unexpected process crashes
The record
Multiple heap-based buffer overflow vulnerabilities exist in the fstReaderIterBlocks2 chain_table parsing 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 chain_table of `FST_BL_VCDATA` and `FST_BL_VCDATA_DYN_ALIAS` section types.
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