CVE-2023-38622
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
A specially made file can let an attacker take over a computer when someone opens it with this waveform viewing program.
- 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 len array in VZT facgeometry parsing leads to memory corruption that can be leveraged for arbitrary code execution.
Why it matters to the business
Attackers can gain full control of a user's workstation by tricking them into opening a malicious file, enabling data theft, ransomware deployment, or further network compromise.
How an attack unfolds
An attacker crafts a malicious .vzt file that triggers the integer overflow during facgeometry parsing. The victim opens the file in the affected GTKWave version, causing memory corruption that results in arbitrary code execution under the user's context.
How to fix it
Upgrade GTKWave to a patched release that corrects the integer overflow in VZT facgeometry parsing. Until a fix is released, restrict opening of untrusted .vzt files and run the application inside a sandbox or virtual machine.
How to confirm the fix worked
Confirm the installed GTKWave version is newer than the vulnerable release, then attempt to parse both benign and boundary-case .vzt files while monitoring for crashes or memory errors.
Typical attack path
- Craft a .vzt file that triggers the integer overflow in facgeometry parsing
- Deliver the file via email, download link, or shared storage
- Social-engineer the victim into opening the file with GTKWave
- Exploit the resulting memory corruption to execute attacker-controlled code
How to detect it
Review application crash logs and process creation events around GTKWave usage; look for unexpected child processes or memory allocation failures when .vzt files are processed.
What your security team should do
- Track upstream GTKWave releases and apply the fix immediately upon availability
- Block or quarantine .vzt files at email and web gateways until patches are deployed
- Configure endpoint protection to sandbox or restrict execution of waveform analysis tools
The record
Multiple integer overflow vulnerabilities exist in the VZT facgeometry parsing functionality of GTKWave 3.3.115. A specially crafted .vzt 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 `len` 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