Buffer overflow in Nothings Stb

CVE-2023-45675

stb_vorbis is a single file MIT licensed library for processing ogg vorbis files. A crafted file may trigger out of bounds write in `f->vendor[len] = (char)'\0';`. The root cause is that if the len read in `start_decoder` is `-1` and `len + 1` becomes 0 when passed to `setup_malloc`. The `setup_malloc` behaves differently when `f->alloc.alloc_buffer` is pre-allocated. Instead of returning `NULL` as in `malloc` case it shifts the pre-allocated buffer by zero and returns the currently available memory block. This issue may lead to code execution.

Vulnerability class: Buffer Overflow

EPSS: 0.008 (51.5th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 6.5 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L.

Affected products

Weakness classification (CWE)

Public proof-of-concept exploits

References

Frequently asked questions

What is CVE-2023-45675?
CVE-2023-45675 is a medium-severity vulnerability in Nothings Stb, classified under Out-of-bounds Write. CVSS score: 6.5/10. Published 2023-10-21.
How severe is CVE-2023-45675?
Medium severity. CVSS v3 base score is 6.5 out of 10.
Is CVE-2023-45675 known to be exploited?
1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.