Description
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.
References7
- github.com/mmitch/gbsplay
- github.com/mmitch/gbsplay/blob/0.0.103/mapper.c#L71-L103
- github.com/mmitch/gbsplay/commit/a281d80bc56ed63347daf740a2f7aa…
- github.com/mmitch/gbsplay/issues/201
- hackmd.io/@haindpwn/gbsplay-rom-bank-index-oob-read
- www.vulncheck.com/advisories/gbsplay-through-0.0.103-out-of-bou…
- hackmd.io/@haindpwn/cve-2026-116725-116726-116727-gbsplay-rom-b…
Metrics
- CVSS 3.1
-
5.5
MEDIUM
Score source: CNA
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - CVSS 4.0
-
6.8
MEDIUM
Score source: CNA
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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - EPSS — exploit probability
- 0% percentile: 3 · as of 8 November 2026
- CWE
- CWE-125
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.