A common method for an attacker to control program execution involves creating a “fake stack” using attacker-specified values. When the attacker tricks the victim computer into using a fake stack, the attacker can control the program execution. Some important things in the stack that can be fabricated include return addresses, and function arguments. Fake stacks are extremely useful in ROP exploits, because if we can get execution to occur at a different location with this stack state, we can possibly use these arguments for a function other than myFunction.”]
Source: http://neilscomputerblog.blogspot.com/2012/06/stack-pivoting.html

