Buffer
Overflow Intro. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G.
Hogle.
http://sfsecurity.pr.erau.edu
Stacks are essential
The reason C
compilers use stacks is that subroutines can call subroutines that call other subroutines.
•Subroutines can call each other, and subroutines
can even call
themselves, and you can always keep track of where you were in each subroutine
by pushing
and popping on and off a stack.