CVE-2023-45682
High · 7.1CVSS
7.1
EPSS
0.6%
Published
Oct 21, 2023
CISA due date
—
Cloudanix analysis
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
- Obtain or generate a Vorbis file that triggers negative var in DECODE_RAW
- Deliver the file to the target via web download, email attachment, or media library import
- Victim application invokes stb_vorbis decode routine on the file
- 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
- CVE-2023-47212 A heap-based buffer overflow vulnerability exists in the comment functionality of stb… Also affects libstb
- CVE-2023-43281 Double Free vulnerability in Nothings Stb Image.h v.2.28 allows a remote attacker to… Also affects libstb
- CVE-2023-45664 stb_image is a single file MIT licensed library for processing images. Also affects libstb
- CVE-2023-45676 stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. Also affects libstb
- CVE-2023-45679 stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. Also affects libstb
- CVE-2023-45675 stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. Also affects libstb
- CVE-2023-45666 stb_image is a single file MIT licensed library for processing images. Also affects libstb
- CVE-2023-45667 stb_image is a single file MIT licensed library for processing images. Also affects libstb