| 제목 | vgmstream r2117 Buffer Overflow |
|---|
| 설명 | vgmstream contains a CWE-787 vulnerability in vadpcm_read_coefs_be() in src/coding/vadpcm_decoder.c, reachable from the EA SCHl parser in src/meta/ea_schl.c. The code reads an attacker-controlled 32-bit VADPCM coefficient entry count with read_u32be() into a signed int, clamps only values greater than eight, and then copies entries * order * 8 coefficients into the fixed per-channel coefficient array. A high-bit value can become negative, bypass the upper-bound logic, and drive writes beyond the fixed vadpcm_coefs array. A crafted EA SCHl stream can therefore cause a heap buffer overflow during format initialization, leading to process termination and potentially enabling code execution in applications embedding vgmstream.
I re-verified this issue against the latest upstream HEAD commit 79bc65b52cddc61b859679c1c47dc57092872ae1 on 2026-08-21 and confirmed that the vulnerable logic is still present there.
Affected component / root cause: vadpcm:negative-entry-count-bypasses-upper-bound-and-overflows-coefficient-array
CWE: CWE-787
CVSS v3.1 draft: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
|---|
| 원천 | ⚠️ https://github.com/vgmstream/vgmstream/issues/1994 |
|---|
| 사용자 | ni-liao (UID 98297) |
|---|
| 제출 | 2026. 08. 21. AM 09:27 (28 날 ago) |
|---|
| 모더레이션 | 2026. 09. 17. AM 10:17 (27 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 406346 [vgmstream 까지 r2117 EA SCHl parser vadpcm_decoder.c vadpcm_read_coefs_be entry/entries 메모리 손상] |
|---|
| 포인트들 | 20 |
|---|