Stack smashing is causing a stack in a computer application or operating system to overflow. This makes it possible to subvert the program or system or cause it to crash.
The stack, also called a pushdown stack or first-in last-out circuit, is a form of buffer that holds the intermediate results of an operation or data that is awaiting processing. If the stack receives more data than it can hold, the excess data is lost. Some of this data may be critical to system operation. A skilled hacker can corrupt or change critical data by deliberately introducing too much data into the stack.