Abstract. Preventing memory access errors is an important security
consideration for programs implemented in low-level languages such as
C. Some types of memory access errors can protected against with the
help of a suitable runtime environment. For example, a modern operating
system protects against access to some invalid addresses, such as the
null pointer. Furthermore, a garbage collector can prevent some kinds of
memory access errors that are associated with manual memory management
Other kinds of memory access errors cannot reliably be protected
against by a runtime environment. This paper presents a memory access
safety analysis for detecting such errors. Our main contribution is an
instantiation of the analysis that can determine the memory access safety
of programs that manipulate recursively defined data-structures, such as
linked-lists, trees, etc
more here.......http://www.comp.nus.edu.sg/~joxan/papers/unbox2.pdf
consideration for programs implemented in low-level languages such as
C. Some types of memory access errors can protected against with the
help of a suitable runtime environment. For example, a modern operating
system protects against access to some invalid addresses, such as the
null pointer. Furthermore, a garbage collector can prevent some kinds of
memory access errors that are associated with manual memory management
Other kinds of memory access errors cannot reliably be protected
against by a runtime environment. This paper presents a memory access
safety analysis for detecting such errors. Our main contribution is an
instantiation of the analysis that can determine the memory access safety
of programs that manipulate recursively defined data-structures, such as
linked-lists, trees, etc
more here.......http://www.comp.nus.edu.sg/~joxan/papers/unbox2.pdf