You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With the help of the features of the engine and how the game saves work, it is possible to introduce injections of malicious code.
How:
The engine has a renpy.run method that can execute any script from a string. Further in the game, you can rewrite any method in the game that is declared in the label, using the Function class, which is designed for actions in screens.
Next, the inject() function is executed in the game console, then saving is done. The attacker can transfer this saving to the victim in order to harm the user. After that, this method will be called in the game, with one hundred percent probability it will be called if it is used in the after_load label. Players often ask someone on the Internet for a save file, especially if an update has been released in some game and the player has lost his saves. After that, an attacker can take advantage of this situation and send him a malicious save file. So far I don't have any good ideas on how this could be solved without complicating the life of game developers.
The text was updated successfully, but these errors were encountered:
That's why we have save security : the saves are flagged with the ID of the computer that generated it, so when you try to load a save that has a different flag than your computer, or that has no flag, you are asked to confirm if you are sure of the origin of the save file.
I also want to say why this is important. In addition to the victims of the players, a game developer can become a victim. The game developer may ask the player to send a save file to reproduce the bug that the player allegedly found. And the developer can fall for it and transfer his data to an attacker
Game developers see the same messages players do. The changes in 8.1 are intended to make everyone aware that taking saves from people you don't trust is risky.
With the help of the features of the engine and how the game saves work, it is possible to introduce injections of malicious code.
How:
The engine has a renpy.run method that can execute any script from a string. Further in the game, you can rewrite any method in the game that is declared in the label, using the Function class, which is designed for actions in screens.
And what do we have:
Next, the
inject()
function is executed in the game console, then saving is done. The attacker can transfer this saving to the victim in order to harm the user. After that, this method will be called in the game, with one hundred percent probability it will be called if it is used in theafter_load
label. Players often ask someone on the Internet for a save file, especially if an update has been released in some game and the player has lost his saves. After that, an attacker can take advantage of this situation and send him a malicious save file. So far I don't have any good ideas on how this could be solved without complicating the life of game developers.The text was updated successfully, but these errors were encountered: