In information security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer's boundary and overwrites adjacent memory locations.

-- Wikipedia


  • Data Execution Prevention (DEP)

  • Address Space Layout Randomization (ASLR)

Important registers

  • ESP (Extended Stack Pointer): top of stack

  • EIP (Extended Instruction Pointer): current instruction -> Override EIP with user input (e.g. strcpy)

Last updated