gbsplay through 0.0.103 contains an out-of-bounds read vulnerability in mapper_map() in mapper.c that fails to reject ROM bank indexes beyond the ROM size, causing an underflowed bank length. Attackers can supply crafted .gbr, .gbs or .gb files with malicious bank indexes to make bank_get() read far past the heap ROM buffer and crash the player.
https://hackmd.io/@haindpwn/gbsplay-rom-bank-index-oob-read
https://github.com/mmitch/gbsplay/issues/201
https://github.com/mmitch/gbsplay/commit/a281d80bc56ed63347daf740a2f7aa4f8516165a
https://github.com/mmitch/gbsplay/blob/0.0.103/mapper.c#L71-L103
Published: 2026-10-26
Updated: 2026-10-27
Base Score: 4.9
Vector: CVSS2#AV:L/AC:L/Au:N/C:N/I:N/A:C
Severity: Medium
Base Score: 5.5
Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Severity: Medium
Base Score: 6.8
Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Severity: Medium
EPSS: 0.00136