Is it possible to restore the stack frame so that the EIP returns to the place that is was at(before the overflow) after a payload has been executed?
If a stack frame is overflowed and the payload executed, how can the vulnerable application be restored so it continues to function as it was before?
If the EIP is overwritten with the address to the start of the payload or NOP sled and lets say it spawns a shell, does that spawned shell keep the stack frame paused? Or what exactly happens after the payload is run and the EIP is read again? Wont it cause an infinite loop inside the stack frame?