Description
A flaw has been found in libretro RetroArch 1.18.0/1.19.0/1.20.0. This affects the function filestream_vscanf of the file libretro-common/streams/file_stream.c. This manipulation causes out-of-bounds read. The attack needs to be launched locally. Upgrading to version 1.21.0 mitigates this issue. It is recommended to upgrade the affected component.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| libretro | RetroArch | 1.18.0, 1.19.0, 1.20.0 | 1.21.0 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | retroarch | 1.20.0+dfsg-3 | — |
| Debian 13 | retroarch | No fix yet | — |
| Debian 12 | retroarch | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | retroarch | No fix yet | — |
| Ubuntu 26.04 LTS | retroarch | No fix yet | — |
| Ubuntu 25.10 | retroarch | No fix yet | — |
| Ubuntu 18.04 LTS | retroarch | No fix yet | — |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 24.04 LTS | retroarch | No fix yet | — |
References
- VDB-320516 | libretro RetroArch file_stream.c filestream_vscanf out-of-bounds vdb-entry technical-description
- VDB-320516 | CTI Indicators (IOB, IOC, IOA) signature permissions-required
- Submit #617657 | libretro RetroArch v1.20.0/v1.19.0/v1.18.0 Out-of-Bounds Read third-party-advisory
- https://github.com/libretro/RetroArch/pull/17555 issue-tracking
- https://github.com/libretro/RetroArch/pull/17555#issuecomment-2651403849 issue-tracking
- https://github.com/libretro/RetroArch/pull/17555/commits/6446f045ec7fc6a5cac3e8ec35a2f0a5889c88e8 issue-tracking patch
- https://github.com/libretro/RetroArch/releases/tag/v1.21.0 patch