CVE-2023-36861
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 could let an attacker take over a computer if someone opens a specially prepared 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 in VZT LZMA_read_varint parsing allows arbitrary code execution when a crafted file is processed.
Why it matters to the business
Attackers could gain full control of user workstations used for hardware design or signal analysis, risking theft of proprietary designs or further network compromise.
How an attack unfolds
An attacker creates a malicious .vzt file that triggers the out-of-bounds write during LZMA varint decoding; the victim opens the file in GTKWave, causing the vulnerable code path to execute attacker-controlled instructions.
How to fix it
Upgrade GTKWave to the latest available release that resolves the VZT parsing issue; until then, disable opening of untrusted .vzt files and run the application under restricted privileges.
How to confirm the fix worked
Confirm GTKWave version is newer than 3.3.115 and test that known malformed VZT samples no longer trigger crashes or unexpected code paths.
Typical attack path
- Craft a .vzt file containing malformed LZMA varint data sized to overflow the target buffer
- Deliver the file via email, download link, or shared storage to a target user
- User opens the file using GTKWave
- LZMA_read_varint performs the out-of-bounds write and redirects execution to attacker payload
How to detect it
Review system logs and process creation events around GTKWave launches for unexpected child processes, crashes, or shell activity immediately following VZT file access.
What your security team should do
- Block or sandbox GTKWave execution when handling files from external sources
- Deploy application allow-listing or containerization for design tools
- Monitor vendor announcements for an official fixed release and schedule immediate deployment
The record
An out-of-bounds write vulnerability exists in the VZT LZMA_read_varint 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 this vulnerability.
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