Found 18K+ games on NVIDIA GeForce NOW

A 2021 GeForce NOW investigation into exposed catalogue metadata, more than 18,000 entries, internal apps, emulators, and unannounced game listings.

Last updated

Historical safety note

This is a historical account of a 2021 disclosure. Do not use old endpoints or tools to access services without authorization. The live proxy, filled query, and request-forwarding playground from the original article are not linked here.

I, along with many NVIDIA GeForce NOW users, am waiting for Nvidia to add new games. Some of the preferred games, like the Mafia series, were previously available on GFN but were removed. While waiting for these games to become available again, I tried to recover deleted NVIDIA GeForce NOW games. During this process, I accidentally discovered something unexpected.

Watch the original video demonstration on YouTube. The video opens only when you choose to follow the link, so YouTube does not load inside this page.

My story

About half a year ago, the NVIDIA GeForce NOW service operated differently. You could launch Steam directly and then select any game of your choice. Most of the games were locked due to GFN limitations, but I figured out how to run games not officially available on their website. I managed to play Gas Guzzlers Extreme at that time. So, I wanted to find a way to get a full list of games available for GFN. An old version of the GFN client app used to download the file whitelist.json, which contained a few thousand games. Unfortunately, it’s no longer possible to get a new update of this file.

Four months ago, I decided to continue my research and inspect the GFN client application. I aimed to test if the old version of GFN, which downloaded the file whitelist.json, could also download other stored information. It took more time than I expected, but it was worth it.

The research

After installing NVIDIA GeForce NOW, I launched it and waited for all its data to fully load. I inspected its log and cache files, and the file that caught my eye the most was console.log.

In the log file, I noticed the app configurations used to fetch data from the servers. Here is the most important line:

Console log showing the GeForce NOW GraphQL URL

The log exposed the main GraphQL endpoint used for web requests.

If you open that, you will see a GraphQL editor:

GraphQL editor
GraphQL editor

This is an interface for testing GraphQL queries. I began experimenting with different structures. It turned out to be easier than expected; once I pressed Ctrl+Space, an intelligent code completion popup appeared.

Intelligent code completion
Intelligent code completion

I began filling in the parameters to obtain valid responses.

GraphQL query results

As you can see, I received 1200 results. Thanks to the intelligent code completion, I added all of the missing fields.

GraphQL query with expanded fields

Then, I discovered a method to fetch more than 1000 results. I intuitively guessed the ‘After’ argument, which indicated the number of results to skip. This is a base64 encoded integer number:

GraphQL after argument

Using this method, I successfully fetched the list of all the games from GFN servers. I was surprised by the number of results — over 18,000 items. Excited to see these results in the official GFN client application, I began developing a special proxy server capable of achieving this.

18K+ games in the official GeForce NOW app

After completing my proxy server, I started it locally and enabled it. It worked!

18476 games
18476 games

Needless to say, it won’t allow you to start all the games if you haven’t purchased them. Additionally, many of them don’t work anyway. However, I was curious to find out which games the GFN developers play. Along the way, I discovered that there are not only games but also a lot of applications available.

807 apps
807 apps

It’s likely that GFN developers use those apps for their own purposes. I stumbled upon applications like 3D Max, Maya, Adobe Photoshop, Microsoft Office, and many others. There was also a ‘Client Platforms’ section.

Client Platforms
Client Platforms

It’s likely that they use these applications for testing third-party games. Additionally, I found games that were never announced on the GFN service, such as Mafia: Definitive Edition.

Mafia Definitive Edition listing

After that, I noticed games like God of War, which couldn’t theoretically be added to GeForce NOW at the moment.

God of War
God of War

This game is a PlayStation exclusive and is unlikely to come to other platforms anytime soon. So why is it listed here? It’s indicated that the game is available in the Steam store, but it’s not found on Steam. Could this be a leak about an upcoming game release? It’s possible, but the information I found next made me think otherwise.

Dolphin Emulator
Dolphin Emulator

Yes, it is Dolphin Emulator, an app intended to run copies of games from other platforms. Why is it here? Nintendo’s published piracy guidance states that downloading or distributing unauthorized copies and bypassing protection measures is illegal. Do they have other emulators to run games like God of War? I didn’t find any, but it’s possible that the emulators were bundled with those games. The information I discovered next was even more shocking.

Super Mario Bros. Wii with NVIDIA Confidential label

This is the Nintendo Wii exclusive, Super Mario Bros. Wii. And yes, it’s possible to play a copy of that game via Dolphin Emulator. Is it a coincidence? Who knows… But if you look closer, you can find a label “NVIDIA CONFIDENTIAL,” which suggests that Nvidia doesn’t want it known that they are playing these games. It’s certain that no one can add their own games to Nvidia’s servers. I’m still puzzled as to why they need this. Any guesses?

Afterword

At the time, I made the proxy server and its research instructions publicly available. NVIDIA later patched the behavior. The old proxy is not linked from this archive because it still connects to a live service.

Four months ago, before I created this proxy, I tried to share all the information with Nvidia, but they showed no interest whatsoever. I decided that if they don’t care, I can publish it now. https://www.nvidia.com/en-us/geforce/forums/gfn-tech-support/46/452082/confidential

The original article included a filled GraphQL query so readers could inspect the data. That live request and its archived copy are not linked from this edition.

NVIDIA CONFIDENTIAL poster (a backup copy on archive.org)

Updates

I also shared a GraphQL Playground backup at the time. It is not linked here because it forwards requests to GeForce servers.

Email from NVIDIA PSIRT

Track GeForce NOW supported games news and changes