The engineering culture behind AAA video games is rotten to the core with regards to security. Everyone thinks they're making Doom 3 and they're really making Windows 2000 Service Pack 1.
I was literally thinking about this the other day. There are a ton of games using kernel modules for anti-cheat and... just load and interpret data payloads. Certainly some of those payloads could manipulate the funny machines inside of a game executable if they're not careful about their parsing and validation.<p>Nice PoC!<p><i>Update</i>: yes, most game client processes don't run in the kernel. My b. I was just thinking that updates and content payloads might be an interesting vector for langsec.
I bought a Steam Deck with the sole purpose of having a cheap, airgapped PC to run games on. Game devs just don't have the incentives or discipline to be trusted with security.<p>Reminder that all three Dark Souls games allowed full RCE to any users connected to the internet: <a href="https://flashpoint.io/blog/rce-vulnerability-dark-souls/" rel="nofollow">https://flashpoint.io/blog/rce-vulnerability-dark-souls/</a>
Interestingly, the game doesn't run as admin for any good reason. The first thing I did was only let the launcher and game run as the user with RunAsInvoker. The anticheat alone is allowed RunAsAdmin. At the same time, I don't trust any anticheat. It's probably worse than useless, but it is what it is. I thought Microsoft would clean this up after the Crowdstrike incident for all kernel-level code, but I guess there's no incentive for them to only let game companies request runtime analysis / reports rather than run code. As for the anti-cheat industry, they should focus on patterns of user behavior to help game companies moderate the players as much as neccesary.
> the game runs with admin privileges for the sake of anti-cheat<p>"sake of anti-cheat" should be taken lightly here. There is a reason why all the other sane anti-cheats have at least two applications, the anti cheat service which often runs as admin, and the game, which does not. Running the game as admin is quite frankly inexcusable.<p>The service often does the network comms and communicates to a kernel-mode driver and/or to the application via IPC or similar. Having defined barriers of separation are good things.<p>In any case, this POC doesn't have huge implications necessarily for most people, but maybe in SEA or China where LAN cafes are more prevalent, it could be a larger concern.
> This also opens the door up to an entrypoint on PS5.<p>Does he mean that this is potentially how one could install custom firmware on their console?<p>Curious because I remember reading somewhat recently that console vendors have locked their consoles down well enough so as to avoid any vulnerabilities which could be exploited to install custom firmware. It would be amusing if that was invalidated by game dev security and I start hearing about ways to install some modded firmware, which include a step of "install one of these games".<p>IIRC, the web browser on 3DS systems was exploited to install custom firmware rather than a game so it was rather easily patched with a system update (and, indeed, it actually was patched). I wonder if we'll be seeing Sony/Nintendo/Microsoft start to insist on certain security standards as a result of <i>games</i> being exploited to install custom firmware on the devices they sell, presuming the answer to my first question is affirmative.
It downloads and executes a Python script to <i>update the store page?</i> Log4j/log4shell, anyone?<p>Just build a JSON API! It's not that hard! You don't need to RCE your game every time it launches just for microtransactions.
For a second I thought this was the Marvel game that got briefly banned along with TikTok, but that's marvel <i>Snap.</i><p>It would have been a tiny bit funny if it had been the same company that was just briefly banned that was allowing a remote exploit.
Looks like a typical mitm attack, which confuses me a bit, don't the developers use something like tls or dtls to protect their communications?
The most recent game I analysed was helldivers 2, which uses dtls. i would have thought that would be fairly common knowledge.
I like the other rant at the bottom. But why would game developers care about security when their customers don't care? The customers are fine running anticheat with admin privileges like in this RCE he just found.
> Game developers continue to amaze me at their lack of security awareness.<p>Because game developers are SUPPOSED to be aware of these things?<p>> It's very hard for security researchers to report bugs to most game dev companies. On top of that, most do not have bug bounty programs<p>Yet the OP blames the GAME developers…<p>They already have harder jobs than the majority of us, picking on them for not knowing skills outside of their area is just being mean and OP is targeting frustration at the wrong group.