Home

Awesome

ENDGAME - A Dashboard Exploit for the Original Xbox

<p align="center"> <img src="https://github.com/XboxDev/endgame-exploit/assets/9522648/84c9890a-0d57-4d32-bcd6-d43ff8738ebf"> </p>

Overview

ENDGAME is a universal dashboard exploit for the original Microsoft Xbox. This exploit has been carefully engineered to be compatible across all retail kernel and dashboard versions released for the original Xbox. It does not require a game, or even a working DVD drive -- only a memory card.

Special credit belongs to @shutterbug2000 for the initial discovery of this vector within the dash and the first to demonstrate code execution against it. With further research, ENDGAME was developed by @gaasedelen leveraging an adjacent vulnerability that offered greater control and facilitated a more ubiquitous exploitation strategy.

Disclaimer

This project does NOT use any copyrighted code, or help circumvent security mechanisms of an Xbox console. Upon success, ENDGAME will launch a habibi-signed XBE from the root of the memory card. It does not patch kernel code or allow you to launch retail-signed executables.

By using this software, you accept the risk of experiencing total loss or destruction of data on the console in question.

Building

The exploit files can be generated from scratch using Python 3 + NASM on Windows.

Example usage is provided below:

python main.py

Successful output should look something like the following:

[*] Generating ENDGAME v1.0 exploit files -- by Markus Gaasedelen & shutterbug2000
[*] Assembling shellcode... done
[*] Un-swizzling payload... done
[*] Compressing payload... done
[*] Saving helper files... done
[*] Saving trigger files... done
[+] Success, exploit files available in ENDGAME/ directory

A pre-built zip of the exploit and sample payload XBE is available on the releases page of this repository.

Usage

Copy the contents of the generated ENDGAME/ directory to a Xbox memory card such that the root directory of the memory card has the following structure, where payload.xbe can be any habibi-signed XBE of your choosing:

/helper/
/trigger/
/payload.xbe

To trigger the exploit, plug the memory card into a controller and navigate to it while in the dashboard.

<p align="center"> <img src="https://github.com/XboxDev/endgame-exploit/assets/9522648/d4701947-8174-4186-ae27-affd8a7778b8"> </p>

After a few seconds, the system should begin cycling the front LED to green/orange/red to indicate success. This is followed by it launching the payload.xbe placed on the memory card.

FAQ

Q: Is this a softmod?

Q: What is new about this exploit?

Q: I don't have a memory card, can I use something else?

Q: Why am I getting Error 21 after placing my own XBE on the memory card?

Q: Why does my habibi-signed XBE result in a black screen with ENDGAME but not on a modded xbox?

Q: I triggered ENDGAME but my system quickly rebooted to the dash rather than my XBE...

Q: My XBE requires multiple files and external assets to run, will it work with ENDGAME?

Q: How does this exploit work?

Authors