Buffer
Overflow Intro. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G.
Hogle.
http://sfsecurity.pr.erau.edu
Glossary
Push – Pushing is the
operation of putting something new on the top of a stack. Computers use pushing to store the return
pointer when one subroutine calls another subroutine.
Pop – Popping is the
operation of taking something off the top of a stack. Computers use pop operations to retrieve the
stored return pointer and use it as a reference to get back to the original subroutine that
made the call to the subroutine that just finished.
Return pointer – A return
pointer is a special kind of pointer that computers use on a stack to remember what instruction
they were about to execute in one subroutine when they had to go start executing another
subroutine.
C – C is the most commonly
used high-level computer programming language, and the one most responsible for the buffer
overflow problem. C source code is
compiled into a low-level language that a computer
can understand, such as a bunch of pieces of paper with numbers written on them in
mailboxes.