Skip to content

Game crash vulnerability caused by missing input validation

Moderate
Beyley published GHSA-qjj3-q32v-fgqm Dec 23, 2023

Package

Refresh

Affected versions

<= 2.5.1

Patched versions

>= 2.5.2

Description

Summary

A malicious user can crash a victim’s game in any instance of Refresh.

Details

LittleBigPlanet lets you use an in-game GUID as a level badge. If you use an in-game GUID of a model (ex: 1087, which is Sackboy) as either your level badge or (if it’d let you, not sure if this is implemented) your user picture, the RSX (and consequently the game) will crash as it cannot load the model into texture memory. This crash occurs on both PS3 and RPCS3 and all games until LBP3 PS4. What this means is that a user’s game will crash just by visiting a profile or by visiting the “Newest Levels” tab.

PoC

Create a level utilizing a model GUID as the level badge, such as the example provided above. Navigate to the level in-game to cause the crash.

Impact

This vulnerability is caused by improper or missing input validation, and all in-game users are affected.

Mitigation

This vulnerability was mitigated by the creation of a database of the “blurayguids.map” file (preferably LBP3 PS3 latest) of GUIDs that are valid textures (.tex, .png), and implementation of a check in the files handler or other relevant system to verify a GUID’s presence in the database.


This vulnerability was brought to our attention via a Responsible Disclosure email delivered to a maintainer of the ProjectLighthouse repository, who has forwarded it to the Refresh team on the reporter's behalf.

Severity

Moderate
4.3
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
Low
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L

CVE ID

No known CVE

Weaknesses

Credits