Cloudanix VulnDB

CVE-2023-37574

High · 7.8

CVSS

7.8

EPSS

0.4%

Published

Jan 8, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in waveform viewing software lets attackers take over a computer when a user opens a specially made data file.

Exploit Available
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 condition in the VCD get_vartoken realloc path of the legacy GUI parser allows an attacker-controlled .vcd file to corrupt heap memory and achieve arbitrary code execution.

Why it matters to the business

Compromise of engineering workstations that analyze waveform files can result in theft of proprietary hardware designs, insertion of malicious code into development environments, and lateral movement into design or manufacturing networks.

How an attack unfolds

An attacker crafts a .vcd file that triggers the use-after-free during realloc in the legacy VCD parser; the victim opens the file through the GTKWave GUI, the parser processes the malicious token stream, and the freed memory is reused to execute attacker-supplied code.

How to fix it

Upgrade GTKWave to a version containing the fix for CVE-2023-37574; if no patched release is available, restrict use of the legacy VCD parser and prohibit opening untrusted .vcd files.

How to confirm the fix worked

Confirm GTKWave version is newer than 3.3.115 and that the get_vartoken realloc path has been hardened; attempt to open known-good and known-malicious .vcd samples in an isolated environment to verify absence of crashes or code execution.

Typical attack path

  1. Create malicious .vcd file that triggers UAF in get_vartoken realloc
  2. Deliver file via email, download, or shared storage
  3. Victim opens file using GTKWave GUI legacy VCD loader
  4. Heap corruption leads to arbitrary code execution

How to detect it

Review endpoint logs for GTKWave launches immediately followed by crashes or unexpected child processes; examine recent file-access history for .vcd files originating outside trusted design repositories.

What your security team should do

  • Immediately block untrusted .vcd files from entering engineering networks
  • Inventory all GTKWave installations and enforce updates or removal
  • Add .vcd file-type restrictions to email gateways and file-sharing systems
  • Monitor for GTKWave process anomalies on developer endpoints

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 GUI's legacy VCD parsing code.

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