CVE-2023-37577
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
A flaw in certain file conversion software lets attackers run their own code on a computer if someone opens a specially made file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Full Compromise
- Component
- Application
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Use-after-free in the VCD get_vartoken realloc functionality of GTKWave allows arbitrary code execution when a specially crafted .vcd file is processed via the vcd2lxt2 conversion utility.
Why it matters to the business
Successful exploitation grants attackers full system control after a user opens a malicious file, enabling data theft, persistence, or further compromise with moderate urgency given low EPSS and no known ransomware usage.
How an attack unfolds
An attacker crafts a malicious .vcd file that triggers the realloc-related use-after-free during vcd2lxt2 processing; the victim is then tricked into opening the file, resulting in arbitrary code execution.
How to fix it
Upgrade affected GTKWave installations to a fixed version; for strapi/strapi (GIT) apply commit e1dfd4d9f1cab25cf6da3614c1975e4e508e01c6.
How to confirm the fix worked
Verify the installed GTKWave version is newer than 3.3.115 and test that vcd2lxt2 no longer crashes or executes unexpected code on known-bad .vcd samples.
Typical attack path
- Craft .vcd file exploiting realloc use-after-free
- Deliver file to target via email or download
- Victim opens file using vcd2lxt2 utility
- Trigger use-after-free to achieve code execution
How to detect it
Review system logs and process execution history for invocations of vcd2lxt2 against recently received .vcd files; look for unexpected crashes or child processes spawned from the utility.
What your security team should do
- Apply the listed fixed commit or upgrade GTKWave immediately
- Block or sandbox untrusted .vcd file handling
- Monitor for any new exploit maturity increases
The record
Multiple use-after-free vulnerabilities exist in the VCD get_vartoken realloc functionality of GTKWave 3.3.115. A specially crafted .vcd file can lead to arbitrary code execution. A victim would need to open a malicious file to trigger these vulnerabilities.This vulnerability concerns the use-after-free when triggered via the vcd2lxt2 conversion utility.
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