Academia.eduAcademia.edu

Prevention and Detection of Stack Buffer Overflow Attacks

2005

Abstract

The recent announcement by Michael Lynn at Black Hat 2005 of a software flaw in Cisco routers has grabbed the attention of many technology news sources. The flaw is an instance of a buffer overflow, a type of security vulnerability that has been discussed since the 1960s, yet remains one of the most frequently reported type of remote attack against computer

Key takeaways

  • Buffer overflow attacks can take place in processes that use a stack during program execution.
  • A buffer overflow usually contains both executable code as well as the address of where that code is stored on the stack.
  • If an attacker modifies the pointer value as part of an overflow attack, then she can redirect program execution without modifying a RA.
  • It would be difficult for an attacker to modify both the return address in the stack segment and the copy in the data segment through a single unbounded string copy.
  • Because many buffer overflow attacks take place by loading executable code onto the stack and redirecting execution there, one of the simpler approaches is to modify the stack segment to be non-executable.