CVE-2023-36916
High · 7.8CVSS
7.8
EPSS
0.4%
Published
Jan 8, 2024
CISA due date
—
Cloudanix analysis
Opening a specially made data file can let an attacker take over the computer running the affected software.
- 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 during allocation of the chain_table_lengths array in fstReaderIterBlocks2 allows memory corruption that leads to arbitrary code execution when a specially crafted .fst file is processed.
Why it matters to the business
Attackers can achieve full system compromise on any host that opens malicious FST waveform files; the flaw has publicly available exploits for more than 1000 days and affects cri-o container runtime deployments across the ecosystem.
How an attack unfolds
An attacker prepares a malicious .fst file that triggers the chain_table_lengths integer overflow, then delivers the file to a victim; once the victim opens it in the vulnerable application the overflow corrupts memory and yields arbitrary code execution.
How to fix it
Upgrade cri-o to one of the fixed releases 1.29.5, 1.28.7, or 1.30.1; do not open untrusted .fst files until patched.
How to confirm the fix worked
Confirm the installed cri-o version matches a fixed release and test that known-malicious FST samples no longer trigger the overflow.
Typical attack path
- Craft .fst file that overflows chain_table_lengths allocation
- Deliver the file via email, download, or shared storage
- Victim opens the file in the affected application
- Exploit executes arbitrary code on the host
How to detect it
Review application logs and process creation events around .fst file opens for crashes, unexpected memory allocations, or child processes spawned by the waveform viewer.
What your security team should do
- Apply the cri-o patches (1.29.5 / 1.28.7 / 1.30.1) immediately
- Block or sandbox processing of .fst files from untrusted sources
- Add file-type filtering and behavioral monitoring for waveform tools
The record
Multiple integer overflow vulnerabilities exist in the FST fstReaderIterBlocks2 chain_table allocation functionality of GTKWave 3.3.115. A specially crafted .fst file can lead to arbitrary code execution. A victim would need to open a malicious file to trigger these vulnerabilities.This vulnerability concerns the allocation of the `chain_table_lengths` 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