Cloudanix VulnDB

CVE-2023-45680

Medium · 5.5

CVSS

5.5

EPSS

0.6%

Published

Oct 21, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in a common audio file handler can make programs crash when they try to open certain bad sound files.

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

What it actually does

A NULL pointer dereference occurs in vorbis_deinit after a memory allocation failure in start_decoder leaves comment_list as NULL without resetting comment_list_length.

Why it matters to the business

Applications using the stb_vorbis library may crash when processing specially crafted OGG Vorbis files, leading to denial of service and potential disruption of media handling workflows.

How an attack unfolds

An attacker crafts a malicious OGG Vorbis file that causes memory allocation to fail during decoder initialization. When the application later calls vorbis_deinit on the partially initialized structure, it attempts to dereference the NULL pointer, causing a crash.

How to fix it

Patch the library to reset f->comment_list_length to zero upon allocation failure in start_decoder before returning early from start_decoder.

How to confirm the fix worked

Test with a crafted file that triggers allocation failure in start_decoder and verify that vorbis_deinit completes without dereferencing NULL. Inspect source to confirm comment_list_length reset logic.

Typical attack path

  1. Deliver crafted OGG Vorbis file to target application
  2. Application parses the file using stb_vorbis
  3. Memory allocation fails in start_decoder
  4. vorbis_deinit dereferences NULL pointer causing crash

How to detect it

Monitor application logs and crash reports for segmentation faults or access violations occurring during vorbis_deinit calls after OGG Vorbis file parsing attempts.

What your security team should do

  • Identify all applications and dependencies using stb_vorbis
  • Apply code patch to reset comment_list_length on allocation failure
  • Sandbox or restrict processing of untrusted OGG Vorbis files until fixed

The record

stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. A crafted file may trigger memory allocation failure in `start_decoder`. In that case the function returns early, the `f->comment_list` is set to `NULL`, but `f->comment_list_length` is not reset. Later in `vorbis_deinit` it tries to dereference the `NULL` pointer. This issue may lead to denial of service.

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