Cloudanix VulnDB

CVE-2023-45682

High · 7.1

CVSS

7.1

EPSS

0.6%

Published

Oct 21, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in a common audio library can let a specially made music file reveal hidden internal details from a program's memory when opened.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Data Exposure
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Out-of-bounds read in the DECODE macro of stb_vorbis when processing a negative var value, allowing leakage of internal memory allocation metadata from the library's heap.

Why it matters to the business

Applications that decode untrusted Ogg Vorbis audio files risk exposing sensitive memory layout details, which can aid further attacks; the library is widely embedded in media players, games, and tools with no vendor patches listed.

How an attack unfolds

An attacker crafts a malicious Ogg Vorbis file that supplies a negative value to the DECODE macro path; when the file is opened by any application linking stb_vorbis, the resulting out-of-bounds read returns heap metadata without crashing, enabling information disclosure that can be used to bypass ASLR or prepare memory corruption exploits.

How to fix it

Replace the vulnerable stb_vorbis.c implementation with a patched or forked version that enforces non-negative bounds checks before the DECODE macro; rebuild and redeploy all dependent binaries; until a fix is available, isolate or sandbox any media-processing components that accept untrusted Vorbis input.

How to confirm the fix worked

Recompile affected applications against a version containing explicit bounds validation on var before DECODE, then re-test with the original proof-of-concept file to confirm absence of memory disclosure; scan source trees for the exact DECODE macro pattern and verify surrounding range checks.

Typical attack path

  1. Obtain or generate a Vorbis file that triggers negative var in DECODE_RAW
  2. Deliver the file to the target via web download, email attachment, or media library import
  3. Victim application invokes stb_vorbis decode routine on the file
  4. Out-of-bounds read occurs and leaks heap metadata back to attacker-controlled output or logs

How to detect it

Review application logs or crash reports for repeated decode failures or abnormal memory reads during Vorbis processing; correlate file-open events on untrusted .ogg files with subsequent unexpected memory disclosures or follow-on exploitation attempts.

What your security team should do

  • Inventory all products and build pipelines that statically link or ship stb_vorbis.c
  • Prioritize replacement or patching of the library in any path that processes external audio files
  • Apply sandboxing or content-disposition restrictions around Vorbis decoding until fixed
  • Monitor EPSS and KEV status for changes given the library's ecosystem prevalence

The record

stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. A crafted file may trigger out of bounds read in `DECODE` macro when `var` is negative. As it can be seen in the definition of `DECODE_RAW` a negative `var` is a valid value. This issue may be used to leak internal memory allocation information.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 libstb 0 No fix
Debian:12 libstb 0 No fix
Debian:13 libstb 0 No fix
SUSE:Package Hub 15 SP6 SDL2_sound 0 2.0.4-bp156.2.3.1
Ubuntu:20.04:LTS libstb 0 No fix
Ubuntu:22.04:LTS libstb 0 No fix
Ubuntu:24.04:LTS libstb 0 No fix
Ubuntu:24.10 libstb 0 No fix
Ubuntu:25.04 libstb 0 No fix
Ubuntu:25.10 libstb 0 No fix
Ubuntu:Pro:20.04:LTS libstb 0 No fix
openSUSE:Leap 15.6 SDL2_sound 0 2.0.4-bp156.2.3.1

Related vulnerabilities