Cloudanix VulnDB

CVE-2023-37446

High · 7.8

CVSS

7.8

EPSS

0.4%

Published

Jan 8, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

Opening a specially made waveform file with an older version of a circuit-viewing tool can let an attacker take over the computer without any other action from the user.

Exploit Available
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 the VCD variable definition parsing code of the vcd2lxt2 utility allows a malformed .vcd file to corrupt memory and achieve arbitrary code execution when the file is processed.

Why it matters to the business

Users or automated pipelines that convert waveform files with the affected utility risk silent compromise of engineer workstations or build systems, potentially leading to loss of intellectual property or insertion of persistent malware into design environments.

How an attack unfolds

An attacker crafts a .vcd file that triggers the out-of-bounds write inside the variable-definition section handler. The victim opens the file (or an automated process invokes vcd2lxt2 on it), causing the utility to write attacker-controlled data beyond allocated buffers and execute arbitrary code under the privileges of the invoking user.

How to fix it

Upgrade GTKWave to a version that corrects the VCD parsing logic in vcd2lxt2. If no patched release is available, replace the utility with an unaffected waveform converter or isolate file-conversion tasks inside a sandboxed or virtualized environment that cannot reach sensitive resources.

How to confirm the fix worked

Confirm the installed GTKWave binary reports a version containing the upstream fix for the VCD variable-definition handler; re-process a known-malicious test .vcd file inside an isolated environment and verify that no memory corruption or code execution occurs.

Typical attack path

  1. Attacker prepares a malicious .vcd file containing a corrupted variable-definition section sized to overflow internal buffers.
  2. Victim receives the file via email, download, or shared repository and opens it or runs vcd2lxt2 against it.
  3. vcd2lxt2 parses the malformed section, performs an out-of-bounds write, and transfers control to attacker-supplied shellcode.
  4. Attacker gains code execution on the victim machine and proceeds with further actions such as credential theft or lateral movement.

How to detect it

Search process-creation logs for invocations of vcd2lxt2 or gtkwave that reference externally supplied .vcd files; inspect crash or segmentation-fault reports on engineering workstations that coincide with .vcd file access; examine recent file-system artifacts with .vcd extensions that were created or downloaded shortly before anomalous process behavior.

What your security team should do

  • Immediately restrict or disable the vcd2lxt2 utility on developer and CI systems until a fixed GTKWave package is deployed.
  • Add .vcd file-type scanning to mail gateways and repository commit hooks to block or quarantine suspicious waveform files.
  • Monitor for any remaining instances of GTKWave 3.3.115 or earlier and prioritize replacement.

The record

Multiple out-of-bounds read vulnerabilities exist in the VCD var definition section 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 out-of-bounds write 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