Smash Stack is the name for an exploit that allows the use of Super Smash Bros. Brawl's Stage Builder to modify otherwise-protected system memory, allowing the usage of hacks without specialized hardware. In the hacking community of Brawl, the Smash Stack's primary use is to run mods or file replacement hacks for the game, such as Project M; the exploit, however, has considerable usage beyond Brawl hacking, and it can be used to permanently install mods to the Wii, such as The Homebrew Channel, or modify the firmware of the Wii itself, such as in the case of BootMii.
Discovered in 2009, the Smash Stack notably works with all versions of Brawl, as well as on all Wii firmwares.
The Smash Stack works by exploiting an oversight in Brawl's programming. The file used for the exploit is disguised as a custom stage file, which is then read by Brawl when the Stage Builder is opened. By default, a certain amount of memory is reserved to load the file; Brawl's coding, however, does not actually check to ensure the file is smaller than this amount of memory, and as a result, the exploit file, designed to be larger than this block of memory, causes a stack smash when it is actually read. The console is then forced to restart as a result of this stack smash, but as it does so, it will read boot files from the SD card instead of the console itself. These boot files, in turn, then run modified code that can be used to run a variety of different applications after the reboot. Once the loaded hack is quit or the console is turned off, all traces of the hack's use vanish from the console, barring any modifications to the console performed by the hack itself.
Due to the way the exploit works, the exploit file must be the only custom stage on both the SD card and on the Wii itself, including the sample stages and any stages from the Smash Service, or the game will likely freeze as it tries to load the stages. Furthermore, as the file is disguised as a custom stage file, it will still be read by the game while selecting a regular stage for versus battles; as the exploit is not intended to be run via this route, the game will instead freeze when it attempts to load the data. As such, hacks that run on top of Brawl via the Smash Stack require extra coding to prevent the game from reading custom stages.
Unlike most other Wii hacks involving stack smashes, which tend to involve editing save file data to accomplish a similar effect, the Smash Stack is entirely self-contained within Brawl as it is running. As a result, it is not possible for Nintendo to inform Wiis what such a file looks like and delete it if detected, due to the process occurring outside the console's control. This renders the hack particularly resilient compared to the previous Twilight Hack (involving The Legend of Zelda: Twilight Princess), a former major avenue of hacking Wiis via in-game exploits before it was eventually defeated via a system update. The Smash Stack can even be run on a Wii U running in Wii mode, though this does not allow hacking of the Wii U itself.
As a result of its unpatchability, simplicity, and presence in a popular game, the Smash Stack is one of the most common ways of hacking or modding a Wii, and the method is supported by all major Brawl mods for players who do not wish to make any permanent changes to their console. It can even be argued that the exploit is one of the biggest reasons that the hacking and modding community, for both Brawl and other Wii games such as Mario Kart Wii, reached a level of popularity and sophistication that was previously unheard of for consoles.