CVE-2023-35958
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
Opening a specially made waveform file in certain applications can let attackers 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 fstFread during VCDATA parsing allows arbitrary code execution when a malicious .fst file is opened.
Why it matters to the business
Successful exploitation can result in full system compromise on user workstations or developer systems that process untrusted waveform files, with moderate urgency given available public exploits and over 1000 days since publication.
How an attack unfolds
An attacker creates a specially crafted .fst file that triggers the overflow in the fstFread copy routine inside fstReaderIterBlocks2; the victim opens the file in the affected application, causing the overflow to hijack control flow and execute attacker-supplied code.
How to fix it
Upgrade affected chromium packages on Debian 12 to version 126.0.6478.56-1~deb12u1 or later; rebuild or replace any locally compiled instances using the patched source.
How to confirm the fix worked
Confirm package version is at or above the listed fixed release using dpkg or apt; attempt to open a known-good .fst file and verify no crashes occur under AddressSanitizer or similar instrumentation.
Typical attack path
- Craft malicious .fst file exploiting fstFread buffer handling
- Deliver file via email, download, or shared storage
- Victim opens file in vulnerable application
- Overflow occurs during VCDATA block parsing
- Arbitrary code execution achieved
How to detect it
Review file-open logs and process creation events for unexpected execution of the affected binary immediately after .fst file access; inspect crash dumps or core files containing fstReaderIterBlocks2 symbols.
What your security team should do
- Immediately update chromium on all Debian 12 systems to the fixed version
- Disable opening of untrusted .fst files via application policy or sandboxing until patched
- Monitor for new exploit samples and raise EPSS threshold alerts
The record
Multiple heap-based buffer overflow vulnerabilities exist in the fstReaderIterBlocks2 VCDATA 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 copy function `fstFread`.
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